2011818

兵ちゃん

第9回 Linuxのウイルス対策について
兵ちゃんの研究室へ戻る

 

 コンピュータウイルのほとんどはMS WindowsをターゲットにしているのでLinuxはほとんど影響はありません。しかし、スマートフォンに使われているLinuxAndroidの普及によりコンピュータウイルスが新たに登場してLinuxも影響するようになってきました。そこで、一番簡単なLinuxUbuntu 11.04(ウブントゥ)を使いLinuxのウイルス対策の方法を紹介したいと思います。



1.Linux向けウイルス対策ソフト

 Linux向けウイルス対策ソフトは主に有料の「商用版」、「商用版をベースにした無償版」、「フリーのオープンソース版」の3種類に分類できます。また、用途によってはGUIを持っていないコマンドラインで使うサーバー向けのサーバー版と、GUIを搭載したデスクトップパソコン向けのデスクトップ版、両方に対応しているものに分けることができます。

 「商用版」を提供しているのは、トレンドマイクロやエフセキュアといった大手が提供しています。用途としてはサーバー向けでライセンス料も高額になっています。

 「商用版をベースにした無償版」はオランダのAVG Technologies社やチェコ共和国のAVAST Software社がデスクトップパソコン向けに提供していす。

 「フリーのオープンソース版」は、オープンソースで開発、配布されているのは「Clam AntiVirus」だけです。用途はGUIが無い状態でそのまま使えばサーバー向けに使えて、GUIを追加してデスクトップパソコン向けに使われます。


 無償で使えるウイルス対策ソフトは次のとおりです。


製品名

会社名

APTでのインストール

debパッケージ

URL

Avast! Linux Home Edition

チェコ共和国AVAST Software

×

http://www.avast.co.jp/linux-home-edition

AVG Anti-Virus Free Edition

オランダAVG Technologies

×

http://free.avg.co.jp/download/files/alf

Avira AntiVir Personal

ドイツAvira

×

×

http://www.avira.com/ja/support-download-free-antivirus

Clam AntiVirus

Tomasz Kojm開発元

http://www.clamav.net/lang/en/download/

F-PROT Antivirus

アイルランドFRISK Software International

×

×

http://www.f-prot.com/download/home_user/download_fplinux.html

2.コンピュータウイルス対策ソフトの導入

 ここでは、Ubuntu 11.04デスクトップにもっとも手軽な「Clam AntiVirus(ClamAV)」をインストールします。標準リボジトリから簡単にインストールできます。 ClamAVはウイルス対策ソフトとして定評がありMS WindowsMac版などもあります。ただし ClamAVはウイルス検知・駆除機能「アンチウイルスエンジン」とコマンドから操作する機能(フロントエンド)しか持っていません。そのため、GUIを持つフロントエンドを加えたり、ウイルス定義ファイルの自動更新、リアルタイムのスキャン、スケジールによるスキャンを実現するには多くの関連パッケージを導入する必要があります。Ubuntuでは「Ubuntuソフトウェアセンター」で「clam」と入力して検索するとClamAVが「ウイルススキャナ(Virus Scanner)」という名前で表示されるので「インストール」ボタンをクリックしてインストールする。そうすると「ClamTk」と「freshclam」も同時にインストールされる。


プログラム名

機能

ClamAV (本体)

ウイルス検知・駆除機能・コマンドから操作する機能

ClamTk

GUIフロントエンド

ClamFS

リアルタイムスキャン

freshclam

定義ファイルの自動更新


(1)機能の拡張

 ClamTKのメイン画面で「ホーム」「ファイル」「ディレクトリ」のいずれかをクリックすれば、ウイルスの検索が始まる。その際ウイルス定義ファイルのバージョンを確認しておく。ClamAVをインストールしたときに一度だけ定義ファイルが更新されます。スケジュールスキャンや、ウイルス定義ファイルの自動更新を設定するにはメニューから「拡張」、「スケジュール」を選択する。設定ウインドウを開いたあと「+」をクリックしてスケジュールを追加する。


(2)最新版を利用する

 標準リポジトリで提供されるClamAVClamTkは古くなっています。ClamAVのアップデートをする場合「PPA」リポジトリを追加する。PPAPersonal Package Archivesの略で、最新パッケージや実験的なソフトを提供しています。ClamAVPPAリボジトリを追加するには次のようにします。

 端末にコマンドを入力して[Enter]キーを押します。


sudo add-apt-repository ppa:ubuntu-clamav/ppa


 「アップデート・マネージャ」を起動して強制アップデートするか、次のように「apt-get」コマンドで手動アップデートすれば、最新のClamAVに置き換わります。


 端末にコマンドを入力して[Enter]キーを押します。


sudo apt-get update

sudo apt-get upgrade


 ClamTkを更新するには、「http://sourceforge.net/projects/clamtk/files/ClamTk/」にアクセスし、パッケージファイルを直接ダウンロードします。7月の時点での最新版のファイル名は「clamtk_4.34-1_all.deb」です。ダウンロードできたら当該ファイルのところまで移動します。移動したら次のコマンドを使いインストールします。


 端末にコマンドを入力して[Enter]キーを押します。


