アンチウイルスゲート(AntiVir Mailgate)の導入(SuSE編)


長年愛用してきたH+BEDVのAntiVir Mailgate UNIXですが、2005年末あたりから無料での利用ができなくなってしまいました。無料で行くなら、今後はAmavisd-new+Clamav/F-Protあたりでの対応が必要です。

SuSE でも RedHat でも愛用していた H+BEDV の AntiVir UNIX MailGate でウイルス対策を行いました。各クライアントでウイルス対策とあわせて、サーバでも対策をして異なるスキャナで二重にガードしています。
H+BEDV の AntiVir UNIX MailGate は、個人利用に限りメールで登録すれば無料で使えるサーバ側のウイルス対策ソフトで、特に Postfix との相性(インストールのしやすさやSMTP AUTH や TLS 等の機能)は非常に良いので、是非導入されることを薦めます。パターンファイルの更新も非常に早いですし、スキャナを含めた自動更新も可能です。
なお、AntiVir UNIX MailGate は、メールのウイルスチェックだけでなくシステムのチェックもできます。

■AntiVir UNIX MailGate のダウンロードとインストール

AntiVir UNIX MailGate の最新版を H+BEDV のサイトからダウンロードします。
ダウンロードと同時に、こちらでユーザ登録しておきましょう。しばらくすると、登録したメールアドレスにライセンスキーが届きますのでメールアドレスは正確に登録しましょう。
任意の場所にダウンロードし、そのディレクトリで解凍すると必要なファイルができるので、install スクリプトでインストールします。
インストール時に、いろいろ聞かれますが一部を除いて全てデフォルト(Enterキーを押す)で答えて問題ありません。
# cd /usr/local/src
# wget http://dl.antivir.de/down/unix/packages/antivir-mailgate-prof-2.0.2-15.tar.gz
# tar zxfv antivir-mailgate-prof-2.0.2-15.tar.gz
# cd antivir-mailgate-prof-2.0.2-15
# ./install

Starting AntiVir MailGate 2.0.2-15 installation...

Before installing this software, you must agree to the terms
of the license. Press <ENTER> to view the license.

[Enter]

# ライセンスの説明がズラズラと出てくるので、フリーで使えることに感謝して [Space]を押し続ける。

   (snip)

# 最後まできたら [:]、[q] でライセンスの説明から抜ける。(これがわかりづらい)
[:]、[q]を押す。

# ライセンスに同意するか聞いてくるので、[y]と入力。
Do you agree to the license terms? [n] y[Enter]

# ここでスキャンエンジンのインストールを行う。
1) installing AntiVir Engine
creating /usr/lib/AntiVir ... done
checking for existing /etc/antivir.conf ... not found
copying bin/antivir to /usr/lib/AntiVir/ ... done
copying vdf/antivir.vdf to /usr/lib/AntiVir/ ... done
copying etc/antivir.conf to /etc/ ... done

# ライセンスファイルのパスを聞いてくるので、そのまま[Enter]。
Enter the path to your key file: [] [Enter]
no key file will be installed
copying script/configantivir to /usr/lib/AntiVir/ ... done
linking /usr/bin/antivir to /usr/lib/AntiVir/antivir ... done
installation of AntiVir Engine complete

# ここでスキャンエンジンとウイルス定義ファイルの自動アップデートに関する設定を行う。
2) installing automatic internet updater
An automatic internet updater is available with version 2.0.2-15 of
AntiVir MailGate. This is a daemon that will run in the background
and automatically check for updates (internet access is required).
You may also manually check for updates using:

     antivir --update

You do not need to install the automatic internet updater in order
to manually check for updates. Please read the README file for more
information on updates and how they can best suit you.

# 自動アップデートするか聞いてくるので、[y]と入力。デフォルトは手動だが今回は任せることに。
Would you like to install the automatic internet updater? [n] y[Enter]
copying script/avupdater to /usr/lib/AntiVir/ ... done

# コマンドで自動アップデートするためのリンクを作成するか聞いてくるので、[y]と入力。
Would you like to create a link in /usr/sbin for avupdater ? [y] y[Enter]
linking /usr/sbin/avupdater to /usr/lib/AntiVir/avupdater ... done

# システム起動時に自動アップデートを起動するか聞いてくるので、[y]と入力。
Would you like the internet updater to start automatically? [y] y[Enter]
setting up startup script ... done
installation of automatic internet updater complete

