ウイルス&スパム対策(Amavisd-new + ClamAV/F-Prot + Spamassassin)


おやじのところでは、メールのウイルス対策として H+BEDV の AntiVir Mailgate for Linux を利用させてもらっていましたが、フリーでは利用はできなくなってしまいましたので何らかの対策が必要になりました。対策としては、以前、導入検討した FRISK の F-Prot Antivirus for Linux もホームユースなら無料で使用できるため、これを バーチャルドメイン環境に導入してみました。また、ウイルススキャナとしては ClamAV も使用できるので検証しました。Postfix との中継役としてはAmavisd-newを使用しましたので、Spamassassin も統合してスパム対策を行いました。
ここではバーチャルドメイン環境に導入することを前提に記述していますが、もちろん通常環境でも同じ設定で使用できます。(普通のユーザディレクトリに配送するなら Procmail で処理したほうが良いかもしれません。)
なお、Postfix は既にインストールされて動作しているものとします。
ここでの方法は、性能面では負荷がかかるとともに起こったことはないのですが、複雑なので事故が気になります。そのような方は、若干環境整備が大変ですが Maia Mailguard というWebベースの管理ツールがありますので、試してみると良いでしょう。こちらを使用すると、Procmailや下記のフィルタ関係の処理が不要になりすっきりする他、ユーザ毎のフィルタ管理がwebベースできるなど、かなり便利です。

■はじめに

バーチャルドメイン環境の場合、最終的なメールの配送は「virtual」配送エージェントで行うため、 Spamassassin がスパムとマークしたメールを procmail で振り分けることができません。(可能なのかもしれませんが、おやじはやり方がわかりません。) そこで、PostfixのフィルタのReadmeを参考にフィルタリングすることにしました。
バーチャルドメイン対応のPostfix + Amavisd-new + F-prot(Clamav) + Spamassassin 時のメール配送フローを整理してみました。



概略の動作は以下のとおりです。

  1. SMTP/SMTPSでメールを [smtpd] サーバで受信する。
  2. 受信したメールは [cleanup][qmgr] サーバ経由で配送されるが、main.cf の contents_filter で付与されたレコード( smtp-amavis:[127.0.0.1]:10024 ) により [smtp] サーバで Amavisd-new の10024ポートへ配送される。
  3. Amavisd-new が受信したメールは中継され、 F-prot でウイルス及び Spamassassin でスパムのスキャンニングを行う。 Spamassassin ではマーキングのみを行う。
  4. スキャニングを終了したメールは、localhostの10025番ポートで待ち受ける Postfix の [smtpd] に返送する。通常この後は、Spamassassin のスキャニング結果をProcmailでスパムの分離を行うが、 [virutual] 配送エージェント ではProcmailが使用できない(.正しくは、".forward" が使用できない)ので外部スクリプト( filter ) で調査しスパムを分離するため、contents_filter で配送条件を設定(メールにレコードを付加)する。
  5. 受信したメールは 2項と同様のルートである [cleanup][qmgr] サーバを経由して配送されてくるが、前項で付与したレコードにより filter スクリプトへ配送される。
  6. filter スクリプトではスパムメールか否か判断し、スパムなら配送先をスパム受信用ユーザに変更し [sendmail] 互換コマンドでpostfixに戻し、[virutual] 配送エージェントや [smtp] クライアントでバーチャルユーザや他のSMTPサーバに配送する。
  7. [sndmail] 互換コマンドで受信したメールは [pickup] サーバ経由で配送されるため、デフォルトのままでは main.cf で設定したcontent_filterの設定が付与されて再度Amavis-newに流れてループしてしまうので、master.cf で [pickup] サーバからはcontent_filter を付与しないように設定する。
    実害はないと思うが、これによりCGI等で送信したsendmailコマンド経由のメールやローカルでデーモンが吐いたメール([pickup] サーバが拾う)は、ウイルス及びスパムのスキャンが行われないので注意が必要である。(可能性としては、ファイアル添付できる掲示板のようなのもので、投稿内容をメールで配送するようなものだと可能性がある?)。

■ウイルススキャナ のインストール

おやじがテストした無料で使えるウイルススキャンエンジンとしては、SuSE にRPMがある ClamAV と ホームユースなら無料で使用できる、FRISK の F-Prot Antivirus for Linux を紹介しておきます。ClamAVはフリーのソフトで最近多くの自宅サーバ環境で使われており、デーモンモードで動かすことができるので高速にスキャンができそうです。それに対して、F-Prot Antivirus for Linux はデーモンモードでは動かせませんが、商用ソフトということで安心感があるかと思います。どちらを使用するかは、いろいろ調べて各自で判断してください。インストールするのはいずれか一方にしてください。

