amavisd+F-ProtでThe SIGN.DEF file is too old to be of use.
もう3年以上前にインストールした自宅メールサーバ環境ですが、数日前からmaillogに
Nov 1 04:02:28 loox amavis[7150]: (07150-03) (!!) FRISK F-Prot Antivirus av-scanner FAILED: /usr/local/bin/f-prot unexpected exit 1, output="The SIGN.DEF file is too old to be of use. It will probably only\ndetect a fraction of the viruses that exist today.\n\nPlease obtain and install an up-to-date version." at (eva l 45) line 462.
というログが出て、メールを正しく処理できなくなっていました。で、調べてみると、どうやらインストールしたバージョンがサポート対象外になった模様。まあ、3年も前だからなぁ。。。
ということで、F-Protを最新版にアップグレードしました。
F-Protのアップグレード
元々、rpm版のF-Protをインストールしていたので、設定ファイルをバックアップし、rpmを削除。代わりに、Home user trial downloads - F-PROT Antivirus Downloadsから最新版のF-Prot(Home user向け)のtgzをダウンロードし、インストール。
# service postfix stop # service amavisd stop # rpm -qa | grep fp # rpm -e fp-linux-ws # cp -p /etc/f-prot.conf ./ # \rm -r /usr/local/f-prot # wget http://files.f-prot.com/files/unix-trial/fp-Linux-i686-ws.tar.gz # tar zxf fp-Linux-i686-ws.tar.gz -C /usr/local/ # cd /usr/local/f-prot/ # ./install-f-prot.pl #
install-f-prot.plを実行するといくつか質問されますが、すべてリターンキー(デフォルト値)でインストール。
とりあえず、インストール後の軽い動作確認。インストールしてあったバージョン(F-Prot 4.6.6)では、f-plotコマンドがインストールされていたのですが、今回インストールしたバージョン6.2.1では、fpscanコマンドに変わっているようです。
# which fpscan /usr/local/bin/fpscan # fpscan --version F-PROT Antivirus version 6.2.1.4252 (built: 2008-04-28T16-44-10) FRISK Software International (C) Copyright 1989-2007 Engine version: 4.4.4.56 Virus signatures: 2009110115477306244b7aef4e3c862a82d00a1204f6 (/usr/local/f-prot/antivir.def) #
amavisd.confの編集
F-Protのコマンド名が変わったので、amavisd側の設定も若干変更しました。内容はhttp://56rian.dip.jp/Top/?%A4%DE%A4%A4%A4%C3%A4%BF!!%2Ff-protに掲載されたものをそのまま使わせてもらいました。
@av_scanners_backup = ( ['FRISK F-Prot Antivirus', 'fpscan', '--scanlevel=2 --archive=5 --verbose=1 {}', [0], qr/Found virus/, qr/\[Found virus\] \<(.+)\>/ ], );
パターン定義ファイルの更新
念のため実行。
# /usr/local/f-prot/fpupdate #
ちなみに、インストール時に/etc/crontabにエントリを追加するかどうか聞かれます。
動作テスト
ローカルからmailコマンドでメールを送信して、エラーが出なくなったことを確認。
まとめ
やっぱ、ちゃんと問題の原因を潰しとかないとダメですね。。。><
しばらく前 (気付いたのは 2009/01/07) からServer error on remote machine. Fatal error. Exiting...というエラーメッセージが入るようになり、「そのうち OK になるだろう」と楽観していたのですが、数週間経っても改善の兆しがありません。(2009/02/19 現在)