連接配接到網際網路的伺服器整天都看到不斷的攻擊和掃描。雖然防火牆和定期的系統更新是確定系統安全的第一道防線,但你還是應該定期檢查,確定沒有攻擊者闖入進來。本教程中介紹的幾款工具就是為這種完整性檢查而開發的,它們可以掃描查找惡意軟體、病毒和rootkit。它們應該可以定期運作(比如說每晚運作),通過電子郵件将報告發給你。如果你看到可疑活動,比如負載大、可疑程序或者伺服器突然開始發送惡意軟體時,還可以使用chkrootkit、rkhunter和ispprotect來掃描系統。
所有這些掃描工具都必須以root使用者的身份來運作。以root使用者的身份登入後繼續下一步,或者在ubuntu上運作“sudo su”,成為root使用者。
chkrootkit――linux rootkit掃描工具
chkrootkit是一款典型的rootkit掃描工具。它會檢查你的伺服器,查找可疑的rootkit程序,并檢查已知的rootkit檔案清單。
或者安裝發行版随帶的程式包(在debian和ubuntu上,你要運作),
apt-get install chkrootkit
或者從www.chkrootkit.org下載下傳源代碼,手動安裝:
wget --passive-ftp ftp://ftp.pangeia.com.br/pub/seg/pac/chkrootkit.tar.gz tarxvfz chkrootkit.tar.gz
cd chkrootkit-*/
make sense
之後,你可以将chkrootkit目錄移到别的某個地方,比如/usr/local/chkrootkit:
cd ..
mv chkrootkit-/ /usr/local/chkrootkit
并建立一個符号連結(symlink),以便易于通路:
ln -s /usr/local/chkrootkit/chkrootkit /usr/local/bin/chkrootkit
想用chkrootkit來檢查你的伺服器,運作這個指令:
chkrootkit
一個常見的誤報報告是:
checking `bindshell'...
infected (ports: 465)
如果你在電子郵件伺服器上收到這個消息,用不着擔心,這是你郵件系統的smtps(安全smtp)端口和一個衆所周知的誤報。
你甚至可以通過計劃任務(cron job)來運作chkrootkit,讓結果通過電子郵件發給你。首先,使用下面這個指令,找到chkrootkit安裝在伺服器上的路徑:
which chkrootkit
示例:
root@server1:/tmp/chkrootkit-0.50# which chkrootkit
/usr/sbin/chkrootkit
chkrootkit安裝在/usr/sbin/chkrootkit路徑上,我們需要在下面的cron這一行有這個路徑:
運作:
crontab -e
想建立就像這樣的計劃任務:
0 3 * * * /usr/sbin/chkrootkit 2>&1 | mail -s "chkrootkit output of
my server" [email protected])
這會在每晚3點運作chkrootkit。将chkrootkit路徑換成你從上述指令獲得的那條路徑,并将電子郵件位址換成你的實際位址。
lynis――通用的安全審查工具和rootkit掃描工具
lynis(之前名為rkhunter)是一款安全審查工具,面向基于linux和bsd的系統。它可以詳細地審查你系統的許多安全方面和配置。從https://cisofy.com/download/lynis/下載下傳最新的lynis源代碼:
cd /tmp
wget https://cisofy.com/files/lynis-2.1.1.tar.gz tarxvfz lynis-2.1.1.tar.gz
mv lynis /usr/local/
ln -s /usr/local/lynis/lynis /usr/local/bin/lynis
這會将lynis安裝到目錄/usr/local/lynis,并建立一個符号連結,以便易于通路。現在運作:
lynis update info
檢查你是否用的是最新版本。
現在,你可以運作這個指令,掃描系統查找rootkit:
lynis audit system
lynis會執行幾次檢測,然後停下來讓你有時間來閱讀結果。按Enter鍵即可繼續掃描。
lynis系統審查。
最後,它會顯示掃描摘要。
lynis的結果。
想以非互動方式運作lynis,使用--quick選項來啟動它:
lynis --quick
想在晚間自動運作lynis,建立就像這樣的計劃任務:
0 3 * * * /usr/local/bin/lynis --quick 2>&1 | mail -s "lynis output
of my server" [email protected])
這會在每晚3點運作lynis。将電子郵件位址換成你的實際位址。
ispprotect――網站惡意軟體掃描工具
ispprotect是一款面向網站伺服器的惡意軟體掃描工具,它可以掃描網站檔案和内容管理系統(cms)系統(比如wordpress、joomla和drupal等)中的惡意軟體。如果你運作一個網站托管伺服器,那麼托管的網站是你伺服器中受到攻擊次數最多的部分,是以建議定期對它們執行完整性檢查。ispprotect包含3種掃描引擎:基于特征的惡意軟體掃描工具、啟發式惡意軟體掃描工具,以及顯示過時cms系統的安裝目錄的掃描工具。ispprotect不是免費軟體,不過有一個免費試用版可以使用,不需要注冊即可試用,或者清除被感染的系統。
ispprotect需要php安裝到伺服器上,php應該安裝在大多數托管系統上。萬一你沒有安裝指令行php,可以在debian或ubuntu上執行:
apt-get install php5-cli
或者在fedora和centos上執行:
yum install php
運作下列指令來安裝ispprotect。
mkdir -p /usr/local/ispprotect
chown -r root:root /usr/local/ispprotect
chmod -r 750 /usr/local/ispprotect
cd /usr/local/ispprotect
wget http://www.ispprotect.com/download/ispp_scan.tar.gz tarxzf ispp_scan.tar.gz
rm -f ispp_scan.tar.gz
ln -s /usr/local/ispprotect/ispp_scan /usr/local/bin/ispp_scan
想啟動ispprotect,運作:
ispp_scan
該掃描工具會自動檢查更新版,然後要求輸入密鑰(在此輸入單詞“trial”),然後要求輸入網站路徑,通常是thats /var/www。
ispprotect惡意軟體掃描。
please enter scan key: <-- trial
please enter path to scan: <-- /var/www
掃描工具現在會開始掃描,顯示了掃描進度。掃描結束後,被感染檔案的名稱顯示在螢幕上,結果存儲在ispprotect安裝目錄的檔案中,供以後使用:
after the scan is completed, you will find the results also in the following files:
malware => /usr/local/ispprotect/found_malware_20161401174626.txt
wordpress => /usr/local/ispprotect/software_wordpress_20161401174626.txt
joomla => /usr/local/ispprotect/software_joomla_20161401174626.txt
drupal => /usr/local/ispprotect/software_drupal_20161401174626.txt
mediawiki => /usr/local/ispprotect/software_mediawiki_20161401174626.txt
contao => /usr/local/ispprotect/software_contao_20161401174626.txt
magentocommerce =>
/usr/local/ispprotect/software_magentocommerce_20161401174626.txt
woltlab burning board =>
/usr/local/ispprotect/software_woltlab_burning_board_20161401174626.txt
cms made simple => /usr/local/ispprotect/software_cms_made_simple_20161401174626.txt
phpmyadmin => /usr/local/ispprotect/software_phpmyadmin_20161401174626.txt
typo3 => /usr/local/ispprotect/software_typo3_20161401174626.txt
roundcube => /usr/local/ispprotect/software_roundcube_20161401174626.txt
starting scan level 1 ...
想每晚作為計劃任務自動運作ispprotect,使用nano建立一個計劃任務檔案:
nano /etc/cron.d/ispprotect
然後插入下面這一行:
0 3 * * * root /usr/local/ispprotect/ispp_scan --update &&
/usr/local/ispprotect/ispp_scan --path=/var/www --email-results=roo
t@localhost --non-interactive --scan-key=aaa-bbb-ccc-ddd
将“root@localhost”換成你的電子郵件位址,掃描報告發送到這個位址。然後,将“aaa-bbb-ccc-ddd”換成你的許可證密鑰。你可以在此(http://ispprotect.com)獲得許可證密鑰。
本文轉自d1net(轉載)