内容は無保証です。メールが配送されなくなったりする危険もありますから 自己責任でお願いします。
Debian unstable ('05/1/26) ですが基本的には他の環境でも同じだと思います。 Exim4 に関する情報が非常に少ないのが困ったものです。

Virus メール対策

最初は exiscan + clamav で行なっていましたが sarge の クリーンインストールしたら exim4 になってしまったので exim4-daemon-heavy での設定を試行してみた記録です。 exim4-daemon-heavy, clamav-daemon のインストール が前提です。正しい設定かどうか未だ不明です。
参考にしたのは Exim-SpamAndVirusScanning
/usr/share/doc/exim4-daemon-heavy/exiscan-acl-spec.txt.gz
  1. 準備として clamd.conf に以下を設定します。
    TCPSocket 3310
    TCPAddr 127.0.0.1
    バージョンによっては TCPSocket 3310 はデフォルトで設定されたりする ようです。逆に LocalSocket /var/run/clamav/clamd.ctlFixStaleSocket が設定されてる場合もあるようですが,この場合 これらはコメントアウト(文頭に # を付ける)しておきます。
  2. adduser clamav Debian-exim
  3. 更にセキュリティ的に iptables で port 3310 を外部に対し閉じておく 必要があるようです。Debian の場合,適当な /etc/init.d/iptables (サイト依存な 話なので省略します。インターネットで検索してください ^^;)を作成し update-rc.d します。
  4. そうして /etc/init.d/clamav-daemon restart します。
  5. 次に /etc/exim4/exim4.conf.template を以下のように修正して exim4 の設定を行ないます。
    --- misc/Exim4/exim4.conf.template.orig 2005-01-19 10:37:42.000000000 +0900
    +++ /etc/exim4/exim4.conf.template      2005-01-26 09:48:28.000000000 +0900
    @@ -80,6 +80,9 @@
     ### main/02_exim4-config_options
     #####################################################
    
    +av_scanner = clamd:127.0.0.1 3310
    +#av_scanner = clamd:/var/run/clamav/clamd.ctl
    +
     ### main/02_exim4-config_options
     #################################
    
    @@ -494,6 +497,23 @@
        #   !acl = acl_whitelist_local_deny
        #    !verify = header_sender
    
    +# Unpack MIME containers and reject file extensions
    +# used by worms. Note that the extension list may be
    +# incomplete.
    +deny  message = $found_extension files are not accepted here
    +      demime = com:vbs:bat:pif:scr
    +
    +# Reject messages that have serious MIME errors.
    +# This calls the demime condition again, but it
    +# will return cached results.
    +deny  message = Serious MIME defect detected ($demime_reason)
    +      demime = *
    +      condition = ${if >{$demime_errorlevel}{2}{1}{0}}
    +
    +# Reject messages containing malware.
    +deny message = This message contains malware ($malware_name)
    +     malware = *
    +
        # accept otherwise
        accept
     #####################################################
    上の設定の中で
    deny message = This message contains malware ($malware_name)
         malware = *
    が clamav を利用する設定らしいです。
  6. 上の修正の後 update-exim4.conf して /etc/init.d/exim4 restart で exim4 の再起動します。
バカをしてたらご教示ください。

Spam メール対策

これは exim4 で処理しないで,以前と同じく procmail で行なう設定のままで 運用しています。 Spam/Virus メール対策
Last modified: Tue Apr 3 22:53:26 JST 2007