第1招:取消不必要的服務(wù)
由于受inetd的統一指揮,因此Linux中的大部分TCP或UDP服務(wù)都是在/etc/inetd.conf文件中設定。所以取消不必要服務(wù)的第一步就是檢查/etc/inetd.conf文件,在不要的服務(wù)前加上“#”號。
Inetd除了利用/etc/inetd.conf設置系統服務(wù)項之外,還利用/etc/services文件查找各項服務(wù)所使用的端口。因此,用戶(hù)必須仔細檢查該文件中各端口的設定,以免有安全上的漏洞。
在Linux中有兩種不同的服務(wù)型態(tài):一種是僅在有需要時(shí)才執行的服務(wù),如finger服務(wù);另一種是一直在執行的永不停頓的服務(wù)。這類(lèi)服務(wù)在系統啟動(dòng)時(shí)就開(kāi)始執行,因此不能靠修改inetd來(lái)停止其服務(wù),而只能從修改/etc/rc.d/rc[n].d/文件或用Run level editor去修改它。提供文件服務(wù)的NFS服務(wù)器和提供NNTP新聞服務(wù)的news都屬于這類(lèi)服務(wù),如果沒(méi)有必要,最好取消這些服務(wù)。
第2招:限制系統的出入
在進(jìn)入Linux系統之前,所有用戶(hù)都需要登錄,也就是說(shuō),用戶(hù)需要輸入用戶(hù)賬號和密碼,只有它們通過(guò)系統驗證之后,用戶(hù)才能進(jìn)入系統。
與其他Unix操作系統一樣,Linux一般將密碼加密之后,存放在/etc/passwd文件中。Linux系統上的所有用戶(hù)都可以讀到/etc/passwd文件,雖然文件中保存的密碼已經(jīng)經(jīng)過(guò)加密,但仍然不太安全。因為一般的用戶(hù)可以利用現成的密碼破譯工具,以窮舉法猜測出密碼。比較安全的方法是設定影子文件/etc/shadow,只允許有特殊權限的用戶(hù)閱讀該文件。
在Linux系統中,如果要采用影子文件,必須將所有的公用程序重新編譯,才能支持影子文件。這種方法比較麻煩,比較簡(jiǎn)便的方法是采用插入式驗證模塊(PAM)。很多Linux系統都帶有Linux的工具程序PAM,它是一種身份驗證機制,可以用來(lái)動(dòng)態(tài)地改變身份驗證的方法和要求,而不要求重新編譯其他公用程序。這是因為PAM采用封閉包的方式,將所有與身份驗證有關(guān)的邏輯全部隱藏在模塊內,因此它是采用影子檔案的最佳幫手。
Linux系統管理人員只需花費幾小時(shí)去安裝和設定PAM,就能大大提高Linux系統的安全性,把很多攻擊阻擋在系統之外。
第3招:保持最新的系統核心
由于Linux流通渠道很多,而且經(jīng)常有更新的程序和系統補丁出現,因此,為了加強系統安全,一定要經(jīng)常更新系統內核。
在Internet上常常有最新的安全修補程序,Linux系統管理員應該消息靈通,經(jīng)常光顧安全新聞組,查閱新的修補程序。
第4招:檢查登錄密碼
設定登錄密碼是一項非常重要的安全措施,如果用戶(hù)的密碼設定不合適,就很容易被破譯,尤其是擁有超級用戶(hù)使用權限的用戶(hù),如果沒(méi)有良好的密碼,將給系統造成很大的安全漏洞。
在多用戶(hù)系統中,如果強迫每個(gè)用戶(hù)選擇不易猜出的密碼,將大大提高系統的安全性。但如果passwd程序無(wú)法強迫每個(gè)上機用戶(hù)使用恰當的密碼,要確保密碼的安全度,就只能依靠密碼破解程序了。
實(shí)際上,密碼破解程序是黑客工具箱中的一種工具,它將常用的密碼或者是英文字典中所有可能用來(lái)作密碼的字都用程序加密成密碼字,然后將其與Linux系統的/etc/passwd密碼文件或/etc/shadow影子文件相比較,如果發(fā)現有吻合的密碼,就可以求得明碼了。
第5招:設定用戶(hù)賬號的安全等級
除密碼之外,用戶(hù)賬號也有安全等級,這是因為在Linux上每個(gè)賬號可以被賦予不同的權限,因此在建立一個(gè)新用戶(hù)ID時(shí),系統管理員應該根據需要賦予該賬號不同的權限,并且歸并到不同的用戶(hù)組中。
在Linux系統上的tcpd中,可以設定允許上機和不允許上機人員的名單。其中,允許上機人員名單在/etc/hosts.allow中設置,不允許上機人員名單在/etc/hosts.deny中設置。設置完成之后,需要重新啟動(dòng)inetd程序才會(huì )生效。此外,Linux將自動(dòng)把允許進(jìn)入或不允許進(jìn)入的結果記錄到/rar/log/secure文件中,系統管理員可以據此查出可疑的進(jìn)入記錄。
每個(gè)賬號ID應該有專(zhuān)人負責。在企業(yè)中,如果負責某個(gè)ID的職員離職,管理員應立即從系統中刪除該賬號。很多入侵事件都是借用了那些很久不用的賬號。
在用戶(hù)賬號之中,黑客最喜歡具有root權限的賬號,這種超級用戶(hù)有權修改或刪除各種系統設置,可以在系統中暢行無(wú)阻。因此,在給任何賬號賦予root權限之前,都必須仔細考慮。
第6招:消除黑客犯罪的溫床
在Unix系統中,有一系列r字頭的公用程序,它們是黑客用以入侵的武器,非常危險,因此絕對不要將root賬號開(kāi)放給這些公用程序。由于這些公用程序都是用.rhosts文件或者hosts.equiv文件核準進(jìn)入的,因此一定要確保root賬號不包括在這些文件之內。
第7招:增強安全防護工具
SSH是安全套接層的簡(jiǎn)稱(chēng),它是可以安全地用來(lái)取代rlogin、rsh和rcp等公用程序的一套程序組。SSH采用公開(kāi)密鑰技術(shù)對網(wǎng)絡(luò )上兩臺主機之間的通信信息加密,并且用其密鑰充當身份驗證的工具。
第8招:限制超級用戶(hù)的權力
Sudo程序允許一般用戶(hù)經(jīng)過(guò)組態(tài)設定后,以用戶(hù)自己的密碼再登錄一次,取得超級用戶(hù)的權限,但只能執行有限的幾個(gè)指令。例如,應用sudo后,可以讓管理磁帶備份的管理人員每天按時(shí)登錄到系統中,取得超級用戶(hù)權限去執行文檔備份工作,但卻沒(méi)有特權去作其他只有超級用戶(hù)才能作的工作。
Sudo不但限制了用戶(hù)的權限,而且還將每次使用sudo所執行的指令記錄下來(lái),不管該指令的執行是成功還是失敗。在大型企業(yè)中,有時(shí)候有許多人同時(shí)管理Linux系統的各個(gè)不同部分,每個(gè)管理人員都有用sudo授權給某些用戶(hù)超級用戶(hù)權限的能力,從sudo的日志中,可以追蹤到誰(shuí)做聳裁匆約案畝 了系統的哪些部分 ?
第9招:追蹤黑客的蹤跡
·正常用戶(hù)在半夜三更登錄;
·不正常的日志記錄,比如日志只記錄了一半就切斷了,或者整個(gè)日志文件被刪除了;
·用戶(hù)從陌生的網(wǎng)址進(jìn)入系統;
·因密碼錯誤或用戶(hù)賬號錯誤被擯棄在外的日志記錄,尤其是那些一再連續嘗試進(jìn)入失敗,但卻有一定模式的試錯法;
·非法使用或不正當使用超級用戶(hù)權限su的指令;
·重新開(kāi)機或重新啟動(dòng)各項服務(wù)的記錄。
第10招:共同防御,確保安全
聯(lián)系客服