Linux系統(tǒng)安全工具之:Sxid和Skey
下面介紹一些可以用于 Linux 的安全工具,這些工具對于固化您的服務(wù)器將起到一定的作用,可以解決各方面的問題。我們的重點(diǎn)只是想讓您了解這些工具,對安裝配置以及使用不會給出很詳細(xì)的介紹。一些安全問題例如 suid 是什么,緩沖溢出是什么等概念性的東西也不屬于本文討論的范圍。
介紹這些工具的目的只是給您一個提示的方向,并不是讓您拘泥于這些工具。畢竟安全是一個過程,不是一個產(chǎn)品。
一、Sxid
sxid 是一個系統(tǒng)監(jiān)控程序。它可以監(jiān)視系統(tǒng)中 suid,sgid 文件以及沒有屬主的變化。并且以可選的形式報告這些改變,你可以在配置文件中設(shè)置用 email 的形式通知這些改變,也可以不使用 email 而直接在標(biāo)準(zhǔn)輸出上顯示這些變化。Suid,sgid 文件以及沒有屬主的文件很有可能是別人放置的后門程序,這些都是您所要特別注意的。
你可以從下面的網(wǎng)址獲得 sxid:ftp://marcus.seva.net/pub/sxid/
如果您安裝過其他工具,那么您一定也會安裝這個工具,它在安裝上沒有什么特別的地方。
缺省安裝的時候,配置文件為 /usr/local/etc/sxid.conf,這個文件中有很明顯的注釋很容易看懂。在這個文件中定義了 sxid 的工作方式。日志文件缺省為 /var/log/sxid.log,日志文件的循環(huán)次數(shù)在 sxid.conf 文件中定義。您可以在配置固定后把 sxid.conf 設(shè)置為不可改變,把 sxid.log 設(shè)置為只可添加(使用 chattr 命令)。
您可以用 sxid -k 加上 -k 選項來進(jìn)行檢查,這時檢查很靈活,既不記入日志,也不會發(fā)出 email。這樣您就可以隨時做檢查。但是我還是建議您把檢查放入 crontab 中,使用 crontab -e 編輯加入下面的條目:
0 4 * * * /usr/bin/sxid
表示每天上午 4 點(diǎn)執(zhí)行這個程序。
如果您還想了解更詳細(xì)的信息,可以參考:
man sxid
man 5 sxid.conf
二、Skey
您認(rèn)為您的密碼安全嗎?即使您的密碼很長,有很多特殊字符,解密工具很難破解,但您的密碼在網(wǎng)絡(luò)中傳送時是以明文形式的,在以太網(wǎng)中隨便一個嗅探器就可以截取您的密碼?,F(xiàn)在在交換環(huán)境中也能實(shí)現(xiàn)這種技術(shù)。在這種情況下,skey 對您來說是一個選擇。
Skey 是一次性口令的一個工具。它是一個基于客戶\服務(wù)器的應(yīng)用程序。首先在服務(wù)器端可以用 keyinit 命令為每個用戶建立一個 skey 客戶,這個命令需要指定一個秘密口令,然后就可以為客戶端的用戶產(chǎn)生一次性口令列表。當(dāng)用戶通過 telnet,ftp 等與服務(wù)器進(jìn)行連接時就可以按照一次性口令列表中的口令順序輸入自己的密碼,下次再連接時候密碼就換成了列表中的下一個。
可以從下面的網(wǎng)址獲得 skey:ftp://ftp.cc.gatech.edu/ac121/linux/system/network/sunacm/other/skey
skey 的服務(wù)器端使用有下面的步驟:
1.使用下面的命令初始化用戶 mary:
keyinit mary
keyinit 每次為用戶生成 99 個一次性口令,這時就會在 /etc/skeykeys 文件建立這個用戶,該文件中保存了服務(wù)器端計算下一個一次性口令的一些信息。用上面的 keyinit 命令時就會在 /etc/skeykeys 中有下面的記錄:
mary 0099 to25065 be9406d891ac86fb Mar 11, 2001 04:23:12
上面的記錄中從左到右依次是用戶名,要使用的一次性口令序號,口令的種類,16 進(jìn)制表示的口令,日期和時間。
2.將一次性口令列表提供給 mary
您可以打印出口令列表然后送給 mary。這樣比較安全,密碼不會在網(wǎng)絡(luò)中傳遞。
3.為 mary 修改缺省的登陸 shell 為 /usr/local/bin/keysh
由于 PAM 的作用,mary 登陸時要輸入密碼,她輸入這個一次性口令后服務(wù)器端要對這個口令進(jìn)行校驗,校驗通過連接就被許可了。
可能有些用戶不喜歡書面的口令列表,用戶可以使用 key 命令在自己的客戶端得到一次性口令。您可以通過開兩個窗口,一個對服務(wù)器進(jìn)行連接獲得一次性口令的種類和序號,然后在另一個窗口用 key 命令根據(jù)口令的種類和序號獲得所要的密碼。但是必須提醒您,您這樣的方便是以一定的危險性為代價的。
如果您的缺省的 99 個口令用完了,您可以使用 keyinit -s 刷新口令列表。
在 /usr/src/skey/misc 目錄中有許多其他的替換 keysh 的提供其他服務(wù)的程序,例如:su,login,ftp 等等。這樣您可以應(yīng)付不同的服務(wù)的連接請求了。
為了安全,您***設(shè)置一下/etc/skeykeys 文件的屬性和權(quán)限。