かえでBlog

色々なことを徒然と……

ClamAv + Postfix

      2013/04/29

メール送信の際でもウイルスチェックができるようにします。

前提:ClamAvがインストールおよびチェック可能な状態 PostFixも送受信ができる状態であること。

apt-get install?clamav-milter でclamav-milterをインストール




vi /etc/clamav-milter.conf で以下を編集

# Comment or remove the line below.
#Example ←Exampleをコメントアウト

# Default: no default
#MilterSocket /tmp/clamav-milter.socket
MilterSocket /var/clamav/clmilter.socket ←ソケットの保存先(

# Sets the permissions on the (unix) milter socket to the specified mode.
# Default: disabled (obey umask)
MilterSocketMode 660

# Default: unset (don't drop privileges)
User clamav

ClamdSocket unix:/var/run/clamav/clamd ←clamd.confのLocalSocketと同じファイルにする。




Clamd(/etc/clamd.conf)の編集

LocalSocket /var/run/clamav/clamd ←clamav-milter.confのClamdSocketと同じファイルにする。

User clamav




Postfix(/etc/postfix/main.cf)を編集

#ClamAV(ウイルスソフト)との連携
milter_connect_macros = b j _ {daemon_name} {if_name} {if_addr}
milter_rcpt_macros = i j _ {daemon_name} {client_addr} {mail_addr} {rcpt_addr}
smtpd_milters = unix:/var/clamav/clmilter.socket
non_smtpd_milters = unix:/var/clamav/clmilter.socket
milter_default_action = accept




/etc/rc.d/init.d/clamav-milter を編集

start(){
action $"Starting ${prog}:" ${CLAMAV_MILTER} -c ${CLAMAV_MILTER_CONF}
RETVAL=$?
echo
[ $RETVAL = 0 ] && touch /var/lock/subsys/clamav-milter
chgrp postfix /var/clamav/clmilter.socket ←追記
chmod g+w /var/clamav/clmilter.socket ←追記




あとはClamd Clamav-militer Postfixを再起動

メールを送受信してみて、ヘッダーに以下のような値が入っていればOK

X-Virus-Status: Clean
X-Virus-Scanned: clamav-milter 0.97.5 at xxx.jp

 

もし入っていない場合、maillog等ログを確認する。

warning: connect to Milter service unix:/var/clamav/clmilter.socket: Permission denied

の場合はclmilter.socketのグループユーザーがPostfixではないまたはパーミッションが660ではない場合があるので確認する。

(私の場合はグループがclamavだったので上記のエラーが発生しました。)

 

 

 - 備忘録 , , ,