ClamAV 是一套可以運用在 Linux 上的防毒軟體,除了一般防毒的功能還可以在郵件系統及網頁系統中當作一個階段,藉此掃瞄當中是否有惡意的程式所在。
官方網站:http://www.clamav.net/index.html
官方說明:ClamAV is an open source antivirus engine for detecting trojans, viruses, malware & other malicious threats.
官方的說明手冊:https://github.com/vrtadmin/clamav-faq/raw/master/manual/clamdoc.pdf
下載:目前版本為0.98.5 http://downloads.sourceforge.net/project/clamav/clamav/0.98.5/clamav-0.98.5.tar.gz
目前官方釋出的原始碼版本為 0.98.5 ,而在 CentOS 的套件也是 0.98.5,那我們就簡單的利用 yum 套件安裝吧!
sudo yum install -y clamav
另外相關的套件還有「clamd:The Clam AntiVirus Daemon」及「clamav-milter:The Clam AntiVirus sendmail-milter Daemon」。但~不一定要安裝。
安裝完成後,他會在你的系統裡增加了
/etc/freshclam.conf //主要設定檔,設定更新病毒特徵的來源
/etc/cron.daily/freshclam // 每日排程更新病毒碼,以 yum 方式安裝就不用手動去新增排程來更新
/etc/logrotate.d/freshclam // 定期 rotate ClamAV 的記錄檔
/usr/bin/clambc // Bytecode 的測試工具
/usr/bin/clamscan // 掃瞄病毒的執行檔
/usr/bin/clamsubmit // 將檔案送到 Sourcefire 作進一步的分析
/usr/bin/freshclam // 手動更新病毒碼的執行檔(需要有 root 權限)
/var/log/clamav/freshclam.log //每日更新記錄檔
/var/lib/clamav // 此目錄會放特徵碼
還會在系統新增一位「clam」使用者
clam:x:888:129:Clam Anti Virus Checker:/var/lib/clamav:/sbin/nologin
安裝完成後,第一步請執行病毒碼更新
sudo /usr/bin/freshclam
你可能會遭遇無法更新病毒碼,這可能是 /etc/freshclam.conf 裡面所指定的更新主機離你網路距離太遠所致,你可以修改 DatabaseMirror 或增加
sudo vi /etc/freshclam.conf
DatabaseMirror clamav.stu.edu.tw
DatabaseMirror db.tw.clamav.net
DatabaseMirror db.us.clamav.net
DatabaseMirror db.local.clamav.net
儲存設定檔後,請執行病毒碼更新
sudo /usr/bin/freshclam
執行更新後再系統記錄檔,會有類似底下的記錄
ClamAV update process started at Tue Jan 27 03:00:01 2015
main.cvd is up to date (version: 55, sigs: 2424225, f-level: 60, builder: neo)
Downloading daily-19980.cdiff [100%]
daily.cld updated (version: 19980, sigs: 1314700, f-level: 63, builder: neo)
bytecode.cvd is up to date (version: 245, sigs: 43, f-level: 63, builder: dgoddard)
Database updated (3738968 signatures) from clamav.stu.edu.tw (IP: 120.119.118.1)
然後試著對某目錄進行掃毒測試
格式:/usr/bin/clamscan 掃瞄目錄或檔案
/usr/bin/clamscan -r ~/
會產出掃瞄結果報告
----------- SCAN SUMMARY -----------
Known viruses: 3733410
Engine version: 0.98.5
Scanned directories: 1313
Scanned files: 9370 // 表示共掃瞄了多少檔案
Infected files: 4 // 告知多少檔案遭受病毒感染
Data scanned: 359.63 MB
Data read: 293.02 MB (ratio 1.23:1)
Time: 109.000 sec (1 m 49 s)
常用的幾種 clamscan 參數使用
※ 將掃瞄結果存在記錄檔 -r :遞迴 -l:指定記錄檔
格式:/usr/bin/clamscan -r -l [掃瞄結果記錄檔] [檔案或目錄]
/usr/bin/clamscan -r -l ~/clamscan.log ~/
如果找到有毒的檔案,會以關鍵字「FOUND」來表示
/homel/greenth/tmp/clamav-0.98.5/test/.split/split.clam_IScab_ext.exeaa: ClamAV-Test-File FOUND
/home/greenth/tmp/clamav-0.98.5/test/.split/split.clam_IScab_int.exeaa: ClamAV-Test-File FOUND
※ 掃瞄檔案:找到病毒並刪除 --remove
/usr/bin/clamscan -r -l ~/clamscan.log --remove ~/
※ 掃瞄檔案:找到病毒顯示出來。 --infected 只顯示遭感染的檔案。而此時記錄檔 clamscan.log 仍是記錄詳細掃瞄的資訊,僅是畫面上會顯示出遭感染的檔案。
/usr/bin/clamscan -r -l ~/clamscan.log --infected ~/
※ 掃瞄檔案:只顯示錯誤訊息 --quiet
※ 掃瞄檔案:找到病毒並將遭感染的檔案移到指定目錄 --move=DIRECTORY 若要用複製的可以用 --copy=DIRECTORY /usr/bin/clamscan -r -l ~/clamscan.log --copy=/tmp --infected ~/
產出的結果
/home/rita/tmp/clamav-0.98.5/test/.split/split.clam_IScab_ext.exeaa: ClamAV-Test-File FOUND
/home/rita/tmp/clamav-0.98.5/test/.split/split.clam_IScab_ext.exeaa: copied to '/tmp/split.clam_IScab_ext.exeaa.001'
/home/rita/tmp/clamav-0.98.5/test/.split/split.clam_IScab_int.exeaa: ClamAV-Test-File FOUND
/home/rita/tmp/clamav-0.98.5/test/.split/split.clam_IScab_int.exeaa: copied to '/tmp/split.clam_IScab_int.exeaa.001'
~End
网友评论