clamav-milter は、Sendmail と clamd のソケット通信を行うプログラムです。Sendmail の ソケット通信機構 Milter を利用してメール送受信時のリアルタイム ウイルスチェックを可能にします。
clamav-milter はデーモンとして動作します。rpm パッケージをインストールした際に自動でセットアップされる clamd は、デーモンとして起動する必要はありません。
clamav-milter の動作設定を行ないます。ここでは、clamd 実行後、検出した ウイルスメールに対して、どのようなフィルタ処理を行なうかを設定します。
CLAMAV_FLAGS="
--config-file=/etc/clamd.conf
--max-children=10
--force-scan
--quiet
--dont-log-clean
--noreject
-obl local:/var/clamav/clmilter.socket
"
以下のように変更します。.
CLAMAV_FLAGS="
--config-file=/etc/clamd.conf
--max-children=10
--force-scan
--dont-log-clean
--postmaster=xxxx@mydmain.com
--postmaster-only
--outgoing
--noreject
-obl local:/var/run/clamav/clmilter.socket
"
yum update を行うと起動しません。 /etc/sysconfig/clamav-milter.rpmnew を /etc/sysconfig/clamav-milter と置き換えます。
CLAMAV_FLAGS="
--config-file=/etc/clamd.conf
--force-scan
--local
--max-children=10
--noreject
--outgoing
--quiet
"
SOCKET_ADDRESS="local:/var/clamav/clmilter.socket"
ソケットのパスが変わっているので、sendmail.cf も修正します。
上記修正内容は 以下の通りです。
上記、設定例では、自サーバから自サーバ宛へ送信されるメールもスキャン対象とします。もし、ウイルスを検出した場合、ウイルスメール送信者、及び、送信先アドレスには、報告メールは送信しません。設定した postmaser 宛にのみ、その旨を伝えるメールを送信します。
この段階では、まだサービスを起動していませんが、このページで説明している/etc/sysconfig/clamav-milter の修正を行った場合、以下の手順で動作検証を行う必要があります。
clamav-milter → sendmail の順でサービスを停止し、
clamav-milter → sendmail の順でサービスを起動する必要があります。
詳細は、後述します。
以上で clamav-milter に関する設定は終了です。次は、Sendmail 側の設定を行います。