こんにちは、masm11 です。
普段、家庭内サーバに Sophos Anti-Virus for Linux Free Edition をインストールして使ってました。 が、ある日突然、こんな通知が来ました。
Sophos Anti-Virus for Linux Free Edition の製品サポートは終了しています。 アップデートは引き続き入手できますが、後日終了される予定です。 詳細は、次のサイトを参照してください。 https://community.sophos.com/free-antivirus-tools-for-desktops/b/blog/posts/retirement-of-sophos-anti-virus-for-linux-free-edition
仕方なくアンインストールし、代わりに今更 ClamAV をインストールしたので、メモ代わりに残しておきます。
SAV をアンインストール
まず service を止めましょう。
様子を確認して、
[root@mike bin]# systemctl list-unit-files | grep sav sav-protect.service enabled disabled sav-rms.service disabled disabled sav-update.service enabled disabled
ひとつずつ止めていきます。
[root@mike bin]# systemctl stop sav-update [root@mike bin]# systemctl disable sav-update Removed /etc/systemd/system/multi-user.target.wants/sav-update.service. [root@mike bin]# systemctl stop sav-protect [root@mike bin]# systemctl disable sav-protect Removed /etc/systemd/system/multi-user.target.wants/sav-protect.service.
もう一度確認します。
[root@mike bin]# systemctl list-unit-files | grep sav sav-protect.service disabled disabled sav-rms.service disabled disabled sav-update.service disabled disabled
全部 disable になってますね。では reboot します。
[root@mike bin]# reboot
残り作業であるファイルの削除は script に任せます。
[root@mike ~]# /opt/sophos-av/uninstall.sh Uninstalling Sophos Anti-Virus. Sophos Anti-Virus has been uninstalled.
ClamAV のインストール
私は Arch Linux なので、↓こちらの資料を参考にしながら進めました。
https://wiki.archlinux.jp/index.php/ClamAV
まずインストールします。
mike:~ % sudo pacman -S clamav
freshclam を起動します。
mike:~ % sudo systemctl start clamav-freshclam.service mike:~ % sudo systemctl enable clamav-freshclam.service Created symlink /etc/systemd/system/multi-user.target.wants/clamav-freshclam.service → /usr/lib/systemd/system/clamav-freshclam.service.
ここで、clamav-freshclam.service の中身を見るとわかるのですが、 /etc/cron.d/ で設定してあると、それは cron で定期的に起動することが 期待されるので、boot 時に起動しないようになっています。 私の場合はその設定はしてないので、boot 時に起動します。
で、ここでデータベースのダウンロードが始まります。 少し時間がかかるので、時々
mike:~ % sudo ls -l /var/lib/clamav/
を実行しながら、書き込みが収まるまで待ちましょう。
終わったら scan してみます。ウイルスのいそうなディレクトリ目がけて、えいやっと。
mike:~ % clamscan --recursive --infected --max-scansize=4000M /home/backup/luna-asus/masm/Mail/spam /home/backup/luna-asus/masm/Mail/spam/6369: Img.Dropper.PhishingLure-6329856-0 FOUND /home/backup/luna-asus/masm/Mail/spam/6759: Xls.Dropper.Generic-6595971-0 FOUND /home/backup/luna-asus/masm/Mail/spam/6907: Xls.Dropper.Generic-6595971-0 FOUND /home/backup/luna-asus/masm/Mail/spam/6370: Img.Dropper.PhishingLure-6329856-0 FOUND /home/backup/luna-asus/masm/Mail/spam/6131: Xls.Dropper.Generic-6595971-0 FOUND
おぉ、ちゃんと検出してくれました。
では cron に仕掛けてしましょう。
mike:~% sudo crontab -e 0 2 1 * * /usr/bin/clamscan --recursive --infected --max-scansize=4000M --exclude-dir='^/sys|^/dev|^/proc' / | syslog -t clamscan
毎月1日の午前2時からスキャンを開始するようにしました。 この家庭内サーバはアクティブに使ってるサーバではないので、 この程度の頻度で定期的にスキャンするだけで十分です。 また、realtime scan とかやる気は全くありません。
ただ、本当はメール通知くらいはしたいんですけどね。 SAV の時はやってました (そのチャンネルを使ってサービス終了通知が来たわけです)。
まとめ
さすが ClamAV は簡単でいいですね。
スキャンにかかる時間にも注目したいです。 SAV の時はファイルシステム全体のチェックに丸2日程かかってました。 毎月3日くらいになると通知メールが来てたわけですね。 ClamAV でどのくらいかかるのでしょうね。
インゲージではエンジニアを募集しています。以下のページからお願いします!