◆ClamAV のインストール

SuSEにはRPMが用意されているので、YaSTでインストールするだけです。但し、初期バージョンは古くなっているので、インストール後にすぐにオンラインアップデートを行ってから設定作業をしてください。
  1. YaST コントロールセンタを起動し、「ソフトウェア」の「ソフトウェアのインストール/削除」を起動する。

  2. 「フィルタ」 を 「検索」 とし検索欄に 「clamav」 と入力し 「検索」 ボタンを押す。

  3. 右側に該当するパッケージが出てくるので、「clamav」 と 「clamav-db」 にチェックマークを入れて 「了解」 を押しておしまい。
    ここで、オンラインアップデートをしておくこと。

  4. ウイルス定義ファイルの自動アップデートの設定をする。アップデートのログを採取する場合は、予め下記によりログファイルを作成しておき、パーミションとオーナをfreshcram(ClamAV)から書き込めるようにしておく。オーナはAmavid-newと同じ "vscan" としておくこと。

    # touch /var/log/freshclam.log
    # chmod 600 /var/log/freshclam.log
    # chown vscan /var/log/freshclam.log


    準備ができたら、/etc/crontab に下記を追加し自動アップデートするようにする。下記は毎日4:03に更新する例である。

    03 04 * * * vscan /usr/bin/freshclam --quiet --daemon-notify --log=/var/log/freshclam.log


    1. --quiet
      エラーメッセージ以外は出力しない。

    2. --daemon-notify
      ClamAVをデーモンモードで動かしたとき、新しいウイルス定義ファイルを有効にするためclamd をreloadする。

    3. --log=/var/log/freshclam.log
      ログファイルを指定。

  5. 続けてClamAVをデーモンモードで起動するようにする。デーモンモードで動かす時、プロセス間通信として3310/TCP(デフォルト)ポートを使ったTCPソケットで行う方法と、ソケットファイルを介して通信する方法があるが、Amavisd-new側がソケットファイル通信になっているので設定を変更する必要がある。
    設定は/etc/clamd.conf で行うが、TCPソケット関係のパラメータをコメントアウトしLocalsocket を有効にする。 (赤字:追加、青字:変更)

    # Path to a local socket file the daemon will listen on.
    # Default: disabled
    LocalSocket /var/lib/clamav/clamd-socket <- アンコメント(行頭の#を削除)

    # Remove stale socket after unclean shutdown.
    # Default: disabled
    FixStaleSocket

    # TCP port address.
    # Default: disabled
    #TCPSocket 3310

    # TCP address.
    # By default we bind to INADDR_ANY, probably not wise.
    # Enable the following to provide some degree of protection
    # from the outside world.
    # Default: disabled
    #TCPAddr 127.0.0.1


  6. このままではClamAVが起動しないので、以下で起動およびシステム起動時に自動起動するようにしておく。

    # insserv clamd
    # chkconfig --list clamd
    clamd                      0:off  1:off  2:off  3:on   4:off  5:on   6:off
    # /etc/init.d/clamd start


  7. ウイルス定義ファイルをここで最新にしておく。

    # freshclam
    Downloading main.cvd [*]
    main.cvd updated (version: 35, sigs: 41649, f-level: 6, builder: tkojm)
    Downloading daily.cvd [*]
    daily.cvd updated (version: 1234, sigs: 455, f-level: 6, builder: diego)
    Database updated (42104 signatures) from database.clamav.net (IP: 59.87.0.36)


◆F-Prot Antivirus for Linux のインストール

こちらはホームユースなら無料で使用できる、FRISK の F-Prot Antivirus for Linux というウイルススキャンエンジンです。ダウンロードのページで必要事項を記入して登録すればダウンロードできます。
  1. F-Prot Antivirus for Linux をダウンロードしてインストールし、ウイルス定義ファイルをアップデートしておく。

    # rpm -Uhv fp-linux-ws.rpm
    # /usr/local/f-prot/tools/check-updates.pl


  2. ウイルス定義ファイルの自動アップデートの設定をする。/etc/crontab に下記を追加する。下記は毎日4:03に更新する例である。更新時にroot宛てにメッセージがくるのがうるさいなら、最後に「-quiet」を付与すればよい。動いている証でもあるので、メールは受けたほうが安心?(結構な頻度で更新されており、多いときには日に2〜3度)

    03 04 * * * root /usr/local/f-prot/tools/check-updates.pl -cron (-quiet)


  3. Amavisd-new の設定を /etc/amavisd.conf で行う。 

    1. 自ドメインの変更

      $mydomain = 'aconus.com';   # 'example.com'から変更

    2. コマンドラインモードへの変更

      F-Protは、サーバ用とフリーで使える一般用がある。サーバ用はデーモンモードで動作するが一般用はコマンドラインモードでしか動作できないため、デフォルトのまま動作させると以下のようなエラーがでる。

      Dec 2 20:21:47 server amavis[5869]: (05869-01) FRISK F-Prot Daemon: Can't connect to INET socket 127.0.0.1:10201: Connection refused, retrying (2)
      Dec 2 20:21:47 server amavis[5869]: (05869-01) FRISK F-Prot Daemon: Can't connect to INET socket 127.0.0.1:10202: Connection refused, retrying (3)
      Dec 2 20:21:47 server amavis[5869]: (05869-01) FRISK F-Prot Daemon: Can't connect to INET socket 127.0.0.1:10203: Connection refused, retrying (4)
      Dec 2 20:21:47 server amavis[5869]: (05869-01) FRISK F-Prot Daemon: Can't connect to INET socket 127.0.0.1:10204: Connection refused, retrying (5)
      Dec 2 20:21:48 server amavis[5869]: (05869-01) FRISK F-Prot Daemon: Can't connect to INET socket 127.0.0.1:10200: Connection refused, retrying (6)
      Dec 2 20:21:48 server amavis[5869]: (05869-01) FRISK F-Prot Daemon: Can't connect to INET socket 127.0.0.1:10201: Connection refused, retrying (7)
      Dec 2 20:21:48 server amavis[5869]: (05869-01) FRISK F-Prot Daemon: Can't connect to INET socket 127.0.0.1:10202: Connection refused, retrying (8)
      Dec 2 20:21:48 server amavis[5869]: (05869-01) FRISK F-Prot Daemon: Can't connect to INET socket 127.0.0.1:10203: Connection refused, retrying (9)
      Dec 2 20:21:48 server amavis[5869]: (05869-01) FRISK F-Prot Daemon: Can't connect to INET socket 127.0.0.1:10204: Connection refused, retrying (10)
      Dec 2 20:21:54 server amavis[5869]: (05869-01) FRISK F-Prot Daemon av-scanner FAILED: Too many retries to talk to 127.0.0.1:10200 (Can't connect to INET socket 127.0.0.1:10200: Connection refused) at (eval 58) line 257.
      Dec 2 20:21:54 server amavis[5869]: (05869-01) WARN: all primary virus scanners failed, considering backups


      これは、Amavisd-newのデフォルトのamavisd.cinfでは、F-Protはprimaryスキャナとしてデーモンモードで設定されており、secondaryスキャナとしてコマンドラインモードで設定されているため、一般用のコマンドラインモードのスキャナにデーモンモードでつなぎに行こうとするので、上記のエラーが出る。 対策としては、以下の2点を変更すればよい。

      • amavisd.confのprimaryスキャナセクションにあるF-Protのデーモンモード用の設定をコメントアウトする。

      • amavisd.confのsecondaryスキャナセクションにあるF-Protのコマンドライン用の設定をprimaryスキャナセクションにコピーし、元のsecondaryスキャナセクションにあるF-Protのコマンドライン用の設定をコメントアウトする。
        これは、1項だけでも動くが、スキャンする毎にprimaryスキャナがないというエラーが出るための対策。

      両方の対策を実施した結果を下記に示す。

      @av_scanners = (

        (snip)

      # このブロックをコメントアウト
      ### http://www.f-prot.com/
      #['FRISK F-Prot Daemon',
      #  \&ask_daemon,
      #  ["GET {}/*?-dumb%20-archive%20-packed HTTP/1.0\r\n\r\n",
      #    ['127.0.0.1:10200','127.0.0.1:10201','127.0.0.1:10202',
      #     '127.0.0.1:10203','127.0.0.1:10204'] ],
      #  qr/(?i)<summary[^>]*>clean<\/summary>/,
      #  qr/(?i)<summary[^>]*>infected<\/summary>/,
      #  qr/(?i)<name>(.+)<\/name>/ ],

      # このブロックは下記からコピー
      ### http://www.f-prot.com/
      ['FRISK F-Prot Antivirus', ['f-prot','f-prot.sh'],
        '-dumb -archive -packed {}', [0,8], [3,6],
        qr/Infection: (.+)|\s+contains\s+(.+)$/ ],

        (snip)

      );

      @av_scanners_backup = (

        (snip)

      # このブロックをコメントアウト
      ### http://www.f-prot.com/   - backs up F-Prot Daemon
      #['FRISK F-Prot Antivirus', ['f-prot','f-prot.sh'],
      #  '-dumb -archive -packed {}', [0,8], [3,6],
      #  qr/Infection: (.+)|\s+contains\s+(.+)$/ ],

      (snip)

      );


■Spamassassin のインストール

事前準備として、Spamassassinのインストールとフィルタ専用のユーザおよび作業ディレクトリを作成しておきます。その後に、YaSTで perl-spamassassin とspamassassin をインストールします。

◆事前準備

  1. まずは、フィルタ専用のユーザおよび作業ディレクトリを作成する。

    # mkdir /home/filter
    # groupadd -g 10001 filter
    # useradd -g filter -u 10001 -d /home/filter -s /bin/false filter
    # chown filter:filter /home/filter
    # mkdir /var/spool/filter
    # chown filter:filter /var/spool/filter
    # chmod 700 /var/spool/filter


  2. YaST コントロールセンタを起動し、「ソフトウェア」の「ソフトウェアのインストール/削除」を起動する。

  3. 「フィルタ」 を 「検索」 とし検索欄に 「spamassassin」 と入力し 「検索」 ボタンを押す。

  4. 右側に該当するパッケージが出てくるので、perl-spamassassin とspamassassinにチェックマークを入れて 「了解」 を押しておしまい。

  5. SuSEのデフォルトのRPMから、即ち2.6系からアップデートした場合、3.0系では -a オプションがなくなった関係で設定変更しないと起動エラーになります。本設定変更はYaSTで行います。(新規の場合は本作業は不要)

    ・YaST コントロールセンタを起動し、「システム」の「/etc/sysconfig エディター」を起動する。
    ・「設定のオプション」 で 「Network」 -> 「Mail」 -> 「Spamassassin」 -> 「SPAMD_ARGS」と開き、「設定」欄でパラメータから「-a」を削除(「-d -c -L」を残す)し、 「完了」 ボタンを押す。

  6. ここでspamdを起動しておきます。

    # insserv spamd
    # chkconfig --list spamd
    spamd                      0:off  1:off  2:off  3:on   4:off  5:on   6:off
    # /etc/init.d/spamd start


◆フィルタスクリプトの作成

フィルタのReadmeを参考に、以下のようなフィルタスクリプトを /usr/local/bin/spam-filter として作成しました。処理としては、受け取ったメールのSpamassassin が付与したSpam-StatusがYesになっている場合はspam専用ユーザ(spam@mail.aconus.com)に配送するようにしました。誤配送があるので、いきなり捨てることはしていません。

# vi /usr/local/bin/spam-filter
[i]で以下を挿入。

#!/bin/sh

# Simple shell-based filter. It is meant to be invoked as follows:
# /path/to/script -f sender recipients...

# Localize these.
INSPECT_DIR=/var/spool/filter
SENDMAIL="/usr/sbin/sendmail -i"
SPAMASSASSIN=/usr/bin/spamc

# Exit codes from <sysexits.h>
EX_TEMPFAIL=75
EX_UNAVAILABLE=69

# Clean up when done or when aborting.
trap "rm -f in.$$" 0 1 2 3 15

# Start processing.
cd $INSPECT_DIR || {
   echo $INSPECT_DIR does not exist; exit $EX_TEMPFAIL; }

cat > in.$$
grep -e "^X-Spam-Status:.Yes" in.$$ \
   && $SENDMAIL "
spam@mail.aconus.com" < in.$$ \
   || $SENDMAIL "$@" < in.$$

exit $?

[Esc]、[:]、[w]、[q]で保存。

# chmod 700 /usr/local/bin/spam-filter
# chown filter:filter /usr/local/bin/spam-filter


■Amavisd-new のインストールと設定

SuSE の場合、Amavisd-new はRPM があるので YaST でインストールするだけです。
  1. YaST コントロールセンタを起動し、「ソフトウェア」の「ソフトウェアのインストール/削除」を起動する。

  2. 「フィルタ」 を 「検索」 とし検索欄に 「amavisd-new」 と入力し 「検索」 ボタンを押す。

  3. 右側に該当するパッケージが出てくるので、その中の赤字のものとYaST関係にチェックマークを入れて 「了解」 を押しておしまい。なお、関連モジュールが山ほどインストールされる。

  4. 続けて、「システム」の「/etc/sysconfigエディター」を起動する。「Network」->「Mail」->「Amavis」と開き、「USE_AMAVIS」を選択し、右側で設定が「yes」になっていることを確認(「no」なら「yes」に変更)し、「完了」をクリックする。

  5. Amavisd-new の /etc/amavisd.conf の設定を行う。

    [ClamAV/F-Prot共通]
    F-Protはデーモン起動ではなくAmavisd-newから単なるスキャナとして扱われ、デフォルトで検出されるので起動設定は不要である。

    $mydomain = 'mail.aconus.com';   # 'example.com'からメールドメインに変更

      (snip)

    #$sa_spam_subject_tag = '***SPAM*** '; ← 行頭に#を追加してコメントアウト
    (デフォルトではスパムメールの件名に頭に'***SPAM*** 'という文字が入るが、誤判定したメールのham学習に支障を来たすので入れないようにする。)


    [ClamAVのみ]
    ClamAVはデーモン起動なので、上記の他に下記の4行の行頭の#を削除(緑字:削除)し有効にする。なお、H+BEDV AntiVirをアンインストールしていないとスキャナとして検出してしまうのでアンインストールするか、下記のようにコメントアウト(赤字:追加)しておくこと。

    # ### http://www.clamav.net/
    # ['ClamAV-clamd',
    #   \&ask_daemon, ["CONTSCAN {}\n", "/var/lib/clamav/clamd-socket"],
    #   qr/\bOK$/, qr/\bFOUND$/,
    #   qr/^.*?: (?!Infected Archive)(.*) FOUND$/ ],
    # # NOTE: the easiest is to run clamd under the same user as amavisd; match the
    # # socket name (LocalSocket) in clamav.conf to the socket name in this entry
    # # When running chrooted one may prefer: ["CONTSCAN {}\n","$MYHOME/clamd"],

      (snip)

    ### http://www.hbedv.com/ or http://www.centralcommand.com/
    # ['H+BEDV AntiVir or CentralCommand Vexira Antivirus',
    #   ['antivir','vexira'],
    #   '--allfiles -noboot -nombr -rs -s -z {}', [0], qr/ALERT:|VIRUS:/,
    #   qr/(?x)^\s* (?: ALERT: \s* (?: \[ | [^']* ' ) |
    #   (?i) VIRUS:\ .*?\ virus\ '?) ( [^\]\s']+ )/ ],
       # NOTE: if you only have a demo version, remove -z and add 214, as in:
       # '--allfiles -noboot -nombr -rs -s {}', [0,214], qr/ALERT:|VIRUS:/,
       # According to the documentations, the new version of Vexira has
       # reasonable defaults, one may consider: "--timeout=60 --temp=$TEMPBASE {}"

  6. このままではAmavisd-newが起動しないので、以下で起動およびシステム起動時に自動起動するようにしておく。

    # insserv amavis
    # chkconfig --list amavis
    amavis                    0:off  1:off  2:off  3:on   4:off  5:on   6:off
    # /etc/init.d/amavis start


■Postfix の設定

 
最後にPostfix関係の設定を行います。

  1. Postfix の /etc/postfix/main.cf に [smtpd] サーバで受信したメールをAmavisd-new 10024番ポートにfowarding する設定を追加する。

    # postconf -e 'content_filter=smtp-amavis:[127.0.0.1]:10024'
    # postconf -e 'max_use=10'


  2. Postfix の /etc/postfix/master.cf に下記を追加する。なお、実際の設定時は、smtp-amavis と127.0.0.1:10025 の行頭に空白を入れないことと、オプション行の先頭と行内のパラメータの区切りは「Tab」を使用すること。空白ではエラーとなることがあるので注意が必要である。(赤字:追加、青字:変更)

    # ==========================================================================
    # service type  private unpriv  chroot  wakeup  maxproc command + args
    #               (yes)   (yes)   (yes)   (never) (100)
    # ==========================================================================
    smtp      inet  n       -       n       -       -       smtpd
    smtps     inet  n       -       n       -       -       smtpd
        -o smtpd_tls_wrappermode=yes -o smtpd_sasl_auth_enable=yes

    pickup    fifo  n       -       n       60      1       pickup
        -o content_filter=
    filter    unix  -       n       n       -       10      pipe
        flags=Rq user=filter argv=/usr/local/bin/spam-filter -f ${sender} -- ${recipient}
    smtp-amavis unix -      -       n       -       2       smtp
        -o smtp_data_done_timeout=1200
        -o smtp_send_xforward_command=yes
        -o disable_dns_lookups=yes
        -o max_use=20
    127.0.0.1:10025 inet n  -       n       -       -       smtpd
      
    -o content_filter=filter:dummy
        -o local_recipient_maps=
        -o relay_recipient_maps=
        -o smtpd_restriction_classes=
        -o smtpd_delay_reject=no
        -o smtpd_client_restrictions=permit_mynetworks,reject
        -o smtpd_helo_restrictions=
        -o smtpd_sender_restrictions=
        -o smtpd_recipient_restrictions=permit_mynetworks,reject
        -o smtpd_data_restrictions=reject_unauth_pipelining
        -o smtpd_end_of_data_restrictions=
        -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
        -o smtpd_client_connection_count_limit=0
        -o smtpd_client_connection_rate_limit=0
        -o receive_override_options=no_address_mappings,no_header_body_checks,no_unknown_recipient_checks


    [pickup]
    1. main.cf で設定した contemt_filter は [pickup] サービスでも適用されるため、デフォルトのままでは filter と Postfix 間でループが発生してしまう。そのため、[pickup] で受けたメールの contemt_filterを 上書きして無効にし最終的な配送にまわすため、「content_filter=」を追加する。これを忘れるとメールがループするので注意。

    [filter]
    1. filter は、フィルタのReadmeを参考に設定する。

    [smtp-amavis]
    1. smtp-amavis は、Amavisd-newのREADME.postfxを参考に設定する。

    [[127.0.0.1:10025]
    1. ここも、Amavisd-newのREADME.postfxを参考に設定する。

    2. 但し、「-o content_filter=filter:dummy」 はmain.cf の設定を上書きし、Amavisd-newからのメールをコンテンツフィルタ( filter スクリプト )に配送するための設定。この設定を忘れると、メールがPostfix <-> Amavisd-newでループするので要注意。

    3. PostfixAdminの転送機能を利用していると、README.postfxの設定では転送先に2通同じメールが配送されてしまう。その対策として、上記のように receive_override_options に 「 no_address_mappings 」を追加する。
      なお、上記では転送元にも配送されるが、転送先にだけに配送すればよい場合は、main.cf に「 receive_override_options = no_address_mappings 」を追記すればよい。


  3. ウイルス/SPAM検出時のメール通知ユーザを追加するが、バーチャルドメインの場合は、Postfix Admin で alias(別名)を追加する。通常は、aliases(/etc/aliases) にウイルス/SPAM検出時のメール通知ユーザを追加する。設定後、newaliases すること。

    # vi /etc/aliases

    virusalert: root
    spamalert: root

    [Esc],[:],[w],[q]で保存。

    # newaliases


    ■動作の確認

    まずは、Amavisd-new と Postfix を再起動します。netstat で 10024(Amavisd-new)、 10025(Postfix)があるか確認しておきましょう。


    # /etc/init.d/amavisd start
    # /etc/init.d/postfix restart
    # netstat -an --tcp
    Active Internet connections (servers and established)
    Proto Recv-Q Send-Q Local Address    Foreign Address State

        (snip)

    tcp        0      0 127.0.0.1:10024  0.0.0.0:*       LISTEN
    tcp        0      0 127.0.0.1:10025  0.0.0.0:*       LISTEN

        (snip)

    tcp        0      0 0.0.0.0:465      0.0.0.0:*       LISTEN
    tcp        0      0 0.0.0.0:25       0.0.0.0:*       LISTEN


    正常な動作が確認できたら、テスト用のウイルスをeicarのWebサイトからダウンロードして、ウイルスが検出できるのか確認しましょう。4種類のテストウイルスがあるので、全てテストしてみましょう。うまく検出されれば、管理者宛及び送信者宛にウイルスアラートのメールが送信されるはずです。


    Top Pageへ