2015年4月22日水曜日

DockerコンテナにClamSMTPを導入する。

Dockerコンテナにメールリレーサーバを導入するの続きです。

導入したメールリレーサーバにClamSMTPを導入して、メールのウイルスキャンを行います。

DockerコンテナにClamAVを導入します。
※CentOS7にClamAVをインストールする を参照してください。

下記URLからClamSMTPをダウンロードします。

http://thewalter.net/stef/software/clamsmtp/clamsmtp-1.10.tar.gz

ClamSMTPをインストールします。


tar vxf clamsmtp-1.10.tar.gz
cd clamsmtp-1.10
./configure && make && make install
cp doc/clamsmtpd.conf /usr/local/etc/clamsmtpd.conf
cp scripts/clamsmtpd.sh /etc/init.d/clamsmtpd.sh

/usr/local/etc/clamsmtpd.confファイルを修正します。(抜粋

vi /usr/local/etc/clamsmtpd.conf


Action: drop
ClamAddress: /usr/local/sbin/clamd
OutAddress: 10026
Listen: 0.0.0.0:10025
Header: X-Virus-Scanned: ClamAV using ClamSMTP

/etc/clamd.confファイルを修正します。(抜粋

vi /etc/clamd.conf


LocalSocket /usr/local/sbin/clamd


/etc/postfix/main.cf ファイルに追加します(抜粋

vi /etc/postfix/main.cf


content_filter = scan:127.0.0.1:10025


/etc/postfix/master.cf  ファイルに追加します(抜粋

vi /etc/postfix/master.cf


scan unix -       -       n       -       16       smtp
   -o smtp_data_done_timeout=1200
   -o smtp_send_xforward_command=yes
   -o disable_dns_lookups=yes
127.0.0.1:10026 inet n       -       n       -       16       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_style=host
   -o smtpd_authorized_xforward_hosts=127.0.0.0/8


各サービスを再起動します。


  service clamd stop
  service clamd start
  /etc/init.d/clamsmtpd.sh start
  service postfix restart


メールクライアントからリレーサーバ経由のメールを送信します。

テストウイルスを添付したメールを送付すると/var/log/maillogに以下のログが記録されます。

clamsmtpd: 100015: from=sample@smtp1.co.jp, to=sample2@smtp2.co.jp, status=VIRUS:Eicar-Test-Signature

0 件のコメント:

コメントを投稿