# ここでメインプログラムのインストールを行う。
3) installing main program
copying doc/avmailgate_de.pdf to /usr/lib/AntiVir/ ... done
copying bin/avgated to /usr/lib/AntiVir/ ... done
copying bin/avgatefwd to /usr/lib/AntiVir/ ... done
copying script/avq to /usr/lib/AntiVir/ ... done
copying script/rc.avgate.SuSE8x to /usr/lib/AntiVir/avmailgate ... done
creating /usr/lib/AntiVir/templates ... done
copying doc/MANUAL to /usr/lib/AntiVir/MANUAL.avmailgate ... done
copying etc/avmailgate.ignore to /etc/ ... done
copying etc/avmailgate.scan to /etc/ ... done
copying etc/avmailgate.warn to /etc/ ... done
creating /var/spool/avmailgate ... done
creating /var/spool/avmailgate/incoming ... done
creating /var/spool/avmailgate/outgoing ... done
creating /var/spool/avmailgate/rejected ... done

# マニュアルのパスを聞いてくるので、そのまま[Enter]。
Enter the path where the manual pages will be located:
[/usr/share/man]: [Enter]
copying doc/man/avmailgate.conf.5 to /usr/share/man/man5/ ... done
copying doc/man/avmailgate.8 to /usr/share/man/man8/ ... done

# ホスト名/ドメイン名を聞いてくるので自分の環境を空白区切りで入力。
Enter the hosts and/or domains that are local:
[]: server.aconus.com aconus.com[Enter]

# ローカルとみなすホストやネットワークを聞いてくるので内容を確認し、そのまま[Enter]。
# ネットワークはクラスCになっているので、普通ならそのままで良いはず。
# 環境が異なるなら修正する。下記は修正したイメージ。
# これは、上記と合わせて/etc/avmailgate.aclに設定されるので後で修正可。
Enter the hosts and networks that are allowed to relay:
[127.0.0.1/8 192.168.0.0/16]: 127.0.0.1/8 192.168.1.0/24[Enter]

# コマンドでavmailgateを起動するためのリンクを作成するか聞いてくるので、[y]と入力。
Would you like to create a link in /usr/sbin for avmailgate ? [y] y[Enter]
linking /usr/sbin/avmailgate to /usr/lib/AntiVir/avmailgate ... done

# システム起動時にavmailgateを起動するか聞いてくるので、[y]と入力。
Would you like AvMailGate to start automatically? [y] y[Enter]
setting up startup script ... done
installation of main program complete

# AntiVirはSMCでGUI管理できるらしい。
4) installing GUI (+ SMC support)

Note: The AntiVir Security Management Center (SMC) requires this
      feature, even if you do not intend to use the GUI.

This product comes with a GUI that allows you to monitor realtime
activity, view logs, and configure the product. This tool is optional
(not required) for the product to run.

The GUI requires Java 1.4.0 or higher.

# GUI管理してもしようがないので、今回はパス。
Would you like to install the GUI (+ SMC support)? [n] n[Enter]
checking for existing /etc/avmailgate.conf ... not found
copying etc/avmailgate.conf to /etc/ ... done
GUI will NOT be installed

Installation of the following features complete:
     AntiVir Engine
     AntiVir Automatic Internet Updater
     AntiVir MailGate

If you have any license key files, please copy them to /usr/lib/AntiVir
before running the software. Without a valid license key, it will
run in DEMO mode.

Note: It is highly recommended that you perform an update now to
      ensure up-to-date protection. This can be done by running:

      antivir --update

Be sure to read the README file for additional information.
Thank you for your interest in AntiVir MailGate.


