天津 李洋
淺析LINUX安全管理技巧
天津 李洋
Linux是一款免費的操作系統(tǒng),用戶可以通過網(wǎng)絡或其他途徑免費獲得,并可以任意修改其源代碼。作為一種開放源代碼操作系統(tǒng),相對于一些系統(tǒng)本身的安全漏洞,更多的安全問題是由不當?shù)呐渲迷斐傻?,可以通過適當?shù)呐渲脕矸乐?。本文列舉了多種方法對系統(tǒng)各個方面進行配置,以增強系統(tǒng)的安全性。
服務器;網(wǎng)絡訪問;安全機制
Linux是一種“自由(Free)軟件”:所謂自由,是指用戶可以自由地獲取程序及其源代碼,并能自由地使用他們,包括修改或拷貝等。它是網(wǎng)絡時代的產(chǎn)物,眾多的技術人員通過Internet共同完成它的研究和開發(fā),無數(shù)用戶參與了測試和除錯,并可方便地加上用戶自己編制的擴充功能。Linux是一種類Unix的操作系統(tǒng)。因為它不屬于某一家廠商,沒有廠商宣稱對它提供安全保證,因此用戶只有自己解決安全問題。
相對于這些系統(tǒng)本身的安全漏洞,更多的安全問題是由不當?shù)呐渲迷斐傻?,可以通過適當?shù)呐渲脕矸乐?。服務器上運行的服務越多,不當?shù)呐渲贸霈F(xiàn)的機會也就越多,出現(xiàn)安全問題的可能性就越大。
(一)系統(tǒng)安全記錄文件
操作系統(tǒng)內(nèi)部的記錄文件是檢測是否有網(wǎng)絡入侵的重要線索。如果你的系統(tǒng)是直接連到Internet,你發(fā)現(xiàn)有很多人對你的系統(tǒng)做Telnet/FTP登錄嘗試,可以運行“#more/var/log/secure grep refused”來檢查系統(tǒng)所受到的攻擊,以便采取相應的對策,如使用SSH來替換Telnet/rlogin等。
(二)限制網(wǎng)絡訪問
1.NFS訪問
如果你使用NFS網(wǎng)絡文件系統(tǒng)服務,應該確保你的/etc/exports具有最嚴格的訪問權限設置,也就是意味著不要使用任何通配符、不允許root寫權限并且只能安裝為只讀文件系統(tǒng)。
2.Inetd設置
首先要確認/etc/inetd.conf的所有者是root,且文件權限設置為600。設置完成后,可以使用“stat”命令進行檢查。
#chmod 600/etc/inetd.conf
然后,編輯/etc/inetd.conf禁止以下服務。
ftp telnet shell login exec talk ntalk imap pop-2 pop-3 finger auth
配置完成后,可以用tcpdchk檢查。
3.登錄終端設置
/etc/securetty文件指定了允許root登錄的tty設備,由/bin/login程序讀取,其格式是一個被允許的名字列表,你可以編輯/etc/securetty,讓root僅可在tty1終端登錄。
在Linux系統(tǒng)中,分別為不同的應用安裝單獨的主分區(qū),將關鍵的分區(qū)設置為只讀,將大大提高文件系統(tǒng)的安全。這主要涉及到Linux自身的ext2文件系統(tǒng)的只添加(只添加)和不可變這兩大屬性。
·文件分區(qū)Linux的文件系統(tǒng)可以分成幾個主要的分區(qū),每個分區(qū)分別進行不同的配置和安裝,一般情況下至少要建立 /、/usr/local、/var和/home等分區(qū)。/usr可以安裝成只讀并且可以被認為是不可修改的。如果/usr中有任何文件發(fā)生了改變,那么系統(tǒng)將立即發(fā)出安全報警。當然這不包括用戶自己改變/usr中的內(nèi)容。/lib、/boot和/sbin的安裝和設置也一樣。在安裝時應該盡量將它們設置為只讀,并且對它們的文件、目錄和屬性進行的任何修改都會導致系統(tǒng)報警。
·擴展ext2使用ext2文件系統(tǒng)上的只添加和不可變這兩種文件屬性可以進一步提高安全級別。不可變和只添加屬性只是兩種擴展ext2文件系統(tǒng)的屬性標志的方法。可以通過chattr命令來修改文件的這些屬性,如果要查看其屬性值的話可以使用lsattr命令。這兩種文件屬性在檢測黑客企圖在現(xiàn)有的文件中安裝入侵后門時是很有用的。為了安全起見,一旦檢測到這樣的活動就應該立即將其阻止并發(fā)出報警信息。
·保護log文件當與log文件和log備份一起使用時不可變和只添加這兩種文件屬性特別有用。系統(tǒng)管理員應該將活動的log文件屬性設置為只添加。當log被更新時,新產(chǎn)生的log備份文件屬性應該設置成不可變的,而新的活動的log文件屬性又變成了只添加。
在完成Linux系統(tǒng)的安裝以后應該對整個系統(tǒng)進行備份,以后可以根據(jù)這個備份來驗證系統(tǒng)的完整性,這樣就可以發(fā)現(xiàn)系統(tǒng)文件是否被非法篡改過。如果發(fā)生系統(tǒng)文件已經(jīng)被破壞的情況,也可以使用系統(tǒng)備份來恢復到正常的狀態(tài)。
可以通過改進Linux操作系統(tǒng)的內(nèi)部功能來防止緩沖區(qū)溢出攻擊這種破壞力極強卻又最難預防的攻擊方式,雖然這樣的改進需要系統(tǒng)管理員具有相當豐富的經(jīng)驗和技巧,但對于許多對安全級別要求高的Linux系統(tǒng)來講還是很有必要的。
·Solaris Designer的安全Linux補丁。Solaris Designer用于2.0版內(nèi)核的安全Linux補丁提供了一個不可執(zhí)行的棧來減少緩沖區(qū)溢出的威脅,從而大大提高了整個系統(tǒng)的安全性。
·StackGuard是一個十分強大的安全補丁工具。你可以使用經(jīng)StackGuard修補過的gcc版本來重新編譯和鏈接關鍵的應用。
·增加新的訪問控制功能。Linux的2.3版內(nèi)核正試圖在文件系統(tǒng)中實現(xiàn)一個訪問控制列表,這要可以在原來的三類(owner、group和other)訪問控制機制的基礎上再增加更詳細的訪問控制。
系統(tǒng)主要通過阻止入侵企圖來防止入侵,而反攻擊系統(tǒng)則可以反向進行端口掃瞄或發(fā)起其它的攻擊,這一招讓入侵者不僅入侵陰謀未能得逞,反而“引狼入室”,招致反攻擊。
有些安全系統(tǒng)如Abacus Sentry具有一定的反攻擊能力。比如有的站點有了防止用戶通過telnet進行連接,在應答telnet連接請求時,系統(tǒng)將返回一些不受歡迎的惡意信息。這只是一種最簡單也是最輕微的反攻擊措施。
用戶賬號有安全等級,這是因為在Linux上每個賬號可以被賦予不同的權限,因此在建立一個新用戶ID時,系統(tǒng)管理員應該根據(jù)需要賦予該賬號不同的權限,并且歸并到不同的用戶組中。
在Linux系統(tǒng)上的tcpd中,可以設定允許上機和不允許上機人員的名單。其中,允許上機人員名單在/etc/hosts.allow中設置,不允許上機人員名單在/etc/hosts.deny中設置。設置完成之后,需要重新啟動inetd程序才會生效。此外,Linux將自動把允許進入或不允許進入的結(jié)果記錄到/rar/log/secure文件中,系統(tǒng)管理員可以據(jù)此查出可疑的進入記錄。
每個賬號ID應該有專人負責。在企業(yè)中,如果負責某個ID的職員離職,管理員應立即從系統(tǒng)中刪除該賬號。很多入侵事件都是借用了那些很久不用的賬號。
root是Linux保護的重點,由于它權力無限,因此最好不要輕易將超級用戶授權出去。但是,有些程序的安裝和維護工作必須要求有超級用戶的權限,在這種情況下,可以利用其他工具讓這類用戶有部分超級用戶的權限。
Linux操作系統(tǒng)是一種公開源碼的操作系統(tǒng),因此比較容易受到來自底層的攻擊,所以一定要有安全防范意識,對系統(tǒng)采取一定的安全措施,這樣才能提高linux系統(tǒng)的安全性。
[1]王秀平.Linux系統(tǒng)管理與維護[M].北京:北京大學出版社,2010.
[2]郇濤,陳萍.Linux網(wǎng)絡服務器配置與管理[M].北京.機械工業(yè)出版社,2010.
(作者單位:天津工程職業(yè)技術學院)
(編輯 李艷華)