clamav安裝與使用
在安裝之前先新增 clamav 使用者及群組
不然下面會有權限的問題產生
到時還要手動修正
依照官方文件先創 clamav群組與使用者
groupadd clamav
useradd -g clamav -s /bin/false -c "Clam AntiVirus" clamav
註:如果使用 clamd 或 freshclam 並無出現權限錯誤問題
則下面設定權限的部份可以跳過
先設定好讓yum可以抓到dries
安裝clamav:
yum -y install clamav clamav-server clamd
設定開放 clamav的log檔屬性:
clamd log檔預設位置在
cd /var/log/clamav/
clamd的部份:
先創個clamd.log出來
touch clamd.log
把屬性打開
1.chmod 600 clamd.log
2.chown clamav clamd.log (把權限指定給clamav)
設定長駐clamd防毒
/etc/rc.d/init.d/clamd start
chkconfig clamd on
freshclam的部份:
cd /var/log/clamav
touch freshclam.log
chmod 600 freshclam.log
chown clamav freshclam.log
注意!! 有兩個目錄的權限要開放給 clamav 使用者
不然無法下載病毒碼
chown clamav /varclamav
chown clamav:clamav /usr/local/share/clamav
開始更新:
freshclam
每日更新:
vi /etc/crontab
幾分 幾點 * * * root /usr/local/bin/freshclam
手動掃描語法:
◎語法:
clamscan [options] [file/directory/-]
◎常用參數:
-d FILE/DIR, --database=FILE/DIR 指定病毒資料庫位址.
-l FILE, --log=FILE 將掃描結果儲存到FILE這個檔案.
-r, --recursive 遞迴掃描.
--bell 發現病毒的時候發出聲響.
--no-summary 完成掃描後,不顯示摘要訊息.
--remove 移除被病毒感染的檔案.
◎常用範例:
(0) 掃描某一檔案: clamscan file
(1) 掃描目前所在的資料夾: clamscan
(2) 遞迴掃描位於/home資料夾下的所有檔案及資料夾: clamscan -r /home
-----------------------------------------------------------------------------------
ClamAV
English Version
[ 最新版本: 0.93.3 ] 為 Fedora 9
注意:如果你要升級 (不是新的安裝) 至 0.93 版本,因為從 0.93 版本開始 ClamAV 的病毒資料庫已經在用不一樣的格式 (.cld) 所以已經不需要 main.inc 和 daily.inc 子目錄。你必須手動刪除這兩個子目錄如下:
cd /var/lib/clamav
rm -fr main.inc
rm -fr daily.inc
2008/06/24
今天我注意到 freshclam 更新 ClamAV 病毒碼資料庫時它把檔案 /var/lib/clamav/main.cvd 改名為 /var/lib/clamav/main.cld。在這樣的情形之下你必須改 initscript /var/rc.d/init.d/clamd。更改這列:
if ! [ -f /var/lib/clamav/main.cvd -o -d /var/lib/clamav/main.inc ]; then ==>
if ! [ -f /var/lib/clamav/main.cld ]; then
我從來沒有想過要寫如何安裝 ClamAV 這篇文章因為安裝 ClamAV 是一個很容易的事情。但是為了完整﹝完整電子郵件方案: Sendmail + milter-greylist + ClamAV Anti-Virus + SpamAssassin﹞,我決定乾脆把它寫了。
有人可能會問為什麼在一個 Linux 伺服器安裝一個防毒程式?畢竟沒有病毒會攻擊 Linux。相反的,大家知道病毒只攻擊微軟 Windows 這作業系統。對這問題的答案是:雖然電子郵件伺服器是安裝在 Linux 但是電子郵件的使用者很可能是在使用 Windows。為了保護你的使用者,乾脆也安裝了防毒程式。
我在使用 Fedora 9,所以我要安裝的 ClamAV 是 Fedora 9 的版本。我拿 crash-hat 為 CentOS-5.0 所提供的 source rpm,然後重建我自己的 rpm 包裝為 Fedora 9。
當然你自己也可以這樣做。但是如果你無法或不知道如何從 source rpm 建你需要的 rpm 包裝,請你參考 這裡 。我 提供 我在 Fedora 9 所建的 rpm 包裝。
2008/07/09
crash-hat 很慢提供最新版本的 rpm 包裝,所以我自己使用前一個 .src.rpm 來重建最新版本的 rpm 包裝。我現在也提供為 CentOS 5.2 的 rpm 包裝。你在這裡下載。
因為 Fedora 9 也支援 ClamAV,當然你可以使用 Fedora 9 所提供的 rpm 包裝來安裝或更新。我自己喜歡重建我的 rpm 包裝因為我感覺 Fedora 9 負責 ClamAV 的人更新的很慢。
註:如果你不用 Fedora,你可以在 http://www.clamav.net/download/packages下載你 distribution 的 binary package。
安裝/更新這些檔案:
rpm -Uvh clamav-0.93.3-1.i686.rpm clamav-milter-0.93.3-1.i686.rpm clamav-server-0.93.3-1.i686.rpm
註:不要安裝/更新 clamav-db-0.93.3-1.i686.rpm。freshclam 會自動下載所需要的病毒碼。
設定檔案:
/etc/clamd.conf
/etc/freshclam.conf
/etc/sysconfig/clamav-milter
除了你有特別的需要,要不然就不需要修改這些設定檔案的設定內容。都沒有問題的。
現在我們可以啟動 clamav-milter 、 clamd 和 freshclam:
chkconfig clamav-milter on
chkconfig clamd on
chkconfig freshclam on
service clamav-milter start
service clamd start
service freshclam start
因為我們使用一個 milter ﹝clamav-milter﹞,在 /etc/mail/sendmail.mc 的 OSTYPE(`linux')dnl 之後我們需要加:
INPUT_MAIL_FILTER(`clamav-milter',`S=local:/var/run/clamav/clamav-milter.sock,F=, T=S:4m;R:4m')dnl
define(`ConfINPUT_MAIL_FILTERS', `clamav-milter')dnl
註:如果你也同時使用 milter-greylist,應該先放 milter-greylist 的設定,然後才放 clamav-milter。這樣的,當一封電子郵件到達,Sendmail 會先呼叫 milter-greylist 然後呼叫 clamav-milter。整個設定如下:
OSTYPE(`linux')dnl
INPUT_MAIL_FILTER(`greylist',`S=local:/var/milter-greylist/milter-greylist.sock')
define(`confMILTER_MACROS_CONNECT', `j, {if_addr}')
define(`confMILTER_MACROS_HELO', `{verify}, {cert_subject}')
define(`confMILTER_MACROS_ENVFROM', `i, {auth_authen}')
INPUT_MAIL_FILTER(`clamav-milter',`S=local:/var/run/clamav/clamav-milter.sock,F=, T=S:4m;R:4m')dnl
define(`ConfINPUT_MAIL_FILTERS', `clamav-milter')dnl
重新建 sendmail.cf 然後重新啟動 sendmail:
m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
service sendmail restart
現在你的使用者可以享受沒有病毒的電子郵件了。
沒有留言:
張貼留言