CentOS Stream 8
Sponsored Link

Mail サーバー : Postfix + Clamav + Amavisd2021/03/16

 
Postfix と Clamav を連携させて 送受信メールをリアルタイムスキャンできるように設定します。
[1]
[2] Amavisd および Clamav Server をインストールします。
# EPEL および PowerTools (デフォルト無効) からインストール

[root@mail ~]#
dnf --enablerepo=epel,powertools -y install amavisd-new clamd perl-Digest-SHA1 perl-IO-stringy
[root@mail ~]#
vi /etc/clamd.d/scan.conf
# 8行目 : コメントにする

#
Example
# 14行目 : コメント解除

LogFile /var/log/clamd.scan
# 77行目 : コメント解除

PidFile /var/run/clamd.scan/clamd.pid
# 81行目 : コメント解除

TemporaryDirectory /var/tmp
# 96行目 : コメント解除

LocalSocket /var/run/clamd.scan/clamd.sock
[root@mail ~]#
touch /var/log/clamd.scan

[root@mail ~]#
chown clamscan. /var/log/clamd.scan

[root@mail ~]#
systemctl enable --now clamd@scan

[3] SELinux を有効にしている場合は、Clamav Server を起動するためにポリシーの変更が必要です。
[root@mail ~]#
restorecon -v /var/log/clamd.scan

[root@mail ~]#
setsebool -P antivirus_can_scan_system on

[4] Amavisd を設定して起動します。
[root@mail ~]#
vi /etc/amavisd/amavisd.conf
# 23行目 : 自ドメイン名に変更

$mydomain = '
srv.world
';
# 158行目 : コメント解除して自ホスト名に変更

$myhostname = '
mail.srv.world
';
[root@mail ~]#
systemctl enable --now amavisd

[5] Postfix の設定です。
[root@mail ~]#
vi /etc/postfix/main.cf
# 最終行に追記

content_filter=smtp-amavis:[127.0.0.1]:10024
[root@mail ~]#
vi /etc/postfix/master.cf
# 最終行に追記

smtp-amavis unix -    -    n    -    2 smtp
    -o smtp_data_done_timeout=1200
    -o smtp_send_xforward_command=yes
    -o disable_dns_lookups=yes
127.0.0.1:10025 inet n    -    n    -    - smtpd
    -o content_filter=
    -o local_recipient_maps=
    -o relay_recipient_maps=
    -o smtpd_restriction_classes=
    -o smtpd_client_restrictions=
    -o smtpd_helo_restrictions=
    -o smtpd_sender_restrictions=
    -o smtpd_recipient_restrictions=permit_mynetworks,reject
    -o mynetworks=127.0.0.0/8
    -o strict_rfc821_envelopes=yes
    -o smtpd_error_sleep_time=0
    -o smtpd_soft_error_limit=1001
    -o smtpd_hard_error_limit=1000

[root@mail ~]#
systemctl restart postfix

[6] 以上で設定完了です。
送受信メールには [X-Virus-Scanned ***] とヘッダーが付加されます。もしウィルスが検知された場合は下例のログのように削除され、クライアントには配送されません。
Mar 16 02:21:40 mail postfix/pickup[10864]: 1600610339EA: uid=1000 from=<cent>
Mar 16 02:21:40 mail postfix/cleanup[11049]: 1600610339EA: message-id=<20210316082140.1600610339EA@mail.srv.world>
Mar 16 02:21:40 mail postfix/qmgr[10865]: 1600610339EA: from=<cent@srv.world>, size=544, nrcpt=1 (queue active)
Mar 16 02:21:40 mail clamd[7483]: /var/spool/amavisd/tmp/amavis-20210316T005725-07487-oc30rJKw/parts/p001: Win.Test.EICAR_HDB-1 FOUND
Mar 16 02:21:40 mail clamd[7483]: /var/spool/amavisd/tmp/amavis-20210316T005725-07487-oc30rJKw/parts/p003: Win.Test.EICAR_HDB-1 FOUND
Mar 16 02:21:40 mail amavis[7487]: (07487-03) Blocked INFECTED (Win.Test.EICAR_HDB-1) {DiscardedInbound,Quarantined}, [127.0.0.1] <cent@srv.world> -> <redhat@srv.world>, Message-ID: <20210316082140.1600610339EA@mail.srv.world>, mail_id: ysd0VMxHXIX9, Hits: -, size: 544, 21 ms
Mar 16 02:21:40 mail postfix/smtp[11051]: 1600610339EA: to=<redhat@srv.world>, orig_to=<cent@mail.virtual.host>, relay=127.0.0.1[127.0.0.1]:10024, delay=0.15, delays=0.1/0.02/0/0.02, dsn=2.7.0, status=sent (250 2.7.0 Ok, discarded, id=07487-03 - INFECTED: Win.Test.EICAR_HDB-1)
Mar 16 02:21:40 mail postfix/qmgr[10865]: 1600610339EA: removed
関連コンテンツ