【Ubuntu】ウィルス対策。ClamTkが上手く動作しないときの対処あれこれ。

巷では相変わらず、Windows に感染するウィルスが猛威を振るっているようです。

ほぼ Ubuntu しか使っていない自分にとっては関係のない話に聞こえるかもしれないけれど、例えば Windows を標的としたウィルスが添付されたメールを誰かに転送してしまって…、などというパターンで感染拡大に加担してしまうことも無きにしも非ず。

ということで、Linux 定番のウィルス検知・除去ツール・ClamTk(コマンドラインツール・ClamAV のGUIフロントエンド)を久しぶりに走らせてみようと考えたのですが…。

うちの環境は Xubuntu 16.04.1 / ClamAV 0.99 / ClamTk 5.24 。
ClamAV は公式リポジトリから apt でインストール。
ClamTk は公式サイトから最新版の .deb をダウンロードしてインストール。

そう言えばこの ClamTK、以前から、

  1. 「脅威の検出」はできるが「駆除」ができない
  2. メールの添付ファイルに含まれるウィルスを検知してくれない

…という症状が出て今いち使えなかったんだ、ということを思い出したのです。

で、この機会にこれらの不具合に対処してみましょ。

1. 「脅威の検出」はできるが「駆除」ができない問題を Fix する。

これはどうやら、マルチバイト文字の扱いでエラーが出ることが原因っぽい。

Ubuntu日本語フォーラムの記事によると、日付/時刻を英語フォーマットで扱うようにすれば回避可能のようです。

修正方法としては、

  • 上記の記事で紹介されているように「日付のロケールを変更してから ClamTk を起動する」というデスクトップ(ショートカット)ファイルを作成して、そこから起動する。

あるいは、

  • ClamTk のソースに直接変更を加える

    ClamTk の本体をエディタで開いて…

    sudo nano /usr/bin/clamtk

    42行目あたりの

    setlocale( LC_ALL, '' );

    の後ろに、

    setlocale( LC_TIME, 'C' );

    を追加。

と、これで大丈夫。

2. メールの添付ファイルに含まれるウィルスを検知してくれない。

こちらは、初期状態で「メールをスキャンする」というオプションがオフになっているのが原因です。

こちらもコードを直接修正してみます。

/usr/share/perl5/ClamTk/Scan.pm というファイルをテキストエディタで開きます。

sudo nano /usr/share/perl5/ClamTk/Scan.pm

190行目あたりの

# Try to avoid scanning emails...
$directive .= ' --scan-mail=no';

を、

$directive .= ' --scan-mail=yes';

に変更して保存。

これでメールのスキャンが実行されるようになります。

さぁ Linux でも、ウィルス対策に勤しみましょ。

カテゴリ: