こんにちは、童爺です。
今回は、インストール後のCentOS7の設定について記述しようと思います。
キーボードの設定
最初は、半角全角キーを押下で、アルファベット⇔日本語入力の切り替えに関して、記述しようと思います。
まず、アプリケーション→システムツール→設定を起動して以下の画面を表示します。
「Region & Language」をダブルクリックします。
下図の赤丸の部分です。
そうすると下図の画面に遷移します。
赤丸で囲ってある、「日本語(かな漢字)」を選択し、「上矢印」をクリックして先頭に持ってきます。
上記の様になったら、「<」をクリックして、元の画面へ遷移します。
赤丸で囲った、Keyboardをダブルクリックします。
そうすると以下の画面へ遷移します。
下へスクロールしてください。
以下の設定に行きます。
上記赤丸で囲った「前の入力ソースへ切り替える」をクリックします。
以下の画面へ遷移します。
ここで、半角全角キーを押下します。
そうすると、以下の画面へ遷移します。
Zenkaku_Hankakuになっているのを確認したら、Setをクリックします。
以下の画面へ遷移します。
これで、半角全角キーで、日本語入力の切り替えが出来るようになりました。
「<」をクリックして、前の画面へ遷移します。
右上の「×」をクリックして終了します。
以上です。
CentOS7起動時に、ネットワーク接続する様に変更する。
私の環境では、起動時にネットワークに接続されず、ブラウザでネットサーフィンが出来ない状態でした。
そこで、起動時に自動的にネットワーク接続できるよう変更したいと思います。
アプリケーション→お気に入り→端末を選択して、端末を起動します。
以下の画面のように入力していってください。
私の環境では、赤丸で囲ったファイルにネットワークの接続設定が記述されているので、ファイルを開きます。
赤丸で囲った、「ONBOOT=no」になっている部分をyesに変更します。
viコマンドで開きます。
:wqで保存し、編集を終了します。
rebootして、ブラウザでネットサーフィンが出来るかチェックします。
無事、Yahoo!Japanを見る事ができました。
セキュリティソフトClamAVのインストール
このままでは、「ウィルスに感染し放題ですよ」状態なので、セキュリティソフトをインストールしたいと思います。
ソフトはClamAVです。
ですが、このままではClamAVはインストールできません。
それはサードパーティ製のソフトだからです。
そこで、サードパーティ製のソフトをインストールできるよう、EPELリポジトリをインストールします。
コマンドは、端末を開いて以下のコマンドを入力します。
ClamAVをインストールするにあたって試行錯誤した結果、画像をキャプチャーできませんでした。
申し訳ありません。
$ sudo yum -y install epel-release
続けて、リポジトリの内部を編集します。
理由は、誰でも彼でもサードパーティ製のソフトをインストールできるようになっている為です。
「yum install –enablerepo=epel」という風に、yumコマンドに–enablerepo=epelをオプションを付けないと、インストールできなくします。
以下のコマンドを入力します。
$ sudo vi /etc/yum.repos.d/rpmforge.repo
[rpmforge]
name = RHEL $releasever – RPMforge.net – dag
baseurl = http://apt.sw.be/redhat/el7/en/$basearch/rpmforge
mirrorlist = http://mirrorlist.repoforge.org/el7/mirrors-rpmforge
#mirrorlist = file:///etc/yum.repos.d/mirrors-rpmforge
enabled = 1←を0に変更します。
protect = 0
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmforge-dag
gpgcheck = 1
変更後↓
[rpmforge]
name = RHEL $releasever – RPMforge.net – dag
baseurl = http://apt.sw.be/redhat/el7/en/$basearch/rpmforge
mirrorlist = http://mirrorlist.repoforge.org/el7/mirrors-rpmforge
#mirrorlist = file:///etc/yum.repos.d/mirrors-rpmforge
enabled = 0
protect = 0
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmforge-dag
gpgcheck = 1
それでは、ClamAVをインストールしていきます。
$ sudo yum install –enablerepo=epel clamav-server \
clamav-data clamav-update clamav-filesystem \
clamav clamav-scanner clamav-scanner-systemd \
clamav-devel clamav-lib clamav-server-systemd
設定ファイルを編集する。
$ cd /etc/clamd.d/
$ sudo cp -p scan.conf scan.conf_20180220←年月日です。
$ sudo vi scan.conf
設定項目
設定項目 |
変更前 |
変更後 |
---|---|---|
Exampleのコメント化 |
Example |
#Example |
ログファイル設定 |
#LogFile /var/log/clamd.scan |
LogFile /var/log/clamd.scan |
ログファイルサイズ設定 |
#LogFileMaxSize 2M |
LogFileMaxSize 2M |
ログに時間を表示 |
#LogTime yes |
LogTime yes |
ログローテーション設定 |
#LogRotate yes |
LogRotate yes |
ローカルソケット使用設定(1行での設定となります) |
#LocalSocket /var/run/clamd.scan/clamd.sock |
LocalSocket /var/run/clamd.scan/clamd.sock |
異常終了時にソケットを削除 |
#FixStaleSocket yes |
FixStaleSocket yes |
スキャン除外ディレクトリ設定 |
#ExcludePath ^/proc/ |
ExcludePath ^/proc/ |
実行ユーザ設定 |
User clamscan |
User root |
clamd@scanを起動します。
$ sudo systemctl start clamd@scan
自動起動設定を行います。
$ sudo systemctl enable clamd@scan.service
freshclamの設定である/etc/freshclam.confを編集します。
$ sudo cp -p /etc/freshclam.conf /etc/freshclam.conf_20180220←年月日です
$ sudo vi /etc/freshclam.conf
設定項目
設定項目 |
変更前 |
変更後 |
---|---|---|
Exampleのコメント化 |
Example |
#Example |
ログファイル設定 |
#UpdateLogFile /var/log/freshclam.log |
UpdateLogFile /var/log/freshclam.log |
ログファイルサイズ設定 |
#LogFileMaxSize 2M |
LogFileMaxSize 2M |
ログに時間を表示 |
#LogTime yes |
LogTime yes |
ログローテーション設定 |
#LogRotate yes |
LogRotate yes |
データベースオーナー設定(2017.04.20追記) |
#DatabaseOwner clamupdate |
DatabaseOwner root |
ミラーデータベース設定 |
#DatabaseMirror db.XY.clamav.net |
DatabaseMirror db.jp.clamav.net |
clamd@scanへの更新通知 |
#NotifyClamd /path/to/clamd.conf |
NotifyClamd /etc/clamd.d/scan.conf |
手動でfreshclamを実行し、ウイルスデータベースが更新できることを確認します。
$ sudo freshclam -u root
テスト用ファイルをダウンロードして、ウィルスチェックが正常に動作するか確認する。
ダウンロードURLhttp://www.eicar.org/download/eicar.com
$ su –
# wget http://www.eicar.org/download/eicar.com
clamdscanが設定ファイルの場所を「/etc/clamd.conf」であると認識しているので、リンクを貼ります。
# ln -s /etc/clamd.d/scan.conf /etc/clamd.conf
ウイルススキャンを実行します。
# clamdscan /root
スキャン結果のメール通知が出来るようなスクリプトを作成して、それをcronから呼び出して定期スキャンを実行できるようにしていきます。
# vi virus_scan.sh
#!/bin/bash
SCANDIR=/
VIRUS_MVDIR=/root/virus
MAILADDR=”通知先のメールアドレス”
CLAMDSCAN=/bin/clamdscan
HOSTNAME=`hostname`
RUNDATE=`date +%Y%m%d-%H%M%S`
SCANTMP=/tmp/clamdscan_$RUNDATE
CLAMUPDATE=”clamav-server \
clamav-data \
clamav-update \
clamav-filesystem \
clamav \
clamav-scanner \
clamav-scanner-systemd \
clamav-devel \
clamav-lib \
clamav-server-systemd”
# ClamAV update
yum -y update –enablerepo=epel $CLAMUPDATE
# Virus scan
$CLAMDSCAN $SCANDIR > $SCANTMP 2>&1
#$CLAMDSCAN $SCANDIR –move=$VIRUS_MVDIR > $SCANTMP 2>&1
#$CLAMDSCAN $SCANDIR –remove > $SCANTMP 2>&1
# Mail notification
[ ! -z “$(grep FOUND$ $SCANTMP)” ] && \
cat $SCANTMP | mail -s “[Virus Found] $HOSTNAME $RUNDATE” $MAILADDR
[ -z “$(grep FOUND$ $SCANTMP)” ] && \
cat $SCANTMP | mail -s “[Virus Not Found] $HOSTNAME $RUNDATE” $MAILADDR
rm -f $SCANTMP
保存して終了します。
実行ファイルに変更します。
# chmod 744 /root/virus_scan.sh
# sh -x virus_scan.sh
ウイルススキャンの定期実行
# vi /etc/cron.d/virus-scan
以下の内容を貼り付ける。
#毎日AM3:15にスキャンを実行する。
MAILTO=root
15 3 * * * root /root/virus_scan.sh
保存して終了
rootアカウントから抜ける。
#exit
メールソフトをインストールする。
$sudo yum install mailx
<<—————-ここからが、迷走の始まりです。—————->>
ClamAVを再度インストールしてみる。
$ sudo yum install -y –-enablerepo=epel clamav
除外ディレクトリの追記(環境に応じて書き換える事)
$ sudo vi /etc/clamd.conf
#ExcludePath ^/proc/
#ExcludePath ^/sys/
↓↓
ExcludePath ^/proc/
ExcludePath ^/sys/
ExcludePath ^/dev/
保存して、終了します。
実行ユーザの変更(rootにする)
$ sudo sed -i ‘/^User clamav/s/^/# /g’ /etc/clamd.conf
壊れたファイルの除外設定
$ sudo sed -i ‘/^DetectBrokenExecutables yes/s/^/# /g’ /etc/clamd.conf
一旦SELinuxを有効にしてみる。
$ setsebool -P antivirus_can_scan_system 1
ソケットファイルの生成場所が再起動すると消えてしまうので、消えないようにする。
$ sudo echo “d /var/run/clamav 0755 root root -” > /etc/tmpfiles.d/clamd.conf
$ sudo systemd-tmpfiles –create clamd.conf
$ sudo systemctl daemon-reload
epelを導入している為、yum update時に競合して正常にアップデートされないので、以下のコマンドを実行しておく。
$ sudo sed -i ‘/gpgkey/a/exclude=clam*/g’ /etc/yum.repos.d/epel.repo
clamdを起動させる
$ sudo systemctl start clamd
$ sudo systemctl enable clamd
実際にスキャンしてみる。
$ sudo clamdscan
ウィルス定義ファイルの最新化と自動更新を行うように設定をする。
$ sudo sed -i ‘s/^Example/#Example/g’ /etc/freshclam.conf
$ sudo freshclam
スクリプトを作成してClamAVを定期的に実行させる。
$ sudo vi /etc/cron.daily/clamdvirusscan
#!/bin/bash
# PATH
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
# MAIL
MAIL_ADDR=”通知先のメールアドレス”
# clamd update
yum -y update clamd > /dev/null 2>&1
# virus scan
CLAMSCANTMP=`mktemp`
clamdscan –recursive –remove / > $CLAMSCANTMP 2>&1
[ ! -z “$(grep FOUND$ $CLAMSCANTMP)” ] && \
grep FOUND$ $CLAMSCANTMP | mail -s “$(hostname) Virus Found” $MAIL_ADDR
[ -z “$(grep FOUND$ $CLAMSCANTMP)” ] && \
echo “$(hostname) Virus Not Found” | mail -s “Virus Not Found” $MAIL_ADDR
rm -f $CLAMSCANTMP
保存して終了する。
$ sudo chmod +x /etc/cron.daily/clamdvirusscan
<<—————-さらに迷走が始まります—————->>
ClamAVを再再度インストールしてみる。
$ sudo yum install -y –-enablerepo=epel clamav
clamscanでウィルススキャンを実行します。
$ mkdir ~/virus
$ clamscan -r -i –move=$HOME/virus .
手動でウィルスデータベースを更新する
$ sudo yum install -y –-enablerepo=epel clamav-update
$ sudo freshclam
自動的にウィルスデータベースを更新する
$ sudo yum install -y –-enablerepo=epel clamav-update
$ sudo sed -e ‘s/^FRESHCLAM_DELAY/#FRESHCLAM_DELAY/g’ \
-i /etc/sysconfig/freshclam
ウィルスデータベースの更新間隔を変更するには以下のファイルを編集します。
/etc/cron.d/clamav-update
clamdでウィルススキャンを実行する
$ sudo yum install -y –-enablerepo=epel clamav-server \
clamav-server-systemd clamav-scanner
clamd.scan.serviceが読み込む/etc/clamd.d/scan.confを編集します。
$ sudo sed -e ‘s/^Example/#Example/g’ \
-e ‘s/^User.*/User root/g’ \
-e ‘s/^#LocalSocket /LocalSocket /g’ \
-e ‘s/^#LocalSocketGroup.*/LocalSocketGroup clamscan/g’ \
-e ‘s/^#LocalSocketMode /LocalSocketMode /g’ \
-e ‘s/^#FixStaleSocket /FixStaleSocket /g’ \
-e ‘s/^#ExcludePath /ExcludePath /g’ \
-i /etc/clamd.d/scan.conf
clamd.scan.serviceを有効にする。
$ sudo systemctl enable clamd.scan
clamdscanコマンドが利用する/etc/clamd.confを/etc/clamd.d/scan.confのシンボリックリンクにする。
$ sudo ln -s /etc/clamd.d/scan.conf /etc/clamd.conf
clamdの動作に必要なSELinuxの設定を許可します。
$ sudo setsebool -P antivirus_can_scan_system 1
$ sudo setsebool -P clamd_use_jit 1
clamdscanを実行するユーザをclamscanグループに所属させます。
$ sudo gpasswd -a “${USER}” clamscan
上記の設定を有効にする為、一旦、再起動します。
$ sudo reboot
https://dave-theunsub.github.io/clamtk/から、CentOS 7 rpm,のrpmの部分をクリックし、clamtkをダウンロードします。
ダウンロード先へ移動し、以下のコマンドを入力します。
自分の環境では、/home/mkawasaki/ダウンロード/配下にありました。
ClamTKをローカルインストールしてみる。
$ sudo yum localinstall -y –enablerepo=epel clamtk-5.25-1.el7.noarch.rpm
出来た!!
clamtk-5.25-1.el7.noarch.rpmは、2018年2月20日現在の最新です。
ダウンロードした最新のrpmパッケージで実行してください。
起動したところ。
まとめ
駆け足でしたが、どうでしょうか?
間違っている箇所や不具合があれば、コメントに記述していただけるとありがたいです。
特に、後半のClamAVのインストールに関しては、何度もやり直ししているのでぐちゃぐちゃです。
ClamTKをインストールできなくって、かなり悩みました。
迷走は、このClamTKをインストールするところから始まりました。
何故、何度も試した、「$ sudo yum localinstall -y –enablerepo=epel clamtk-5.25-1.el7.noarch.rpm」が、最後の最後で上手くいったのか解りません。
時間があれば、もう一度チャレンジしてみたいと思います。
それではまた。
でわでわ。
<<参考文献>>
server-memo.netさん
俺的備忘録 ~なんかいろいろ~さん
Narrow Escapeさん