眾所周知,就安全性而言,Linux相對於Windows具有更多的優勢。但是,不管選擇哪一種Linux發行版本,在安裝完成以後都應該進行一些必要的配置,來增強它的安全性。下面就通過幾個步驟來安裝一個安全的Linux操作系統。
安裝和配置一個防火牆
一個配置適當的防火牆不僅是系統有效應對外部攻擊的第一道防線,也是最重要的一道防線。在新系統第一次連接上Internet之前,防火牆就應該被安裝並且配置好。 把防火牆配置成拒絕接收所有數據包,然後再打開允許接收的數據包,將有利於系統的安全。防火牆的具體設置方法請參見iptables使用方法。
升級所有已經安裝的軟件包 一個標准的Linux發行版通常會帶有超過1000個以上的軟件包。時刻保持所安裝的所有軟件處於最新狀態是非常重要的。很顯然,這是一個耗費時間的工作,幸運的是現在已經有很多工具可以自動完成這一工作。其中兩個最常用的工具是APT(Advanced Package Tool)和Yum(Yellowdog Updater,Modified)。 有些發行版可能會提供自己的升級工具,可以充分利用它們來實現軟件的更新。比如,缺省情況下Red Hat和Fedora使用的是up2date;Debian使用的則是APT。 如果想安裝一個自己的軟件升級工具,那麼筆者推薦使用APT。在任何一個搜索引擎中輸入所使用發行版的名字和APT,都可以快速找到APT的RPM安裝包和所需要的軟件倉庫位置。 一旦安裝好APT,並且設置好軟件倉庫以後(一般在/etc/apt/sources.list或與之類似的文件中設置),就可以使用以下兩個命令來進行軟件的更新。以root用戶運行:
#apt-get update #apt-get upgrade 第一個命令將從指定的軟件倉庫下載最新的軟件包信息,第二個命令將使用這些信息下載和安裝系統中已經存在的軟件的更新版本(如果有可用更新的話)。管理員應該定期執行命令以確保系統總是處於最新狀態。 此外,從Internet下載單個文件或軟件包的時候,總是使用MD5SUM來進行檢查。MD5SUM可以對從網上下載的軟件進行檢查,以確保下載的不是被植入木馬的版本。 最後,使用者還應該訂閱發行版的安全郵件列表。這些郵件列表可以在出現更新軟件包,或者對某些軟件漏洞進行修正時及時通知使用者。
禁止所有不需要的服務 一個新安裝的Linux系統在默認配置情況下,啟動時會同時啟動很多服務和後台程序。比如有的發行版會啟動HTTP(Web服務器)、POP3/IMAP(電子郵件)監控程序、數據庫服務器等。而對於大多數用戶來說,這些服務實際上是不需要的,並且這些服務會成為攻擊者潛在的攻擊目標。所以,為了安全起見,應該查看這些服務列表,然後禁止所有不需要的服務。 在Red Hat系統中,用於配置服務器的命令行工具名為chkconfig。要列出所有已經安裝的服務,可以執行以下命令:
#chkconfig -list 這時將會顯示類似以下形式的內容:
iptables 0:off 1:off 2:on 3:on 4:on 5:on 6:off sshd 0:off 1:off 2:on 3:on 4:on 5:on 6:off ... ... ... ... ... ... ... ... squid 0:off 1:off 2:off 3:off 4:off 5:off 6:off xinetd based services: rsync: off ... ... sgi_fam: on 在上面的列表中,0至6的數字表示系統的運行級別。 例如,為了讓squid服務可以在2、3、4、5運行級別下運行,應該執行以下命令:
#chkconfig --level 2345 squid on 如果要在3和5運行級別上關閉sshd服務,則應該執行以下命令:
#chkconfig --level 35 sshd off 使用chkconfig命令設置的服務會在下次啟動時生效,而不會對當前運行的服務有任何影響。如果要對當前的服務進行設置,在Red Hat中可以使用以下命令:
# service service_name start # service service_name stop # service service_name restart # service service_name status 上述命令中的service_name和chkconfig --list命令中所列的名字一致。 在禁止了所有不需要的服務後,可以運行netstat --l來查看是否已經達到效果。對於仍然需要運行的服務而言,一定要確保有正確配置的防火牆。 更多內容請看FreeBSD系統安全管理 Linux安全 Linux安全專題,或