三、限制網絡訪問
1.NFS訪問
如果您使用NFS網絡文件系統服務,應該確保您的/etc/exports具有最嚴格的訪問權限設置,也就是意味著不要使用任何通配符、不允許root寫權限并且只能安裝為只讀文件系統。編輯文件/etc/exports并加入如下兩行。
|
/dir/to/export 是您想輸出的目錄,host.mydomain.com是登錄這個目錄的機器名,ro意味著mount成只讀系統,root_squash禁止root寫入該目錄。為了使改動生效,運行如下命令。
|
2.Inetd設置
首先要確認/etc/inetd.conf的所有者是root,且文件權限設置為600。設置完成后,可以使用"stat"命令進行檢查。
|
然后,編輯/etc/inetd.conf禁止以下服務。
|
如果您安裝了ssh/scp,也可以禁止掉Telnet/FTP。為了使改變生效,運行如下命令:
|
默認情況下,多數Linux系統允許所有的請求,而用TCP_WRAPPERS增強系統安全性是舉手之勞,您可以修改/etc/hosts.deny和/etc/hosts.allow來增加訪問限制。例如,將/etc/hosts.deny設為"ALL: ALL"可以默認拒絕所有訪問。然后在/etc/hosts.allow文件中添加允許的訪問。例如,"sshd: 192.168.1.10/255.255.255.0 gate.openarch.com"表示允許IP地址192.168.1.10和主機名gate.openarch.com允許通過SSH連接。
配置完成后,可以用tcpdchk檢查:
|
tcpchk是TCP_Wrapper配置檢查工具,它檢查您的tcp wrapper配置并報告所有發現的潛在/存在的問題。
3.登錄終端設置
/etc/securetty文件指定了允許root登錄的tty設備,由/bin/login程序讀取,其格式是一個被允許的名字列表,您可以編輯/etc/securetty且注釋掉如下的行。
|
這時,root僅可在tty1終端登錄。
4.避免顯示系統和版本信息。
如果您希望遠程登錄用戶看不到系統和版本信息,可以通過一下操作改變/etc/inetd.conf文件:
|
加-h表示telnet不顯示系統信息,而僅僅顯示"login:"。
四、防止攻擊
1.阻止ping 如果沒人能ping通您的系統,安全性自然增加了。為此,可以在/etc/rc.d/rc.local文件中增加如下一行:
|
2.防止IP欺騙
編輯host.conf文件并增加如下幾行來防止IP欺騙攻擊。
|
3.防止DoS攻擊
對系統所有的用戶設置資源限制可以防止DoS類型攻擊。如最大進程數和內存使用數量等。例如,可以在/etc/security/limits.conf中添加如下幾行:
|
然后必須編輯/etc/pam.d/login文件檢查下面一行是否存在。
|
上面的命令禁止調試文件,限制進程數為50并且限制內存使用為5MB。
經過以上的設置,您的Linux服務器已經可以對絕大多數已知的安全問題和網絡攻擊具有免疫能力,但一名優秀的系統管理員仍然要時刻注意網絡安全動態,隨時對已經暴露出的和潛在安全漏洞進行修補。