こんなにたくさん「警告!」が出ていた!!!!
内容は、「WARNING: Your ClamAV installation is OUTDATED!WARNING: Local version: 0.99.1 Recommended version: 0.99.2」です。
1時間ごとに、Webサーバとファイルサーバ(Samba)から、freshclam.logに警告が発せられています。1時間毎にウィルス定義ファイルを更新するのでfreshclamが実行され、そのときに警告が出ていました。5月4日から始まっています。
早速、対処に入ります。
【前提条件】
- 5月3日までは、正常であった。(警告なし)
- clamAVやfreshclam関連の設定ファイルは正しい
<手順>
- ログの調査(原因究明)
- 関連設定ファイル(confファイル)の調査と修正
- clamavのアップデート(回避策)と確認
- 後始末
1.ログの調査(原因究明)
(1)freshclam.logの調査
Webサーバまたはファイルサーバにsshで、リモート接続し、端末で、確認します。
# cat /var/log/freshclam.log
------------------------------------------
ClamAV update process started at Sat May 7 00:10:02 2016
WARNING: Your ClamAV installation is OUTDATED!
WARNING: Local version: 0.99.1 Recommended version: 0.99.2
DON'T PANIC! Read http://www.clamav.net/documents/upgrading-clamav
main.cvd is up to date (version: 57, sigs: 4218790, f-level: 60, builder: amishhammer)
daily.cld is up to date (version: 21516, sigs: 93241, f-level: 63, builder: neo)
bytecode.cld is up to date (version: 277, sigs: 47, f-level: 63, builder: neo)
--------------------------------------
簡単に言えば、「ClamAVが、古かけん、0.99.2がよかばい。あんたんとは、0.99.1やろ。」とのことです。
また、こうも言っています。「パニクらんでよかけん、”http://www.clamav.net/documents/upgrading-clamav”ば、読め。」
さっそく、”http://www.clamav.net/documents/upgrading-clamav”を覗いてみると、、、、ソースからインストールする方法と、yumでインストールする方法が書いてあります。私は、clamav-updateを利用しているのでその対処方法は書かれていません。
ちなみに、「Download」タブがあるので、そこをクリックすると下図のように、0.99.2がダウンロードできるみたいです。
2.関連設定ファイル(confファイル)の調査と修正
(1)clamav-update.confの調査
clamav-updateを実行して、様子を見ます。
# freshclam --on-outdated-execute="/usr/local/bin/clamav-update.pl --config /usr/local/etc/clamav-update.conf"
ClamAV update process started at Sat May 7 19:48:35 2016
WARNING: Your ClamAV installation is OUTDATED!
WARNING: Local version: 0.99.1 Recommended version: 0.99.2
DON'T PANIC! Read http://www.clamav.net/documents/upgrading-clamav
main.cvd is up to date (version: 57, sigs: 4218790, f-level: 60, builder: amishhammer)
daily.cld is up to date (version: 21517, sigs: 98748, f-level: 63, builder: neo)
bytecode.cld is up to date (version: 277, sigs: 47, f-level: 63, builder: neo)
gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now
Sat May 7 19:49:39 2016 child exited: 2
Sat May 7 19:49:39 2016 PHASE extract: type method: command #0: failed
Sat May 7 19:49:39 2016 PHASE extract: failed#
ふむ、ふむ、、、「extract: failed(解凍失敗)」って、clamav-0.99.2.tar.gzの解凍に失敗している?もし、そうなら。clamav-0.99.2.tar.gzはどこ?
# updatedb
# locate clamav-0.99.2.tar.gz
#
何も表示されません。(後でわかったこと。clamav-update.confから、# download to::: $Setting{option}->{dst} = tempdir(CLEANUP => 1);により、ダウンロード・インストール後には、削除される設定のようです。)
clamavのダウンロード元はどこなのだろうか?clamav-update.confで、確認します。
# vi /usr/local/etc/clamav-update.conf
167 # Centro de Computacao Cientifica e Software Livre (Curitiba, Br azil, BR)
168 # http://ufpr.dl.sourceforge.net/project/
169 $Setting{option}->{src}->{template} = 'http://jaist.dl.sourceforge.net/project/${NAME}/${NAME}/${VERSION}/${NAME}-${VERSION}.${EXT}';
170
171 # download to
172 $Setting{option}->{dst} = tempdir(CLEANUP => 1);
169行目付近に、http://jaist.dl.sourceforge.net/project/${NAME}/${NAME}/${VERSION}/${NAME}-${VERSION}.${EXT}とあります。これをそのまま、URLに置き換えると、http://jaist.dl.sourceforge.net/project/clamav/clamav/0.99.2/clamav-0.99.2.tar.gzとなります。ブラウザにこのURLを入力し、確認してみると、
このように、sourceforge.netのサイトが表示されました。clamavのバージョンは0.99.1となっています。
ちなみに、clamav-update.conf内で、clamavの最新バージョンのチェックは、下記のように、
72 # latest version
73 # command to get
74 $Setting{version}->{latest}->{command} = [qw(
75 host -t txt current.cvd.clamav.net
76 )];
clamav.netに接続しているようです。実行してみます。
# host -t txt current.cvd.clamav.net
current.cvd.clamav.net descriptive text "0.99.2:57:21518:1462673490:1:63:44586:277"
最新バージョンは、0.99.2ですね。
ためしに、wgetしてみます。
0.99.2で実行。
$ wget http://jaist.dl.sourceforge.net/project/clamav/clamav/0.99.2/clamav-0.99.2.tar.gz
--2016-05-07 14:00:28-- http://jaist.dl.sourceforge.net/project/clamav/clamav/0.99.2/clamav-0.99.2.tar.gz
jaist.dl.sourceforge.net (jaist.dl.sourceforge.net) をDNSに問いあわせています... 150.65.7.130, 2001:df0:2ed:feed::feed
.....
.....
.....
downloads.sourceforge.net (downloads.sourceforge.net)|216.34.181.59|:80 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 404 Not Found
2016-05-07 14:00:28 エラー 404: Not Found。
失敗しました。
次に、0.99.1で実行します。
$ wget http://jaist.dl.sourceforge.net/project/clamav/clamav/0.99.1/clamav-0.99.1.tar.gz
--2016-05-07 14:01:19-- http://jaist.dl.sourceforge.net/project/clamav/clamav/0.99.1/clamav-0.99.1.tar.gz
jaist.dl.sourceforge.net (jaist.dl.sourceforge.net) をDNSに問いあわせています... 150.65.7.130, 2001:df0:2ed:feed::feed
jaist.dl.sourceforge.net (jaist.dl.sourceforge.net)|150.65.7.130|:80 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 15990867 (15M) [application/x-gzip]
`clamav-0.99.1.tar.gz' に保存中
100%[======================================>] 15,990,867 434KB/s 時間 18s
2016-05-07 14:01:37 (883 KB/s) - `clamav-0.99.1.tar.gz' へ保存完了 [15990867/15990867]
成功しました。
これで、原因が明らかになりました。
<<結論>>
clamav-update.conf内で、最新版のバージョン情報を、「current.cvd.clamav.net」から取得する設定となっている。最新版は0.99.2である。しかし、実際にダウンロードするサイトは、「jaist.dl.sourceforge.net」からである。最新版は0.99.1である。
この違いにより、clamav-updateを実行すると、上記に示したように
WARNING: Your ClamAV installation is OUTDATED!
WARNING: Local version: 0.99.1 Recommended version: 0.99.2
の警告が出ていたのです。
3.clamavのアップデート(回避策)と確認
(1)clamavのアップデート(回避策)
clamav-update.confの169行目付近にある、URLをclamav.netへ書き換えます。実際には、現在の設定をコメントアウトして追記しました。
# vi /usr/local/etc/clamav-update.conf
167 # Centro de Computacao Cientifica e Software Livre (Curitiba, Br azil, BR)
168 # http://ufpr.dl.sourceforge.net/project/
169 $Setting{option}->{src}->{template} = 'http://www.clamav.net/downloads/production/${NAME}-${VERSION}.${EXT}';←←追記
170 #$Setting{option}->{src}->{template} = 'http://jaist.dl.sourceforge.net/ project/${NAME}/${NAME}/${VERSION}/${NAME}-${VERSION}.${EXT}';←←コメントアウト
171
172 # download to
173 $Setting{option}->{dst} = tempdir(CLEANUP => 1);
保存後、clamav-updateを実行します。
# freshclam --on-outdated-execute="/usr/local/bin/clamav-update.pl --config /usr/local/etc/clamav-update.conf"
.....
.....
make[2]: ディレクトリ `/tmp/JGSQMNYx9B/clamav-0.99.2' に入ります
/bin/mkdir -p '/usr/local/bin'
/usr/bin/install -c clamav-config '/usr/local/bin'
/bin/mkdir -p '/usr/local/lib/pkgconfig'
/usr/bin/install -c -m 644 libclamav.pc '/usr/local/lib/pkgconfig'
make[2]: ディレクトリ `/tmp/JGSQMNYx9B/clamav-0.99.2' から出ます
make[1]: ディレクトリ `/tmp/JGSQMNYx9B/clamav-0.99.2' から出ます
clamd を停止中: [失敗]
clamd を起動中: [ OK ]
ERROR: /var/log/freshclam.log is locked by another process
ERROR: Problem with internal logger (UpdateLogFile = /var/log/freshclam.log).
Sat May 7 20:55:16 2016 child exited: 62
Sat May 7 20:55:16 2016 PHASE install: type method: command #2: failed
Sat May 7 20:55:16 2016 PHASE install: failed
最後の方に「失敗」や「install failed」と出ました。ちょっと、気になります。
(2)確認
バージョンを確認します。
# clamd -V ←←clamAVのバージョンを確認
ClamAV 0.99.2/21517/Sat May 7 01:42:13 2016
0.99.2となっています。
次に、freshclamを実行します。
# freshclam ←←freshclamの実行
ClamAV update process started at Sat May 7 21:07:14 2016
main.cvd is up to date (version: 57, sigs: 4218790, f-level: 60, builder: amishhammer)
daily.cld is up to date (version: 21517, sigs: 98748, f-level: 63, builder: neo)
bytecode.cld is up to date (version: 277, sigs: 47, f-level: 63, builder: neo)
警告が消えています。インストールは成功したと判断しました。さらに、eicarのサイトから、テストウィルスを2つダウンロード(wget利用)して、clamasacanを実施してみました。
# clamscan --remove /home/masa
/home/masa/.bash_profile: OK
/home/masa/.bash_history: OK
/home/masa/eicar.com: Eicar-Test-Signature FOUND
/home/masa/eicar.com: Removed.
/home/masa/.bashrc: OK
/home/masa/.bash_logout: OK
/home/masa/eicarcom2.zip: Eicar-Test-Signature FOUND
/home/masa/eicarcom2.zip: Removed.
/home/masa/sysctl.txt: OK
----------- SCAN SUMMARY -----------
Known viruses: 4322412
Engine version: 0.99.2
Scanned directories: 1
Scanned files: 7
Infected files: 2
Data scanned: 0.05 MB
Data read: 0.02 MB (ratio 2.00:1)
Time: 30.736 sec (0 m 30 s)
clamavのバージョンが0.99.2で、きちんとテストウィルスが2つ検出され、削除されていました。
これで、clamavが最新版0.99.2にアップデートしたことになります。
4.後始末
後始末です。clamav-update.confでコメントアウトしたダウンロード元のサイトを元に戻し(#を外す)、追記したサイトをコメントアウトします。つまり、デフォルトの状態に戻しておきます。
以上、完了。
恐らく、もうしばらく待てば、「jaist.dl.sourceforge.net」に、0.99.2がアップされるかもしれません。したがって、慌てて、回避策を実行する必要もないでしょうが、それまで警告メールを毎時間受信するのはちょっと我慢できません。なので、私は回避策でしのぎました。
分かり易い記事をありがとうございます。
よりによって5/3リリースとは。ゴールデンウィークまっただ中ですものね。
私は今のところ待っていますけど、今日(5/10)ぐらいには上がって欲しいなぁ。
た~ぼ@花囲夢様、コメントありがとうございます。
clamavにはときどき、驚かされますね。
少しでもお役に立てて嬉しいです。
そうですね、一日も早くアップされることを願っています。