cd ダウンロード

sudo dpkg -i clamtk_4.34-1_all.deb


ClamAVClamTkとを更新したらClamTkの画面の表示が変わります。あと、「アプリケーション」のメニュー「ウイルススキャナ」から「ClamTk」に変わります。


(3)リアルタイムスキャン

 ダウンロードしたファイルやコピーしたファイルをリアルタイムでウイルスを検索するには「ClamFS」を使います。ClamFSをインストールするにはUbuntuソフトウェアセンターで「clamfs」でパッケージを検索します。インストールが完了したらリアルタイムで検索するディレクトリをマウントします。マウントとはディレクリの下に他のディレクトリを置くことを言います。tempディレクトリの例は次のようになります。


 端末にコマンドを入力して[Enter]キーを押します。


設定ファイルの用意

cd /usr/share/doc/clamfs/

sudo gzip -d clamfs-sample.xml.gz

sudo cp clamfs-sample.xml clamfs.xml


マウントポイントの作成

sudo mkdir -p /clamfs/tmp


ClamFSの起動

sudo clamfs /etc/clamfs.xml


 一番肝心なホームディレクトリをリアルタイムスキャンするには次のようになります。


設定ファイルの用意

cd /usr/share/doc/clamfs/

sudo cp clamfs.xml clamfs_home.xml


マウントポイントの作成

sudo mkdir -p /clamfs/home


ClamFSの起動

sudo clamfs /usr/share/doc/clamfs/clamfs_home.xml


clamfs_home.xml ファイルの修正

sudo gedit /usr/share/doc/clamfs/clamfs_home.xml

clamfs_home.xml ファイルの修正内容

修正前 <filesystem root="/tmp" mountpoint="clamfs/temp" public="yes" />

修正後 <filesystem root="/home" mountpoint="clamfs/home" public="yes" />



3.メールのセキュリティ対策

 Ubuntuでは標準のメールソフトは「Evolution」を使います。 Evolutionではメールをリアルタイムでウイルスチェックする機能はありません。そこで、ClamAVとシェルスクリプト(テキストファイル)を使ってウイルスに感染したメールを識別します。

mail_check_clam.sh」というファイル名でシェルスクリプトを作ります。内容は次のようになります。

#!/bin/bash


TMP='mktemp -t mailcheck_XXXXXXXXXX.tmp' || exit 1 #一時ファイルの作成

RTN=0 #戻り値


/usr/bin/clamdscan – 1>$TMP #ウイルススキャン


if [ $? -eq 1 ];then #検知の場合

MSG=$(grep "FOUND" $TMP |cut -d: -f2)

/usr/bin/zenity –warning –title="ウイルス検知" –text="$MSG" &

RTN=2

fi


rm -f $TMP #一時ファイルの削除


exit $RTN

 シェルスクリプトができたら実行権を設定する。

chmod +x mail_check_clam.sh


 Evolutionの「編集」メニューから「フィルタの定義」を選択し、ルールを追加する。受信、送信ともにフィルタの定義を行う。シェルスクリプトは「ウイルス検知」フォルダに分別するようにアクションを指定しているため、フィルタリングを行う前に、あらかじめフォルダを作っておく。今回用意したルールはウイルスを検知するところまでなので、送受信されてしまいます。発見後は手動で削除してください。



4.Firefoxのセキュリティ対策

 UbuntuではFirefoxを標準のブラウザとしています。Firefoxはアドオンで機能を拡張でき、セキュリティ関係のものも多いです。


(1)ダウンロードファイルの検知

 「Fireclam」アドオンはClamAVと連携してダウンロードしたファイルを自動的にウイルス検査を行います。アドオンを追加するにはFirefoxの「ツール」メニューから「アドオン」を選択して「アドオンマネージャ」を表示して「clam」とキーワードを検索して「Fireclam」アドオンを探します。アドオンが見つかったら「インストール」をクリックしてインストールします。このアドオンはファイルの削除まではやってくれません。従って検出したメッセージが表示されたら手動で該当ファイルを削除してください。


(2)リンクのチェック

 webページ内にあるリンク先が安全なサイトかどうか確認したい場合は、「Dr.Web anti-virus link checker」を使います。Dr.Web社のデーターベースを使い、リンク先のサイトが詐欺サイトかフィッシングサイトでないか閲覧前に確認ができます。FirefoxのアドインマネージャでインストールしてFirefoxを再起動すると有効になります。リンク先にマウスポインタを移動させて右クリックするとメニューが表示されて「Dr.Webで検索」を選ぶことでリンクのチェックをすることができます。



 これでLinux MS Windowsパソコンと同じようにウイルス対策ができます。元々Linuxにはウイルスがいなかったので少々手間がかかります。


参考URL

日経Linux 20119月号


Ubuntu 11.04 (Natty Narwhal)

http://mirror.mcs.anl.gov/pub/ubuntu-iso/DVDs/ubuntu/11.04/release/


その他・・・色々

5