FreeBSD安全工具(轉)

gugu99發表於2007-08-11
FreeBSD安全工具(轉)[@more@]

  雖然只使用FreeBSD基本系統提供的功能,就能將計算機系統設定為具有非常高的安全性的系統。然而網路上也存在各種用於增強或檢查系統安全性的軟體工具,有些工具是標準程式的更安全替代品,增強了系統安全性,有些是對系統或網路進行監視和檢查的工具。使用這些工具,毫無疑問會進一步增強系統的安全性。FreeBSD的Packages Collection或Ports Collection通常將這些工具放在security子類中。

  • 系統工具軟體

  雖然FreeBSD系統本身提供了對訪問的認證、控制和記錄,然而由於在Unix系統中,服務程式基本上是獨立的,使用標準的安全控制方式的服務程式能從FreeBSD的認證控制機制中獲益,但是有些服務程式並沒有使用這些安全認證方式。對於獨立進行認證控制的軟體,除了使用其本身的控制能力之外,還有一些獨立的軟體具備為其他程式服務的控制訪問功能。

  還有一些系統工具,能用於自動檢查系統,幫助管理員發現系統中存在的問題,這些軟體也是非常有用的工具。此外,還有一些工具軟體屬於系統工具,但對於增進系統安全也有很大意義,例如sudo,能在一定程度上增加root口令的安全性。

  • TcpWrapper

  tcp_wrapper對於多種伺服器軟體是非常有用的訪問控制工具,它能以統一的方式保護各種不同伺服器。對於沒有受防火牆保護的獨立主機系統,tcpwrapper的保護更為重要。因為配置了tcp_wrapper之後,任何向inetd發起的連線首先是連線到tcp_wrapper提供的tcpd上之後,再連線到具體的服務程式上,這樣tcpd就有機會檢視遠端系統是否被允許訪問,並能將連線的情況透過syslog記錄下來,包括請求的種類,時間和連線的來源地址。

  這個程式事實上代替了系統提供的守護程式,來輕鬆和高效的監控外部網路與伺服器的連線。由於它提供了詳細的日誌記錄,也是用於抓住入侵者,並提供可靠的證據的一種方法。tcpwrapper的思想與代理型防火牆的思路是相同的,都是透過替換正常伺服器的做法來完成控制任務。

  當使用Packages Collection安裝了tcpwrapper之後,它的守護程式tcpd就被安裝到了/usr/local/libexec目錄下,然後就能使用tcpd來代替原有的守護程式提供網路服務了。

  FreeeBSD 3.2-RELEASE之後,tcp_wrapper進入了FreeBSD的基本系統中,而不再需要額外安裝。

  有幾種不同的使用tcpd的辦法,最基本的辦法是透過更改inetd.conf來啟動tcpd。例如要想讓tcpd來保護 fingerd,那麼就需要將inetd.conf中對應fingerd的設定更改為tcpd:

  finger stream tcp nowait/3/10 nobody /usr/local/libexec/tcpd fingerd -s

  tcpd能在標準的系統檔案目錄中查詢正確的守護程式以提供服務,如果程式不在標準的目錄路徑下,就需要在最後一列中指定所要執行檔案的全路徑,如/usr/libexec/fingerd。此後,對finger埠的訪問,將被記錄進系統的日誌檔案,具體為syslog.conf中對auth指定的記錄檔案,例如下面的syslog設定將tcpd的資訊傳送到/var/log/auth.log 檔案中(需要保證auth.log檔案已存在)。

  auth.* /var/log/auth.log

  tcpd使用/usr/local/etc/目錄下的hosts.allow和hosts.deny檔案來控制對伺服器的訪問,訪問控制是基於IP 地址和域名的。以下為一個hosts.allow控制檔案的例子。可以看出設定檔案比較簡單易懂,tcpwrapper也提供了一個程式tcpdchk,來檢查使用者更改過的設定檔案是否正確。

  ALL: domain.com

  telnet: 192.168.3.0/255.255.255.0 EXCEPT 192.168.3.10

  此外有著相似功能,但用於替換inetd的軟體為xinetd,它能用於代替原有的inetd來啟動各種服務程式,但提供了更詳細的日誌記錄。

  • 系統安全檢查工具

  Internet上針對每個系統均報告了大量的安全相關的問題,如果將這些已知的安全問題有效的組織起來,使用程式對系統自動進行檢查,就能極大的幫助網路管理員查詢現有的問題,使得系統更為安全。網路上存在多種這類的工具,如Satan、cops,就用於這個目的。然而由於它們的強大功能,這些工具也能被企圖入侵他人系統的使用者利用,因此為了避免入侵者,系統管理員應該儘早使用這些軟體,以起到預防作用。

  cops是一個由系統管理員執行,檢查系統內部設定的程式。它針對已知的Unix存在問題進行檢查,如檢查系統中是否存在沒有口令的帳戶,是否有非法SetUID程式,以及是否存在Internet上已經報告過的系統漏洞,是否存在有問題的軟體等等。系統管理員能使用cops來檢查系統的配置有無問題。

  Satan則與cops不同,Satan是從系統外部進行檢查系統是否存在安全問題的程式,它能對網路存在的脆弱性自動進行搜尋、分析並提供安全報告。這種從外部分析系統的軟體一般稱為掃描器,由於Satan功能強大並提供了可擴充套件的框架,因此在Internet上十分流行。它的另一個特點就是它透過Web瀏覽器工作,使用者只需指明要搜尋的主機以及搜尋深度和相近規則的級別,Satan就能自動收集儘可能多的目標資訊。

  由於Santa是一個安全工具,因此它對掃描目標計算機並沒有刻意隱藏,這樣就在目標計算機的系統日誌中留下了大量的掃描連線記錄,尤其是當目標計算機使用了tcpwrapper的時候。這些日誌能用於標識是否遭到掃描攻擊。一些更隱蔽的軟體工具能透過不進行完全連線等方式隱藏掃描記錄,要發現它們就更為困難,因而對系統安全更為危險。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10748419/viewspace-944613/,如需轉載,請註明出處,否則將追究法律責任。

相關文章