■Postfix用の設定

  1.  /etc/servicesを編集(下記を追加)して、AntiVir MailGate用のサービスを設定する。

    # Content Filter for postfix
    antivir             10024/tcp      # Port for avgated
    smtp-backdoor  10025/tcp      # Port for postfix

  2. /etc/avmailgate.confを編集する。具体的には下記を追加する。(青字は削除、赤字は追加、緑字は変更したものです。)

    # Select interface and port, the smtp daemon will listen on.
    # Port may be given as a number or a service name.
    ListenAddress localhost port antivir

    # Select how mail should be forwarded.
    # Send mail by piping it thru sendmail (this is the default)
    #ForwardTo /usr/sbin/sendmail -oem -oi
    # Or if you want the mail to be sent by SMTP
    ForwardTo SMTP: localhost port smtp-backdoor


  3. /etc/postfix/master.cfを編集、下記を追加する。

    localhost:smtp-backdoor inet n - n - - smtpd -o content_filter=

  4. /etc/postfix/main.cfを編集、下記を追加する。

    # Antivir Einbindung
    content_filter = smtp:127.0.0.1:10024

  5. ウイルス検出等のメールを root 以外で受けたければ、 /etc/antivir.conf を編集する。

    #EmailTo root@localhost
    EmailTo oyaji@localhost

  6. メールで送られてきたライセンスキー (hbedv.key) を、/usr/lib/AntiVirにavmgate.keyとしてコピーし、オーナを変更する。その後、再起動する。このとき、「Warning: the file "antivir.vdf" is more than 14 days old」と警告が出ることがあるので、「Enter」して次項でアップデートする。次項は警告が出なくても実施すること。

    # cp hbedv.key /usr/lib/AntiVir/avmgate.key
    # chown root:antivir /usr/lib/AntiVir/avmgate.key
    # /etc/init.d/avgate restart

    なお、起動スクリプトがうまくインストールできていない場合は、下記により設定する。

    # cp avmailgate/init/rc.avgate.SuSE8x /etc/init.d/avgate
    # insserv /etc/init.d/avgate

  7. ここで、ソフトとパターンファイルを最新版に更新する。

    # /usr/lib/AntiVir/antivir --update
    AntiVir / Linux Version 2.1.3-43 +gui
    Copyright (c) 1994-2005 by H+BEDV Datentechnik GmbH.
    All rights reserved.

    Warning: the file "antivir.vdf" is more than 14 days old
    A new method to dramatically reduce traffic volume as well as time
    when updating this software has gone into beta test. This method is
    also referred to as "incremental VDF updates". To learn more about
    this please visit http://www.free-av.de/unix_inkrementell.html.

    checking for updates

    06.31.00.05 <=> 06.31.00.137 [vdf database, on-disk]
    06.31.00.05 <=> 06.31.00.07 [scan engine, running]
    06.31.00.05 <=> 06.31.00.07 [scan engine, on-disk]
    antivir.vdf 100% |*************************************|  3409 KB  116.78 KB/s   0:00 ETA
    antivir 100% |*****************************************|   529 KB  105.92 KB/s   0:00 ETA
    06.31.00.137 <=> 06.31.00.137 [vdf database, on-disk]
    06.31.00.07 <=> 06.31.00.07 [scan engine, on-disk]

    scan engine 06.31.00.05 --> 06.31.00.07 (/usr/lib/AntiVir/antivir)
    vdf database 06.31.00.05 --> 06.31.00.137 (/usr/lib/AntiVir/antivir.vdf)

    AntiVir updated successfully

    上記のように更新により、スキャンエンジンとパターンファイルが更新され、syslog には reloaded AntiVir mail scanner successfullyと出力されており、自動で kill-HUP してくれる。

  8. 以前は、crontabに下記のような自動更新の設定がインストールされていたが、最近の版数では avgate起動時にavupdaterが起動され、一日に一回更新をチェックするように変更になっている。細かく更新チェックするようには、以前のようにcrantabに下記のような設定を書けば一時間に一回更新チェックできる。サーバ負荷にになるのでほどほどに。
    また、ウイルス検出したメールやそのログが /var/spool/antivir/reject ディレクトリ配下に吐かれ、放置すると膨大な量になるのでこれを定期的に削除するようにした。(青字は削除、赤字は追加、緑字は変更したものです。)

    # update every day on 0:23:
    23 0 * * * root /usr/sbin/antivir --update -q

    30 0 * * * root /bin/rm -f /var/spool/antivir/reject/*

■動作の確認

ここで、テストメールを送受信し、プロパティでAntiVir MailGate が動作しているか確認してみよう。以下は、おやじがテストしたメールの例です。
 Subject: test (antivir)
 To: =?iso-2022-jp?B?GyRCJCokZCQ4GyhC?= <oyaji@mail.aconus.com>
 X-AntiVirus: OK! AntiVir MailGate Version 2.0.0.5
        at linux has not found any known virus in this email.
正常な動作が確認できたら、テスト用のウイルスをeicarのWebサイトからダウンロードして、ウイルスが検出できるのか確認しましょう。4種類のテストウイルスがあるので、全てテストしてみましょう。うまく検出されれば、管理者宛及び送信者宛にウイルスアラートのメールが送信されるはずです。

■システムウイルスチェック

AntiVir MailGate は、メールのウイルス検出・駆除だけでなく、システムのウイルスチェックもできる。下記のように、crontabに追加するだけでよい。おやじの設定は、毎日、ウイルス更新が終わった後を狙って0:40にチェックするように設定してある。
各パラメータの意味は下記のとおり。
パラメータ 概 要
/ /以下の全てのディレクトリをスキャン。未指定時は/rootのみ。
-q バックグラウンドで動作。(Quiet)
-s サブディレクトリ以下もスキャンする。未指定時は、メインディレクトリのみスキャン。
-z 圧縮ファイルをスキャンする。未指定時は、圧縮ファイルはスキャンされない。
-e 感染ファイルのリペアを試みる。
-del リペアできなければ削除する。上記オプションがなければいきなり削除される。
--allfiles 全てのファイルをスキャンする。

40 0 * * * root /usr/lib/AntiVir/antivir / -q -s -z -e -del -allfiles



Topページへ