ウイルス対策 · 2 min read · Nov 27, 2025
Postfix設定を使用してウイルスに対抗する方法
Postfix設定を使用してウイルスに対抗する方法
このガイドでは、Postfix(+Auth SMTP + Quota)のためのHowtoForgeメールガイドを調整して、より良いウイルス保護を提供する方法を学びます。残念ながら、これは後で見るように、常に代償が伴います….
FalkoのHowtoForgeガイドは、デフォルトのPostfixインストールの素晴らしいスタート地点ですが、ビジネスグレードのアンチウイルスを達成したい場合は、最新のスクリプトキディの発明が通過する可能性を減らすために、いくつかの小さなことを行う必要があります。
Postfixガイドでは、AmavisとClamAVがDebianの安定版からインストールされます。Debian Sargeはあまりにも古すぎます。新しいAmavis-new 2.4.2を試したところ、/etc/amavis/amavisd.confが完全に置き換えられているため、Amavis-newはそのままにしておき、Debian Sargeの安定版からそのまま使用します。しかし、ClamAVは少し古くなっているので、テスト版から新しいコピーを取得します。
/etc/apt/sources.listを編集し、Debianのソースをテストに変更します:
vi /etc/apt/sources.listdeb ftp://ftp.uk.debian.org/debian/ testing mainapt-get updateapt-get install clamav clamav-daemonその後、Debianのソースを安定版に戻すのを忘れないでください:
/etc/apt/sources.listを編集します:
vi /etc/apt/sources.listdeb ftp://ftp.uk.debian.org/debian/ stable mainapt-get updateこれにより、Clamavエンジンが0.88に更新され、より良いウイルス検出が提供されるはずです。DebianのVolatileブランチを使用してClamavを最新リリースにすることも可能ですが、いくつかの悪い経験があるので、慎重に行動する方が良いです。
次に、PostfixがメールをAmavisに渡した後にAmavisが呼び出すウイルススキャナーを増やしたいと思います。このガイドでは、2つのスキャナーを構成する方法を見ていきます。
F-Prot - プライベート使用に無料で、便利なDebianインストーラーが付属しています。
cd /usr/srcwget http://http.us.debian.org/debian/pool/contrib/f/f-prot-installer/f-prot-installer_0.5.22_i386.debapt-get install libwww-perl liburi-perl libhtml-parser-perl libhtml-tree-perl libhtml-tagset-perldpkg i f-prot-installer_0.5.22_i386.deb画面上のインストーラーに従って、最新のF-Protディストリビューションをダウンロードします。
ClamavがFreshclamを使用するのとは異なり、F-Protは自動更新プログラムを使用しないため、Debianのcronを介してアップデータプログラムを有効にする必要があります。
/etc/cron.d/f-prot-installerを編集し、ウイルスとプログラムの更新のための2つのcronジョブ行のコメントを外します:
vi /etc/cron.d/f-prot-installer27 4,16 * * * root if [ -x /usr/lib/f-prot/tools/check-updates ]; then /usr/lib/f-prot/tools/check-updates -cron; fi
#
# プログラムの新しいバージョンを週に1回チェックするにはコメントを外します
#
00 12 * * 1 root if [ -x /usr/sbin/update-f-prot ]; then /usr/sbin/update-f-prot -i; fi 最後に、Amavisの設定でF-Protを有効にするために、/etc/amavis/amavisd.confを編集し、@av_scannersを検索します。この配列に新しいスキャナーを追加する必要があるので、編集後は次のようになります:
vi /etc/amavis/amavisd.conf@av_scanners = (
### http://www.clamav.net/
['Clam Antivirus-clamd',
\&ask_daemon, ["CONTSCAN {}
", "/var/run/clamav/clamd.ctl"],
qr/\bOK$/, qr/\bFOUND$/,
qr/^.*?: (?!Infected Archive)(.*) FOUND$/ ],
# NOTE: clamdをamavisdと同じユーザーで実行します; clamav.confのソケット名(LocalSocket)をこのエントリのソケット名と一致させます
# チャroot環境で実行する場合は、次のようにすることをお勧めします: ["CONTSCAN {}
","$MYHOME/clamd"],
### F-Prot http://www.f-prot.com
['FRISK F-Prot Antivirus', ['f-prot','/usr/lib/f-prot/f-prot.sh'],
'-dumb -archive -packed {}', [0,8], [3,6],
qr/Infection: (.+)|\s+contains\s+(.+)$/ ],
);最後に、変更を有効にするためにAmavisを再起動します:
/etc/init.d/amavis restart 次に、McAfee UVScanを有効にします - 残念ながら、これは一般目的には無料ではなく、評価期間を超えて使用するにはライセンスを購入する必要があります。
cd /usr/srcwget http://download.nai.com/products/evaluation/virusscan/english/cmdline/linux/v5.10/vlp4510e.tar.Ztar zxvf vlp4510e.tar.Z./install-uvscanインストール手順の最後に長いファイルシステムスキャンを避ける以外は、すべてのデフォルトを受け入れます。この時点でライセンスがある場合は、通常は/usr/local/uvscanの下にインストールされるプログラムディレクトリにそれを入れることができます。
次に、NAIアップデーターをhttp://www.brijn.nu/Programming/から取得します(McAfeeは配布する気がないようです)
cd /usr/srcwget http://www.brijn.nu/Programming/nai/naiupdt-0.5.tar.gztar zxvf naiupdt-0.5.tar.gz./naiupdt.pl次に、アップデーターをシステムcronに配置して、少なくとも1日1回実行されるようにします。/etc/crontabを編集します:
vi /etc/crontab15 8,15 * * * root /usr/src/naiupdt-0.5/naiupdt.pl >> /dev/null次に、Amavisの設定を編集し、UVScanを追加します。再度@av_scannersを見つけて、ファイル内の配列を変更して、すべての3つのAVスキャナーに対して次のようにします:
@av_scanners = (
### http://www.clamav.net/
['Clam Antivirus-clamd',
\&ask_daemon, ["CONTSCAN {}
", "/var/run/clamav/clamd.ctl"],
qr/\bOK$/, qr/\bFOUND$/,
qr/^.*?: (?!Infected Archive)(.*) FOUND$/ ],
# NOTE: clamdをamavisdと同じユーザーで実行します; clamav.confのソケット名(LocalSocket)をこのエントリのソケット名と一致させます
# チャroot環境で実行する場合は、次のようにすることをお勧めします: ["CONTSCAN {}
","$MYHOME/clamd"],
### http://www.nai.com/
['NAI McAfee AntiVirus (uvscan)', '/usr/local/uvscan/uvscan',
'--secure -rv --mime --summary --noboot - {}', [0], [13],
qr/(?x) Found (?:
\ the\ (.+)\ (?:virus|trojan) |
\ (?:virus|trojan)\ or\ variant\ ([^ ]+) |
:\ (.+)\ NOT\ a\ virus)/,
],
### F-Prot http://www.f-prot.com
['FRISK F-Prot Antivirus', ['f-prot','/usr/lib/f-prot/f-prot.sh'],
'-dumb -archive -packed {}', [0,8], [3,6],
qr/Infection: (.+)|\s+contains\s+(.+)$/ ],
);変更を有効にするためにAmavisを再起動します:
/etc/init.d/amavis restart最後に、システムを通じてメールを送信して、すべてが正常に動作しているか確認し、Amavisログを確認します。Amavis設定でロギングを有効にしていない場合は、必ず有効にしてください。次のようなものが表示されるはずです:
Sep 7 23:29:57 domain.net amavisd-new[11023]: (11023-08) TIMING [total 617 ms] - SMTP EHLO: 1 (0%), SMTP pre-MAIL: 0 (0%), SMTP pre-DATA-flush: 1 (0%), SMTP DA
TA: 39 (6%), body hash: 0 (0%), lookup_sql: 1 (0%), mime_decode: 8 (1%), get-file-type: 8 (1%), get-file-type: 7 (1%), decompose_part: 1 (0%), decompose_part: 0 (0%),
parts: 0 (0%), AV-scan-1: 4 (1%), AV-scan-2: 323 (52%), AV-scan-3: 171 (28%), fwd-connect: 4 (1%), fwd-mail-from: 0 (0%), fwd-rcpt-to: 2 (0%), write-header: 2 (0%), fw
d-data: 0 (0%), fwd-data-end: 41 (7%), fwd-rundown: 1 (0%), unlink-2-files: 2 (0%), rundown: 0 (0%)3つのAVスキャンが行われていることに気付くでしょう。それぞれのプロセスにかかった時間の概算パーセンテージが表示されます。私のテストでは、Clam(AV-scan-1)が最も速く、次にF-Prot(AV-scan-3)、UVScan(AV-scan-2)が3位に続きます。明らかに、インストールされたスキャナーが多すぎてメール設定が影響を受けている場合は、amavis設定ファイルでそれらを無効にするだけです。
新しい投稿を受信箱で受け取る
スパムはありません。いつでも購読を解除できます。