常用的Linux網路安全工具介紹(第一部分)(轉)

post0發表於2007-08-09
常用的Linux網路安全工具介紹(第一部分)(轉)[@more@]

簡介:

儘管各種版本的Linux distribution 附帶了很多開放源的自由軟體,但是仍然有大量的有用的工具沒有被預設

包括在它們的安裝光碟內,特別是有一些可以增強Linux網路安全的工具包,它們大多也是開放源的自由軟體。

這裡簡單地介紹一下幾個增強Linux網路安全的工具。

1. sudo

sudo是系統管理員用來允許某些使用者以root身份執行部分/全部系統命令的程式。一個明顯的用途是增強了站點的安全性,如果你需要每天以root身份做一些日常工作,經常執行一些固定的幾個只有root身份才能執行的命令 ,那麼用sudo對你是非常適合的。

sudo的主頁在:

以Redhat 為例,下面介紹一下安裝及設定過程:

首先,你能從sudo主頁上下載for Redhat Linux的rpm package.

它在ftp://ftp.freshmeat.net/pub/rpms/sudo/

當前最新的穩定版本1.5.9p4。

執行#rpm -ivh sudo* 進行安裝,然後用/usr/sbin/visudo編輯/etc/sudoers檔案。

如果系統提示你找不到/usr/bin/vi但實際上你在目錄/bin下有vi程式,你需要

ln -sf /bin/vi /usr/bin/vi為

vi 在/usr/bin下建立符號連結。(注:我在Redhat 6.1上遇到,Redhat 5.x上沒有此問題)

另外,如果出現某些其它錯誤,你可能還需要#chmod 700 /var/run/sudo

下面是我的/etc/sudoers檔案例子:

[root@sh-proxy /etc]# more sudoers

Host_Alias SERVER=sh-proxy

# User alias specification

User_Alias ADMIN=jephe,tome

# Cmnd alias specification

Cmnd_Alias SHUTDOWN=/etc/halt,/etc/shutdown,/etc/reboot

ADMIN SERVER=SHUTDOWN

jephe SERVER=/usr/bin/tail -f /var/log/maillog

jephe SERVER=/usr/bin/tail -f /var/log/messages

# User privilege specification

root ALL=(ALL) ALL

-----------

既然我經常需要遠端登入到伺服器觀察email log檔案/var/log/maillog的變化,

因此我加了這一行到 /etc/sudoers,這樣我不需要經常登入作為root來完成我

的日常工作,改善了安全性。

2. Sniffit

sniffit 是一個有名的網路埠探測器,你可以配置它在後臺執行以檢測哪些Tcp/ip

埠上使用者的輸入/輸出資訊。

最常用的功能是攻擊者可以用它來檢測你的23(telnet)和110(pop3)埠上的資料傳送

以輕鬆得到你的登入口令和mail帳號密碼,sniffit基本上是被破壞者所利用的工具,

但是既然想知道如何增強你的站點的安全性,首先你應該知曉闖入者們所使用的各種工具。

sniffit 的主頁在 ~coder/sniffit/sniffit.html

你能從那裡下載最新的版本,安裝是非常容易的,就在根目錄執行#tar xvfz sniff*

解開所有檔案到對應目錄。

你能執行sniffit -i以互動式圖形介面檢視所有在指定網路介面上的輸入/輸出資訊。

如:為了得到所有使用者透過某介面a.b.c.d接收郵件時所輸入的pop3帳號和密碼,你能執行

#sniffit -p 110 -t a.b.c.d &

#sniffit -p 110 -s a.b.c.d &

記錄檔案放在目錄/usr/doc/sniffit*下面:

log file根據訪問者的IP地址,隨機高階埠號和用來檢測的網路介面IP地址和檢測

埠來命名。它利用了tcp/ip協議天生的虛弱性,因為普通的telnet和pop3所傳的

使用者名稱和密碼資訊都是明文,不帶任何方式的加密。 因此對telnet/ftp.你可以用

ssh/scp來替代. sniffit檢測到的ssh/scp資訊基本上是一堆亂碼,因此你不需要

擔心ssh所傳送的使用者名稱和口令資訊會被第三方所竊取。

3. ttysnoop(s)

ttysnoop是一個重定向對一個終端號的所有輸入/輸出到另一個終端的程式。目前我

所知道的它的所在網站為

但是始終連不上去,從其它途徑我得到了ttysnoop-0.12c-5 ,

地址是

這個版本好象還不能支援shadow password,安裝後你需要手動建立目錄/var/spool/ttysnoop

測試這個程式是有趣的,下面是相關指令:

首先改/etc/inetd.conf中的in.telnetd預設呼叫login登入程式為/sbin/ttysnoops,

象下面這樣:

[root@jephe /etc]# more inetd.conf | grep in.telnetd

telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd -L /sbin/ttysnoops

更改後一定要執行killall -HUP inetd使之生效

確保不要使用陰影口令,用#pwunconv禁止陰影口令。

再編輯檔案/etc/snooptab

預設配置就可以了。

[root@jephe /etc]# more snooptab

ttyS1 /dev/tty7 login /bin/login

ttyS2 /dev/tty8 login /bin/login

* socket login /bin/login

------

最後,如果在某個終端上有人登入進來(你可以用w命令檢視它在哪個終端),

如登入終端裝置為ttyp0,則你可以登入進伺服器打入#/bin/ttysnoop ttyp0

(提示輸入root口令,再次,上面提到的這個版本不支援陰影口令)以監視使用者的登入視窗。

4. nmap

nmap 是用來對一個比較大的網路進行埠掃描的工具,它能檢測該伺服器有哪些

tcp/ip埠目前正處於開啟狀態。你可以執行它來確保已經禁止掉不該開啟的不安全的

埠號。

nmap的主頁在http://www.insecure.org/nmap/index.html

下面給出一個簡單的例子:

[root@sh-proxy /etc]# /usr/local/bin/nmap public.sta.net.cn

Starting nmap V. 2.12 by Fyodor (fyodor@dhp.com, www.insecure.org/nmap/)

Interesting ports on public.sta.net.cn (202.96.199.97):

Port State Protocol Service

21 open tcp ftp

23 open tcp telnet

25 open tcp smtp

109 open tcp pop-2

110 open tcp pop-3

143 open tcp imap2

513 open tcp login

514 open tcp shell

7000 open tcp afs3-fileserver

Nmap run completed -- 1 IP address (1 host up) scanned in 15 seconds

==========

第一部分完(待續)

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

相關文章