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