CentOS7にした理由は、講義で触ったことがあるからです。
Clam Anti Virus(clamav)は有名なアンチウイルスソフトで、yumでインストールできます。
今回はclamavを導入しようとして問題が起きたことを書きます。
下調べ
- 基本はアンチウィルスソフト導入を見ながら構築
- RPMforgeは導入済み(RPMforgeリポジトリ導入とCentOS7にサードパーティリポジトリの追加を見ながら)
- 本家Clamavのドキュメントを見ながら
やったこと
まず、RPMforgeリポジトリを入れるところから。
yum-plugin-prioritiesを入れて、これから追加するリポジトリに対してpriority(使用する優先度)をつけていく。これでリポジトリの中身が競合しないはず。
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
yum -y install yum-plugin-priorities
vi /etc/yum.repos.d/CentOS-Base.repo (標準リポジトリ設定ファイルを編集)
[base]
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
priority=1 ← 追加
#released updates
[updates]
name=CentOS-$releasever - Updates
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates
#baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
priority=1 ← 追加
#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras
#baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
priority=1 ← 追加
そして、RPMforgeを追加する。
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
yum -y install yum-plugin-priorities | |
vi /etc/yum.repos.d/CentOS-Base.repo (標準リポジトリ設定ファイルを編集) | |
[base] | |
name=CentOS-$releasever - Base | |
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os | |
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/ | |
gpgcheck=1 | |
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5 | |
priority=1 ← 追加 | |
#released updates | |
[updates] | |
name=CentOS-$releasever - Updates | |
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates | |
#baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/ | |
gpgcheck=1 | |
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5 | |
priority=1 ← 追加 | |
#additional packages that may be useful | |
[extras] | |
name=CentOS-$releasever - Extras | |
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras | |
#baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/ | |
gpgcheck=1 | |
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5 | |
priority=1 ← 追加 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm | |
rpm -ivh rpmforge-release-*.rpm | |
rm -f rpmforge-release-*.rpm | |
yum -y update rpmforge-release |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#epelリポジトリ追加 | |
yum -y install epel-release | |
vi /etc/yum.repos.d/epel.repo (enabled=0にする) | |
#remiリポジトリ追加 | |
rpm --import http://rpms.famillecollet.com/RPM-GPG-KEY-remi | |
rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm | |
vi /etc/yum.repos.d/remi.repo (enabled=0を確認) |
ここからが本番。
clamavを導入します。
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
yum -y install clamd | |
vi /etc/clamd.conf | |
User clamav | |
↓ | |
#User clamav ← 行頭に#を追加(root権限で動作するようにする | |
clamdソケットファイル格納ディレクトリ自動生成設定ファイル作成 | |
vi /etc/tmpfiles.d/clamd.conf | |
d /var/run/clamav 0755 root root - | |
自動起動設定 | |
systemctl start clamd | |
systemctl enable clamd | |
ウイルス定義ファイルの更新機能を有効にする | |
sed -i 's/^Example/#Example/g' /etc/freshclam.conf | |
ウイルス定義ファイルの最新化 | |
freshclam | |
これで、/etc/cron.daily/freshclamが毎日自動で行われる。 |
問題点
clamavをインストールしたからには、ウイルスを検知するはず。テストウイルスを用いた検知を行ってみます。
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
clamscan --infected --remove --recursive | |
----------- SCAN SUMMARY ----------- | |
Known viruses: 116966 | |
Engine version: 0.90.2 | |
Scanned directories: 5 | |
Scanned files: 35 | |
Infected files: 0 | |
Data scanned: 0.24 MB | |
Time: 31.298 sec (0 m 31 s) |
まずは、ウイルスがない状態で。
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
wget http://www.eicar.org/download/eicar.com | |
clamscan --infected --remove --recursive | |
----------- SCAN SUMMARY ----------- | |
Known viruses: 116966 | |
Engine version: 0.90.2 | |
Scanned directories: 5 | |
Scanned files: 35 | |
Infected files: 0 | |
Data scanned: 0.24 MB | |
Time: 31.298 sec (0 m 31 s) | |
(注意:この結果はコピペですが、実際に反応しませんでした。) |
なんで反応しないんだろう?単体でテストしても引っかかりません。あるぇー?
ここでこの問題の原因を予想します。
- もしかしたら方法が間違ってる?
- もしかしたら学科にUTMがあるから?
- もしかしたらバージョンが古い?
結果
1について、
友人に検証してもらった結果、できませんでした。
2について、
友人の環境で同じ方法で検証してもらいましたが、できませんでした。
3について、
調べた結果、バージョンが少しだけ古いですね。
というのも、最近RPMforgeリポジトリはメンテされてないらしいんです。
でも、epelを使ってもできないからな〜。
友人に検証してもらった結果、できませんでした。
2について、
友人の環境で同じ方法で検証してもらいましたが、できませんでした。
3について、
調べた結果、バージョンが少しだけ古いですね。
というのも、最近RPMforgeリポジトリはメンテされてないらしいんです。
でも、epelを使ってもできないからな〜。