CentOS7へAVG アンチウイルス無料版 for Linuxをインストールし設定しました。
本サイト内のCentOSの無料ウィルス対策ソフトの設定方法を記載したページ
AVG アンチウイルス無料版 for Linuxの特長は以下です。
・無料
・リアルタイムスキャン可能
リアルタイムスキャンにfanotifyを使用する場合、インストールから リアルタイムスキャンの設定まで5分かかりません。
※サブディレクトリも対象(≒再帰的スキャン)
無料のLinux用ウィルス対策ソフトについて
CentOS7でSophos Anti-Virus for Linux (Free Edition)、ClamAV、 COMODO AntiVirus、AVG Anti-Virusをインストールし比較しましたが、 2015年7月現在、一番良いと思うのは個人向けは無料のSophos Anti-Virus for Linux (Free Edition)です。次はAVGかと思います。 また一般的によくインストールされているのはClamAVかなと思います。
唯一コントロールパネルの有るCOMODOはWindowsからの移行のユーザーから 見れば使いやすいと思うのですがfanotifyでの(サブディレクトリも) リアルタイムスキャン方法が分かりませんでした。普通に設定コンフィグには redirFSかfonotifyかを選択する項目が有るので、出来るかと思います。
企業でLinuxサーバを運用するならばトレンドマイクロのServerProtect等の 有料ウィルス対策ソフトが良いかと思います。
またClamAVは関連パッケージが豊富です。
また、自宅でシステムを構築している(複数のサーバが有る)場合は併用して 自宅サーバの場合無料で使用可能なsophosの無料UTMを手前に置く のも良いかもしれませんね。
本ページの目次
AVGのデーモン一覧
avgd
avgavid
avgsched
avgtcpd
avgspamd
avgscand
avgupd
avgoad
AVGのコマンドライン一覧
avgctl
AVGの基本的な操作
avgctl --stat-all
AVGのバージョンや、次のウィルスアップデート時間、 リアルタイムスキャンの状態などが表示されます。
avgctl --start[=component]
AVGやコンポーネントの起動
avgctl --stop[=component]
AVGやコンポーネントの停止
avgctl --restart[=component]
AVGやコンポーネントの再起動
avgcfgctl
コンフィグの表示や設定
avgcfgctl
コンフィグの表示
avgcfgctl -x
xml形式でコンフィグを表示
avgscan
スキャンを実施する。
avgscan 対象ディレクトリ
例 avgscan /
avgscan -x 除外ディレクトリ
例 avgscan /home -x /olduser1 -x /olduser2
avgupdate
ウィルスデータベースのアップデート
avgvvctl
AVG Virus Vaultの操作
avgdiag
問題報告用のレポート作成
avgevtlog
AVGのイベントログの確認
avgsetup
対話形式でのコンフィグ作成。リアルタイムスキャン(オンアクセスデーモン) やメールサーバ用スキャン(TCPDプロテクト)を対話形式で設定できます。
avgscanのオプションと返り値一覧
正確にはman avgscanを参照して下さい。
avgscanのオプション一覧
-x PATH, --exclude PATH
スキャンからパスを除外します。複数の--excludeオプションを指定することができます。 ※/sysと/procは常に除外されます。
-e EXTENSION, --ext EXTENSION
指定された拡張子を持つファイルをスキャンします。複数の--extオプションを 入力することができます。--noextとの併用はできません。
-n EXTENSION, --noext EXTENSION
指定された拡張子を持つファイルを除外します。複数の--noextオプションを 入力することができます。--extとの併用はできません
-W DIRS, --winsysdir DIRS
Windowsのシステムディレクトリについて。
-R, --reclevel=N
再帰的にチェックする最大値。デフォルト値は16384。
-a, --arc
内部のアーカイブをスキャンする。
-L, --arc-reclevel=N
アーカイブを再帰的にチェックする最大値。デフォルト値は40。
-S, --arc-maxfilesize=N
アーカイブから抽出された最大ファイルサイズ。デフォルト値は268435456Byte
-N, --arc-maxfilenum=N
アーカイブ内のスキャンされたファイルの最大数。 デフォルト値は50000。
-w, --pwdw
パスワード保護されたファイルを報告します。--arcで使用してください。
-b, --arcbombsw
アーカイブボム(膨大なファイルや複数の同一ファイルを高圧縮した、小さな サイズのアーカイブ)を報告します。デフォルトでオンです。--arcで使用して ください。無効にするには--no-arcbombswオプションを指定します。
-l, --heal
自動的に感染したオブジェクトを治します。
-t, --delete
自動的に感染したオブジェクトを削除します。
-u, --vv-move
自動的に感染したオブジェクトを隔離します。
-U, --vv-backup
削除によって治る場合、感染オブジェクトをバックアップします。
-H, --heur
ヒューリスティックスキャン(未知のウイルスに対するスキャン。パターンの照会では なくウイルスに特徴的な挙動の有無を調べる方法)を使用する。デフォルトでオン。 無効にするには--no-heurオプションを指定します。
-p, --pup
不審なプログラムをスキャンします。デフォルトでオン。 無効にするには--no-pupオプションを指定します。
-P, --pup2
不審なプログラムの拡張セットをスキャンします。
-c, --coo
cookieをスキャンします。
-i, --hidext
隠された拡張子を認識します。
-m, --macrow
マクロを含むドキュメントを報告します。
-o, --repok
クリーンなファイルも報告します。
-M, --media
メディアファイルはスキャンしません。
-j, --paranoid
パラノイドモードを有効にします。偏執的に調べる場合(笑)。危険の少ない マルウェアと、より多くの時間がかかるアルゴリズムをスキャンします。
-B, --boot-sector
指定されたデバイスファイルのスキャンブートセクタは省略する。
-s, --specfs
特殊なファイルシステムをスキャン。/procや/sysなど。
-r FILE, --report FILE
指定したファイルにスキャンレポートを保存します。
-F FILE, --filelist FILE
与えられたファイルに指定されたスキャンファイルパス。 パスは1行である必要があります。
-d, --debug
詳細モード。複数の-dオプションは、冗長性を高める。 最大3つのオプションが許可。
--ignerrors
オブジェクトスキャンエラーを報告しない。
-h, --help
ヘルプを表示します。
-v, --version
バージョンを表示します。
-T, --tui
ターミナルユーザーインタフェースを使用する。
-k, --registryscan
Windowsのレジストリをスキャンします。
返り値の一覧
0 エラー無し
1 テストはユーザーにより中断されました。
2 テスト中に何らかのエラー。例えばファイルを開けないなど。
3 スキャン中に警告がでました。
4 不審なプログラムが検出されました。
5 ウイルスが検出されました。
6 パスワードで保護されたアーカイブ
7 隠された拡張子を持つファイル
8 マクロを含むドキュメント
9 アーカイブボム(膨大なファイルや複数の同一ファイルを高圧縮した、 小さなサイズのアーカイブ)
10 cookieです。
AVG アンチウイルス無料版 for Linuxのインストール
まず、CentOSのFirefoxでAVG ダウンロード 無料版 全製品 やAVG 無料ダウンロード へアクセスします。
コマンドラインでダウンロードする場合は、wgetやrpmコマンド、またWindowsで ダウンロードでも良いですね。
「AVG Server Edition for Linux」(rpm)をクリックします。
ダウンロードしたファイルは「場所」→「ダウンロード」に有ります。
ダウンロードしたAVGをインストールします。
rpm -ivh avg***.rpm
正しくインストール出来ました。
※もし「ld-linux.so.2」が無い場合は「/bin/avgdiag: /opt/avg/av/bin /avgdiag: /lib/ld-linux.so.2: bad ELF interpreter: そのようなファイルや ディレクトリはありません」となりインストール出来ません。
その際はld-linux.so.2をインストールしてから再度試行しましょう。
yum install ld-linux.so.2
AVGのインストール後、正しく稼働していることを確認します。
systemctl status avgd
自動起動について
自動起動しているかの確認をします。
systemctl is-enabled avgd
※自動起動させるには
systemctl enable avgd
※自動起動の停止は
systemctl disable avgd
自動起動しているかどうか、ユニットの一覧表で見る場合は以下。
systemctl list-unit-files
全ユニットの一覧表は、
systemctl -a
で、「systemctl is-enabled avgd」を実行すると 「avgd.service is not a native service, redirecting to /sbin/chkconfig. Executing /sbin/chkconfig avgd --level=5」と表示されてリダイレクトされ 「enabled」と正しく表示されました。
※ネイティブのsystemdサービスでは無いので、従来の 「chkconfig --list」でも表示させることが可能です。
ログについて
また、AVGに関するログの表示は以下です。
journalctl -u avgd
journalctl -r ※新しい順
avgevtlog
/var/log/messages ※catやtail -10などで確認しましょう。
/opt/avg/av/log/0 ※oadなど個々のログ。
ウィルス検知確認
テストウィルスファイル「eicar.com」をダウンロードします。
wget http://files.trendmicro.com/products/eicar-file/eicar.com
スキャンを行いました。
avgscan 対象ディレクトリ
※ウィルス発見時自動削除する場合
avgscan -t 対象ディレクトリ
ウィルス発見時の動作等々、avgscanのオプションは avgscan -h、man avgscanに載っています。
※除外ディレクトリは-xで指定します。
例 avgscan /home -x /olduser1 -x /olduser2
ターミナルユーザーインタフェースについて
また、ターミナルユーザーインタフェースを使用する場合は-Tまたは--tuiです。
avgscan -T 対象ディレクトリ
アップデート
アップデートを行いました。
avgupdate
次回の自動アップデート時刻は「avgctl --stat-all」などで表示できます。
プロキシを使用している場合は、「avgcfgctl-w」コマンドにて以下の項目を 編集します。「avgcfgctl-w」コマンドの使用方法は本ページ下部に記載しています。
Default.update.Options.Proxy.AuthenticationType=0
Default.update.Options.Proxy.Login=
Default.update.Options.Proxy.Mode=0
Default.update.Options.Proxy.Password=
Default.update.Options.Proxy.Port=3128
Default.update.Options.Proxy.Server=
Default.update.Options.Proxy.UseLogin=false
プログラムのアップデートに関する設定項目は以下かと思います。
UpdateProgram.sched.Repeat.BaseTime=INVALIDTIME
UpdateProgram.sched.Repeat.Interval=12
UpdateProgram.sched.Repeat.Type=1
UpdateProgram.sched.Task.Disabled=true
UpdateProgram.sched.Task.MissedStartAction=1
UpdateProgram.sched.Task.StartType=2
UpdateProgram.sched.Times.DayOfMonth=1
UpdateProgram.sched.Times.DayOfWeek=0
UpdateProgram.sched.Times.GracePeriod=300
UpdateProgram.sched.Times.SelectedDays=127
UpdateProgram.sched.Times.StartTime=2007-06-22/08-00-00
UpdateProgram.sched.Update.Path=
UpdateProgram.sched.Update.Source=inet
ウィルスデータベースのアップデートに関する設定項目は以下かと思います。
UpdateVir.sched.Repeat.BaseTime=INVALIDTIME
UpdateVir.sched.Repeat.Interval=4
UpdateVir.sched.Repeat.Type=1
UpdateVir.sched.Task.Disabled=false
UpdateVir.sched.Task.MissedStartAction=1
UpdateVir.sched.Task.StartType=2
UpdateVir.sched.Times.DayOfMonth=1
UpdateVir.sched.Times.DayOfWeek=0
UpdateVir.sched.Times.GracePeriod=180
UpdateVir.sched.Times.SelectedDays=127
UpdateVir.sched.Times.StartTime=2007-06-22/17-00-00
UpdateVir.sched.Update.Path=
UpdateVir.sched.Update.Source=inet
スケジュールスキャンの設定方法
■スクリプト作成
■スキャンログ格納ディレクトリを作成
mkdir /home/ユーザ名/avg-scan-log
■スクリプト名は適当にavg-scan.shとしました。
vi avg-scan.sh
#!/bin/bash
avgscan / -t -r /home/ユーザ名/avg-scan-log/`date +%Y%m%d`.log
cat /home/ユーザ名/avg-scan-log/`date +%Y%m%d`.log | mail -s "SCAN RESULT - `hostname`" 送信先メールアドレス
※/proc、/sysは自動的に除外されます。その他avgscanのオプションは man avgscanや前項のavgscanのオプション一覧を参照して下さい。
(スキャン対象とするフォルダの検討用)
Linuxの各ディレクトリに格納されているファイルについて
bin linuxに最初から有るコマンド群
dev デバイスに関するファイル。接続デバイスは「fdisk -l」
home root以外のユーザーごとのディレクトリ
mnt ファイルシステムのマウントポイント
proc プロセス(PID)やカーネルに関するファイル。PID表示は「ps -aux」
run プロセスのデータ。/var/runは/runのシンボリックリンク。
sys ドライバ関連のファイル。
usr ユーザーが共通で使うプログラム群。
※/usr/share/applicationsがWindowsで言うとコントロールパネル
boot ブートに関するファイル
etc コンフィグファイル
lib コマンドを実行するためのファイル
lib64 コマンドを実行するためのファイル。64ビット用
media CDやDVDのマウントポイント
opt パッケージのインストール先。
※Windowsで言うとProgram Filesのうち、後からインストールしたプログラム群。
root rootユーザーのディレクトリ
sbin 管理者が使用するコマンド
srv システムのサービスデータ。
tmp テンポラリファイル
var ログやApacheのデフォルトのドキュメントルートなど。
■実行権限の付与
chmod +x avg-scan.sh
一度スクリプトを実行してみて、正しくメール受信出来ることを確認します。 また今後、翌日(翌週)3、4時頃にもメール受信することを確認し正しくクーロン、 スキャンが行えたことを確認しましょう。
./avg-scan.sh
■/etc/cron.weeklyや/etc/cron.daily/への移動
1週間に1度スケジュールスキャンをする場合
mv avg-scan.sh /etc/cron.weekly/
1日に1度スケジュールスキャンをする場合
mv avg-scan.sh /etc/cron.daily/
■/etc/crontabの確認
CentOS6と同一で殆ど何も記載されていません。 CentOS5のように「cron.dailyは4時2分に実行」では有りません。 1台の物理サーバ上で全仮想サーバが4時2分にスクリプトを実行すると 負荷がかかるため、などの理由。
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
# For details see man 4 crontabs
# Example of job definition:
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * user-name command to be executed
■/etc/anacrontabの確認
[root@localhost /]# cat /etc/anacrontab
# /etc/anacrontab: configuration file for anacron
# See anacron(8) and anacrontab(5) for details.
SHELL=/bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
# the maximal random delay added to the base delay of the jobs
RANDOM_DELAY=45
# the jobs will be started during the following hours only
START_HOURS_RANGE=3-22
#period in days delay in minutes job-identifier command
15cron.dailynice run-parts /etc/cron.daily
725cron.weeklynice run-parts /etc/cron.weekly
@monthly 45cron.monthlynice run-parts /etc/cron.monthly
以上のデフォルト設定により日次、週次ともに(スケジュールスキャンが) 午前3時〜4時の間に実行されるかと思います。
実行時刻をランダムでは無く、固定するにはcronie-noanacronを インストールして使用する感じかと思います。
翌日頃に、スケジュール通り実行されたかと、正しく実行されログが保管されたを 確認しましょう。
リアルタイムスキャンの設定方法
以前、CentOS5や6でリアルタイムスキャンによく使用されていたRedirFS 、Dazuko は 収束しており、現在はLinux 2.6.36以降のカーネルに最初から入っているfanotify (filesystem wide access notification)を利用してのリアルタイムスキャンが 多くなっていっています。 IPAのサイトにdnotify・inotify・fsnotify・fanotifyの説明が有りました。
AVGはRedirFSはLinux 2.6.37まで、DazukoはLinux 2.6.22まで使用可能です。 fanotifyの入っているLinux 2.6.36のリリースは2010年10月20日ですので CentOS5.6や6.0のリリース前ですね。今回のCentOS7は3.10.0-123でした。
uname -a
Linux localhost.localdomain 3.10.0-123.el7.x86_64 #1 SMP Mon Jun 30 12:09:22 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
ServerProtect for LinuxはKHMでしょうか。
Linuxの無料のウィルス対策ソフトで言うと2015年7月現在、オンアクセススキャン時に 利用するモジュールは以下です。
Sophos Anti-Virus for Linux (Free Edition): Talpa、(fanotify)
AVG Anti-Virus free for Linux: RedirFS、Dazuko、fanotify
COMODO Antivirus: RedirFS、(fanotify)
ClamAV: fanotify
また、AVGではdarwinも指定できます。appleのUNIXカーネルのことかと思います。
・OAD(リアルタイムスキャン、On Access Deamon)の紹介(旧資料 AVG8.5)
・OADの利用にあたって
/opt/avg/av/doc/README.oadファイル
※RedirFS、Dazukoのインストール方法やfanotifyについての説明、それらの設定方法
・OADのマニュアル
man avgoad
※RedirFS、Dazuko、fanotifyの各設定値なども載っています。
・AVGコマンドラインコンフィグコントローラ(avgcfgctl、AVG command line configuration controller)のマニュアル
man avgcfgctl
・AVGのコンフィグ(RedirFS、Dazuko、fanotifyの各設定値など)の一覧表示
avgcfgctl
(a) fanotifyを利用する場合
※ServersMan@VPSのCentOS7ではfanotifyでのリアルタイムスキャン (オンアクセススキャン)は出来ませんでした。
[root@dti-vps-srv94]# avgsetup
F) Fanotify engine (only Linux kernel from 2.6.36 version) Type [R|S|D|F|B|E]: FYour kernel 2.6.32-042stab092.2 is not compatible with the fanotify engine.
[root@dti-vps-srv94]# uname -a
Linux dti-vps-srv94 2.6.32-042stab092.2 #1 SMP Tue Jul 8 10:35:55 MSK 2014 x86_64 x86_64 x86_64 GNU/Linux
※avgsetup時のfanotifyの警告自体はunameでカーネルのバージョンを 見ているだけですので以下の方法で消す(設定を進める)ことは出来ます。
uname -r でのカーネルの表示の変更方法
■カーネルのバージョン確認
uname -r
■/bin/unameのリネームか退避
/bin/unameをリネームするか/binディレクトリ以外に退避する
mv /bin/uname /bin/uname-true
■unameスクリプトの作成
vi /bin/uname
echo 3.10.0-123.20.1.el7.x86_64
■カーネルのバージョン確認
uname -r
3.10.0-123.20.1.el7.x86_64
偽装できました。
■avgsetup
avgsetupでfanotifyを選択出来ました。
■fanotifyが有効かの確認
/boot/config-***を開き、以下となっているか確認します。
CONFIG_FANOTIFY=y
CONFIG_FANOTIFY_ACCESS_PERMISSION=y
4567行目と4568行目に記載が有りました。
また、SELinuxは有効のままで問題ないかと思います。 ClamAVの時はfanotifyを使用する場合はSELinuxを無効にするか ポリシーを作成するかになるかと思います。
ここまで終了すれば、本ページの「(d) 上記モジュール設定完了後の設定」 へ進んで下さい。
(b) RedirFSを使用する場合
RedirFSは、Redirecting FileSystemの略です。
RedirFS自体が昔のモジュールであるためCentOS7では不可です。 CentOS6などでは選択肢に入るかと思います。 RedirFSが使用できるのはLinux 2.6.37までです。 Linux 2.6.25〜2.6.37で有ればRedirFSで良いかと思います。
■ダウンロード
RedirFS にてredirfsとavfltを ダウンロードします。
■解凍します。
tar xzvf redirfs-***.***.tar.gz
■ビルドなどを行います。
cd redirfs-***.***
make -C /lib/modules/`uname -r`/build M=`pwd` modules
make -C /lib/modules/`uname -r`/build M=`pwd` modules_install
cd avflt-***.***
cp redirfs-***.***のディレクトリ/Module.symvers .
make -C /lib/modules/`uname -r`/build M=`pwd` \
make -C /lib/modules/`uname -r`/build M=`pwd` \
■カーネルモジュールの依存関係を更新します。
depmod -a
■カーネルモジュールをロードします。
modprobe avflt
modprobe redirfs
ここまで終了すれば、本ページの「(d) 上記モジュール設定完了後の設定」 へ進んで下さい。
(c) dazukoFSを使用する場合
dazukoはDateizugriffskontrolle(ファイルアクセスコントール)の略です。
dazukoやdazukoFS自体が昔のモジュールであるためCentOS7では不可です。 CentOS6などでは選択肢に入るかと思います。 DazukoはLinux 2.6.22まで使用可能です。
Dazuko にてdazukoFSをダウンロードします。
http://dazuko.dnsalias.org/files/dazukofs-3.1.0.tar.gz
http://dazuko.dnsalias.org/files/dazukofs-3.1.1.tar.gz
http://dazuko.dnsalias.org/files/dazukofs-3.1.2.tar.gz
http://dazuko.dnsalias.org/files/dazukofs-3.1.3.tar.gz
http://dazuko.dnsalias.org/files/dazukofs-3.1.4.tar.gz
など
■インストールします。
make
make dazukofs_install
■カーネルモジュールをロードします。
modprobe dazukofs
ここまで終了すれば、以下の「(d) 上記モジュール設定完了後の設定」 へ進んで下さい。
(d) 上記モジュール設定完了後の設定
■対話形式でのリアルタイムスキャン設定について
今回は、本項目の対話形式での設定コマンド「avgsetup」を使わず 次の項目から「avgcfgctl」で設定していく方法を説明します。
※今回は実施しませんが、「avgsetup」コマンドを使用することによって 対話形式でリアルタイムスキャン設定を行うことができます。
avgsetup
RadirFSを使用する場合は「R」
Fanotifyを使用する場合は「F」
Dazukoを使用する場合は「D」
から操作を進めます。Sambaのプラグインの設定もこの画面から行えます。
今回は、上記の対話形式での設定コマンド「avgsetup」を使わず 「avgcfgctl」にて設定していく方法を以下から説明します。
■OAD機能の設定値確認
AVGコマンドラインコンフィグコントローラで OAD機能に関する設定値を確認します。
※OAD以外にもスパムアサシンやTCPDなどに対する設定値などが有ります。
[root@localhost boot]# avgcfgctl | grep Oad
Oad.scan.AutomaticActions.BackupInVault=false
Oad.scan.AutomaticActions.Enabled=false
Oad.scan.AutomaticActions.PreferedAction=1
Oad.scan.Options.ParanoidMode=false
[root@localhost boot]# avgcfgctl | grep oad
Default.oad.avflt.paths.exclude=
Default.oad.avflt.paths.include=
Default.oad.avflt.timeout=0
Default.oad.darwin.cache.hashtable_size=4096
Default.oad.darwin.cache.max_items_number=65536
Default.oad.darwin.paths.exclude=|/dev|/proc|/sys|
Default.oad.darwin.paths.include=
Default.oad.dazuko.cache.hashtable_size=4096
Default.oad.dazuko.cache.max_items_number=65536
Default.oad.dazuko.events.close=false
Default.oad.dazuko.events.close_modified=true
Default.oad.dazuko.events.exec=true
Default.oad.dazuko.events.open=true
Default.oad.dazuko.paths.exclude=|/dev|/proc|/sys|
Default.oad.dazuko.paths.include=
Default.oad.deny_on_error=false
Default.oad.fanotify.cache.hashtable_size=4096
Default.oad.fanotify.cache.max_items_number=65536
Default.oad.fanotify.paths.exclude=
Default.oad.fanotify.paths.include=
Default.oad.timeout=0
Default.oad.use=fanotify
Default.setup.features.oad=true
■まず、OAD自体が有効になっていること。
最終行に「Default.setup.features.oad=true」と表示されているので問題無いですね。
■次にOADで利用するモジュールの変更
OADで利用するモジュールを変更します。 初期設定ではfanotifyですので、fanotifyを利用する場合は 変更の必要はありません。
・dazukoFSに変更する場合
avgcfgctl -w Default.oad.use=dazukofs
・redirFSに変更する場合
avgcfgctl -w Default.oad.use=avflt
■モジュールに関する設定値の確認および編集
使用しているモジュール(fanotify、RedirFS、dazukoFS)それぞれの 設定値の必要箇所を編集します。 リアルタイムスキャンを行うパスの入力方法は以下です。
avgcfgctl -w 'Default.oad.モジュール.paths.include=|/ディレクトリ名|/ディレクトリ名|'
注意
以下のようにルートディレクトリをリアルタイムスキャン対象としました。
avgcfgctl -w 'Default.oad.fanotify.paths.include=|/|'
サービスを再起動しました。
avgctl --restart=oad
するとフリーズし、VMwareをパワーオフし起動後にログインも不可となりました。 ※CPU使用率が上昇し処理に時間がかかっているだけかもしれません。
darwinやdazukoでの初期設定に倣い、fanotifyで実施する際も除外フォルダ設定で
Default.oad.fanotify.paths.exclude=|/dev|/proc|/sys|
とした方が良いかもしれません。
※説明の詳細は「/opt/avg/av/doc/README.oadファイル」に記載されています。
※設定項目の意味は「man avgoad」に掲載されています。
※avgcfgctlの使用方法は「man avgcfgctl」に掲載されています。
編集後は「avgcfgctl | grep Oad」、「avgcfgctl | grep oad」にて 正しく編集完了したか見ておきましょう。
■AVGのOADコンポーネントを再起動します。
avgctl --restart=oad
※書式は以下です。=でコンポーネントのみ、とすることが出来ます。
avgctl --restart[=component]
■続き:fanotifyの場合(テストウィルスの検知確認)
まず、/tmpディレクトリと/tmp/aディレクトリにテストウィルスファイル 「eicar.com」を置きました。
次に以下のように/tmpをリアルタイムスキャンに含める設定としました。
avgcfgctl -w 'Default.oad.fanotify.paths.include=|/tmp|'
複数のディレクトリを記載する場合は
Default.oad.fanotify.paths.include=|/a|/b|/c|
OADを再起動。
avgctl --restart=oad
/tmpディレクトリのeicar.comを開きました。 「ファイル/tmp/eicar.comを開けませんでした。 そのファイルを開く権限がありません。」と表示されました。
/tmp/aディレクトリのeicar.comを開いたところ。 「ファイル/tmp/a/eicar.comを開けませんでした。 そのファイルを開く権限がありません。」と表示されました。
※オンアクセススキャンではなくTCPDでの、どれくらいのサブディレクトリの深さまで 再帰的にスキャンするかの設定は以下の箇所かもしれませんね。
Tcpd.scan.DirOptions.MaxRecursionDepth=16384
Tcpd.scan.Options.MaxRecursionDepth=40
OADを停止。
avgctl --stop=oad
/tmpディレクトリのeicar.comを開いたところ。 開くことが出来ました。
/tmp/aディレクトリのeicar.comを開いたところ。 開くことが出来ました。
■続き:dazukoFSの場合
対象ディレクトリをマウントします。
mount -t dazukofs /ディレクトリ名 /ディレクトリ名
起動時からマウントさせておくには/etc/fstabに以下を記載します。
※dazukoのREADMEに記載されていました。
/usr /usr dazukofs defaults 0 0
/opt /opt dazukofs defaults 0 0
■redirFSのドキュメント
Redirecting FileSystem - Documentation
メールサーバ用のメールスキャン
※今回は設定していません。
README.postfixやREADME.sendmailなどのファイルを参照し 設定を行います。
対話形式で設定を実施する場合はavgsetupコマンドから設定していきます。
avgsetup
SpamAssassinとの連携
※今回は設定していません。 ※設定の詳細はREADME.antispamファイルを参照して下さい。
スパムアサシンとは迷惑メール対策ソフト(スパムフィルタリングプログラム)です。
■SpamAssassinのインストール
spamassassin からダウンロードします。
yum install spamassassin
■avgcfgctlの設定
デフォルト値は以下です。 [root@localhost av]# avgcfgctl | grep spam
Default.aspam.spamassassin.address=127.0.0.1
Default.aspam.spamassassin.enabled=true
Default.aspam.spamassassin.port=783
Default.aspam.spamfilter=
Default.setup.features.antispam=false
Default.tcpd.rules.spam.action=0
Default.tcpd.rules.spam.bounce_addr=
Default.tcpd.spam.enabled=true
Default.tcpd.spam.header.enabled=true
Default.tcpd.spam.subj_prefix=[SPAM]
Default.tcpd.threshold.spam=1000
以下のコマンドで変更していきます。
avgcfgctl -w '以下の設定行を入れる'
■アンチスパム機能を使用する
Default.setup.features.antispam=true
Default.tcpd.spam.enabled=true
■アンチスパムフィルタにスパムアサシンを使用する
Default.aspam.spamfilter=spamassassin
Default.aspam.spamassassin.enabled=true
■SpamAssassinで使用するIPアドレスとポート番号を記載します
Default.aspam.spamassassin.address=127.0.0.1
Default.aspam.spamassassin.port=783
■AVGを再起動します。
avgctl --restart
または
service avgd restart
※あまり関連性は有りませんが、レンタルサーバ「クイッカ」 のスパムアサシン設定項目に、 スパムアサシンについての分かりやすい説明が有りました。