構建安全Linux系統十二守則(轉)

ba發表於2007-08-11
構建安全Linux系統十二守則(轉)[@more@]計算機系統的核心是作業系統,因此,作業系統的安全與否直接決定著資訊是否安全。是開放原始碼的作業系統安全還是不開放原始碼的作業系統安全?這一點在業界有不同的聲音。但有一點可以肯定,開放原始碼有利於迅速地對缺乏安全性的程式碼進行及時修改,以達到安全要求。

   由於Linux的開放性,使得我們可以透過修改系統原始碼,結合現有的系統安全技術以及加入我們自有的加密演算法,構建一個安全的Linux作業系統。這裡需要解決以下12個方面的問題。

   1. 身份識別和認證
   身份識別和認證是資訊系統的最基本要求。一般的Linux系統採用使用者名稱和口令對的形式來進行身份識別和認證。這包含了一些不安全因素,比如系統的密碼檔案被竊,入侵者採用窮舉的方式侵入等。我們可以透過加入其他認證形式來提高系統身份識別和認證的安全性,例如使用公鑰演算法,將使用者的私鑰存於使用者隨身攜帶的硬體介質上(如IC卡、USB鑰匙),系統只保留使用者認證資訊中的公鑰資訊。這樣,即使公鑰資訊被竊,入侵者也不可能算出私鑰,攻入系統。

   2. 基本的入口控制
   透過提供明顯的警告資訊,使用者登入時相關資訊的顯示,以及對登入失敗次數的限制,也能有效的防範入侵者。

   3. 安全的審計
   改善Linux原有的審計功能,對使用者、程式及其他客體行為進行完善的跟蹤審計。首先,審計要保證本身的審計資訊不會被篡改或者刪除。其次,系統要能夠對所有的敏感操作進行記錄。

   4. 訪問控制
   在Linux系統中加入必須的訪問控制的實現,比如強制訪問控制(MAC)以及自主訪問控制(DAC)。自主訪問控制允許系統的使用者對於屬於自己的客體,按照自己的意願,允許或者禁止其他使用者訪問。目前Linux提供類似傳統UNIX系統的“屬主使用者/同組使用者/其他組”許可權保護機制。為了對使用者資訊提供更好的保護,應能夠為使用者提供使用者級的控制力度。使自主存取控制更接近真實的情況。強制存取控制是由系統管理員進行的安全訪問許可權設定,提供比自主存取控制更嚴格的訪問約束。

   5. 加密檔案系統
   透過在系統中加入加密檔案系統機制,保證系統的資料安全,即使系統的儲存介質被竊,在入侵者沒有取得金鑰的情況下,資料依然是不可讀的。Linux的開放原始碼為我們瞭解認識Linux的檔案系統構架成為可能,也方便了我們對檔案系統進行修改,這就使得加密檔案系統的實施成為可能。

   6. 完整性保護
   透過對檔案和檔案系統的跟蹤及維護相應的資料庫,我們可以對系統中的變化一清二楚,在系統的某些資料發生非法的變化時,我們能夠迅速地發現,從而避免入侵者後門程式的存在。這種保護與備份機制相結合,使系統能夠迅速地進行自我恢復。

   7. 入侵攻擊檢測與防範
   採用對敏感資源、IP或者埠進行監測等辦法,可以及時地發現入侵行為,並採取相應的措施。比如大量半開的TCP連線,源地址為非法IP的外部資料包,對138和139埠的操作等等,都有可能是入侵的特徵。我們透過編寫相應的程式碼,和系統有機地結合在一起,就能有效地防範這類入侵。

   8. 提供完善的安全API
   在系統中為使用者提供一套完善的安全API,有利於使用者結合系統實現自己的安全應用。

   9. 修改系統中的服務,加入安全的機制
   升級系統服務版本,修改服務中的安全漏洞。

   10.提供安全的服務和應用
   比如支援SSL的Web服務、SSH、IPSEC、支援PGP的郵件程式等。

   11.提供完善的系統安全掃描與檢測工具
   在系統中提供完善的安全掃描與檢測工具,管理員可以經常對系統進行安全檢測,及時發現安全隱患。

   12.採用安全的加密演算法
   採用更長金鑰(128位以上)的公認安全加密演算法來實現系統中的加密應用。

   開放原始碼的Linux為我們實現安全的作業系統平臺提供了新的機遇。透過對基於Linux的安全作業系統的研究,將有助於我們實現自有版權的安全作業系統,構建國人自己的資訊保安平臺。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10617731/viewspace-947207/,如需轉載,請註明出處,否則將追究法律責任。

相關文章