為了能妥善處理安全性問題,則必須隨時使用新開發並隨時關心最新的安全性問題。保護系統以防發生各種問題的最好方法,就是儘快取得和安裝安全性公告所建議的更新套件。SUSE 安全性公告是以郵件清單的方式公佈,您可以至下列 http://en.opensuse.org/Communicate/Mailinglists 連結來訂閱。清單opensuse-security-announce@opensuse.org是第一手關於更新套件的資訊來源,並且包含 SUSE 主動貢獻者的安全性團隊成員。
郵件清單 opensuse-security@opensuse.org 是討論任何所關心的安全性問題的好地方。可在同一網頁訂閱。
bugtraq@securityfocus.com是全球其中一個最知名的安全性郵件清單。建議閱讀這個清單,它每天會收到 15 到 20 個張貼。在 http://www.securityfocus.com 可以找到更多的詳細資訊。
下列是關於處理基本安全性問題的有用規則清單:
根據每個工作儘可能都使用限制最多的權限集合原則,避免以 root
的身份執行一般工作。這將可減少得到布穀鳥式借巢孵蛋或病毒的風險,並防止自己犯錯。
如果有可能,請永遠嘗試使用加密的連接在遠端機器上工作。使用 ssh (安全外圍程式) 以取代 telnet、ftp、rsh 以及 rlogin 應該為標準的慣例。
避免使用僅依據 IP 位址的驗證方法。
請試著將最重要的網路相關套件保持在最新的狀態,並訂閱對應的郵件清單以接收這類程式新版的公告 (bind、postfix、ssh 等等)。同樣的原則也適用於與本地安全性相關的軟體。
變更 /etc/permissions
檔案以最佳化對系統安全性很重要的檔案權限。如果您從程式移除 Setuid 位元,它有可能再也無法依照所需的方式執行工作。另一方面,在大部份的情況下,請想想程式也將不再有潛在性的安全性風險。您可以採取全球可以寫入的目錄與檔案的相似方式。
停用所有非必要的網路服務,讓伺服器正常運作。這可讓您的系統較為安全。使用 netstat
程式可以找到插槽狀態為 LISTEN 的開啟連接埠。至於其選項,建議使用 netstat -ap
或 netstat -anp
。-p
選項允許您查看哪些程序正在佔據哪個名稱下的埠。
將 netstat
產生的結果與從主機外對連接埠進行全面掃描的結果相比較。進行此工作的最佳程式為 nmap
,它不只檢查機器的連接埠,還會針對哪些服務正在這些埠後等待做出摘要。然而,埠掃描有可能被視為一種侵略行為,因此若無管理員的明確允許,請勿在主機上執行此動作。最後,請記得不只是要掃描 TCP 埠,另外也必須掃描 UDP 埠 (-sS
與 -sU
選項)。
如果要以可靠方式來監督系統檔案的完整性,請使用 SUSE Linux Enterprise 上提供的 AIDE
(進階入侵偵測環境) 程式。加密 AIDE 所建立的資料庫以防有人篡改它。另外,在您的機器之外複製一份資料庫備份,將它儲存在未連接網路的外部資料媒體上。
在安裝協力廠商軟體時請謹慎小心。曾經有駭客將木馬程式建入安全軟體套件的 tar 歸檔中,所幸很快就探查到了。如果您要安裝二進位的套件,請確定您對所下載的網站沒有疑慮。
SUSE 的 RPM 套件是以 GPG 簽署。SUSE 用以簽署的金鑰為:
ID:9C800ACA 2000-10-19 SUSE Package Signing Key <build@suse.de> Key fingerprint = 79C1 79B2 E1C8 20C1 890F 9994 A84E DAE8 9C80 0ACA
rpm --checksig package.rpm
指令顯示解除安裝的套件,其檢查總數與簽章是否正確。尋找該版本第一張 CD 上的金鑰以及全球大部份金鑰伺服器上的金鑰。
定期檢查使用者與系統檔案的備份。請考慮如果您未測試備份是否可以使用,它有可能沒有用處。
檢查記錄檔。請儘可能隨時撰寫小型的程序檔以搜尋可疑的項目。不可否認的,這不完全是一個鎖碎的任務。最後只有您才知道哪些項目是不尋常的,哪些才是正常的。
使用 tcp_wrapper
以限制存取在機器上所執行的個別服務,因此您對於哪個 IP 位址可以連接至服務具有明確的控制權。如需關於 tcp_wrapper
的進一步資訊,請參閱 tcpd 與 hosts_access (man 8 tcpd
、man hosts_access
) 的手冊頁面。
使用 SuSEfirewall 以增強 tcpd
(tcp_wrapper
) 所提供的安全性。
請盡量設計過多的安全措施:顯示兩次訊息比完全不顯示訊息來得好多了。