首先,以超級用戶(root)登入系統,用netstat 命令(這是多數Linux 系統標配的網絡工具)查看一下當前的網絡狀態,輸出的結果譬如是:
root@percy / ]# netstat -a Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 *:imap2 *:* LISTEN tcp 0 0 *:pop-3 *:* LISTEN tcp 0 0 *:linuxconf *:* LISTEN tcp 0 0 *:auth *:* LISTEN tcp 0 0 *:finger *:* LISTEN tcp 0 0 *:login *:* LISTEN tcp 0 0 *:shell *:* LISTEN tcp 0 0 *:telnet *:* LISTEN tcp 0 0 *:ftp *:* LISTEN tcp 0 0 *:6000 *:* LISTEN udp 0 0 *:ntalk *:* udp 0 0 *:talk *:* udp 0 0 *:xdmcp *:* raw 0 0 *:icmp *:* 7 raw 0 0 *:tcp *:* 7 |
如你所見到的輸出結果,最初的安裝對必定數量的服務並未偵聽,而這些服務的大多數就是麻煩的製造者,在配置文件/etc/inetd.conf中就能夠行使禁止。
用你喜歡的文本編輯器打開這個文件,註銷你不想提供的服務,這隻需在包含服務內容的行前面添加一個``#'',在本例中全部的服務都被註銷了,固然,若是你決定要提供這些服務中的某幾個,那由你本身來決定。
如今,從新啓動 inetd 來使這些改變的內容起做用,這根據系統的不一樣會有多種方法,一個例子是: killall -HUP inetd,依訣竅,從新用netstat檢查開放的socket並注意發生的變化。接下來,查看還有哪些進程在運行。一般會看到sendmail、lpd和snmd 在等待接入的請求。所以機器不對此類的任何請求提供服務,因此他們應當終止運行。
一般,這些服務是由系統初始化腳本啓動,腳本會因發佈的不一樣而異,通常能夠在/etc/init.d 或 /etc/rc.d中找到。若是你還不能肯定,請參照你所用發佈的文檔。目標是在系統啓動時禁止腳本啓動這些服務。
若是你的Linux發佈使用的是打包的系統,花點時間移掉你不需的服務。在此範例機器中,包括了sendmail和r字頭的服務進程(rwho、rwall等),lpd、ucd-snmp和apache。這是確保此類服務不會因意外而激活的最簡捷的途徑。
X堅固手段
近來多數的發佈都支持機器首次啓動時就登錄進入X窗口例如xdm進行管理,不幸的是,這也是主要的***點。默認方式下,機器容許任何主機請求登錄窗口,即便此機器僅僅只有一個用戶直接從控制檯登錄,這種特性亦需屏蔽。
配置文件會賴於你所使用的登錄管理器而變化。本機選用xdm,故而/usr/X11R6/lib/X11/Xaccess文件需進行修改,添加一個``#''符號來阻止啓動此服務。個人Xaccess以下設置:
#* #any host can get a login window #* #any indirect host can get a chooser |
再次啓動xdm時此設置有效。
軟件升級
如今一些基本的堅固措施已完成,須要時時注意發行商對發佈的升級和加強。缺少甚至沒有維護會是危及系統安全的一大因素。
對開放源代碼軟件的保障之一是其在不斷的發展中,有許多人花費大量的時間在不停地尋找安全方面存在的缺陷。這直接致使了Linux發佈不斷的維護過程,常常會有升級程序、臭蟲補丁程序和安全方面的指導出如今網頁中。隔幾天或幾周就瀏覽一下發布商的網頁看是否有補丁或升級程序貼出來。
後續工做
如今,經處理過的機器比其初次安裝後的安全性已提升了,但決不是對任何***就牢不可破了,但已不存在明顯的可***之處了。在此列出的方法就象給你的車子或房子加了鎖,通常水平的小偷就會被這類措施所動搖,意識到這是落鎖的轉而尋找其餘沒有加以保護的系統。
若是你認定這些措施沒有提供足夠的安全性能,也許你還想經過Internet提供一些網絡服務,在進行以前須要花費一些時間尋找更高級的安全技術。
但不幸的是,許多Linux的發佈商假定他們的客戶已經熟知這些服務並且也想使用他們。但對初始用戶一般這不是事實,固然,在Linux系統的安全性徹底保障以前還有大量的未開發領域。而這些步驟就是對已知曉的系統漏洞加以最基本的安全保障。
時至今日,對於危及系統和網絡安全的多數保護手段還相對較弱,而隨着Linux的流行且高速Internet存取逐漸實現的時刻,涌向未經預防的Linux 系統的***會愈來愈多