・Rocky Linux8.8にウィルス対策ソフト「Clam AntiVirus」をインストールする手順を知りたい。
・具体的な手順を分かりやすく教えてほしい。
こういった疑問に答えます。
本記事の内容
- Rocky Linux8.8にウィルス対策ソフト「Clam AntiVirus」をインストールする手順
この記事を書いている私は、某SIerに勤務しながら、
WEB系エンジニア・インフラエンジニアに憧れて、プログラミングおよびインフラ技術の勉強をしています。
こういった私が、解説していきます。
私が実機で試したコマンドや画像を載せて書いています。
記事の信頼性担保に繋がると思います。
Rocky Linux8.8にウィルス対策ソフト「Clam AntiVirus」をインストールする手順
手順① epelリポジトリの追加
dnf install epel-release
[root@SV-VEGA ~]# dnf install epel-release メタデータの期限切れの最終確認: 2:03:42 前の 2023年06月21日 14時42分44秒 に実施しました。 依存関係が解決しました。 ==================================================================================================== パッケージ アーキテクチャー バージョン リポジトリー サイズ ==================================================================================================== インストール: epel-release noarch 8-18.el8 extras 24 k トランザクションの概要 ==================================================================================================== インストール 1 パッケージ ダウンロードサイズの合計: 24 k インストール後のサイズ: 35 k これでよろしいですか? [y/N]: y パッケージのダウンロード: epel-release-8-18.el8.noarch.rpm 20 kB/s | 24 kB 00:01 ---------------------------------------------------------------------------------------------------- 合計 14 kB/s | 24 kB 00:01 トランザクションの確認を実行中 トランザクションの確認に成功しました。 トランザクションのテストを実行中 トランザクションのテストに成功しました。 トランザクションを実行中 準備 : 1/1 インストール中 : epel-release-8-18.el8.noarch 1/1 scriptletの実行中: epel-release-8-18.el8.noarch 1/1 Many EPEL packages require the CodeReady Builder (CRB) repository. It is recommended that you run /usr/bin/crb enable to enable the CRB repository. 検証 : epel-release-8-18.el8.noarch 1/1 インストール済み: epel-release-8-18.el8.noarch 完了しました!
手順② 「Clam AntiVirus」をインストール
dnf install clamav clamav-server-systemd clamav-update clamav-scanner-systemd
[root@SV-VEGA ~]# dnf install clamav clamav-server-systemd clamav-update clamav-scanner-systemd Extra Packages for Enterprise Linux 8 - x86_64 5.4 MB/s | 16 MB 00:02 メタデータの期限切れの最終確認: 0:00:05 前の 2023年06月21日 16時47分50秒 に実施しました。 依存関係が解決しました。 ==================================================================================================== パッケージ アーキテクチャー バージョン リポジトリー サイズ ==================================================================================================== インストール: clamav x86_64 0.103.8-3.el8 epel 339 k clamav-update x86_64 0.103.8-3.el8 epel 131 k clamd x86_64 0.103.8-3.el8 epel 126 k 依存関係のインストール: clamav-filesystem noarch 0.103.8-3.el8 epel 47 k clamav-lib x86_64 0.103.8-3.el8 epel 863 k libprelude x86_64 5.2.0-1.el8 epel 326 k libtool-ltdl x86_64 2.4.6-25.el8 baseos 57 k トランザクションの概要 ==================================================================================================== インストール 7 パッケージ ダウンロードサイズの合計: 1.8 M インストール後のサイズ: 169 M これでよろしいですか? [y/N]: y パッケージのダウンロード: (1/7): clamav-filesystem-0.103.8-3.el8.noarch.rpm 383 kB/s | 47 kB 00:00 (2/7): clamav-0.103.8-3.el8.x86_64.rpm 1.7 MB/s | 339 kB 00:00 (3/7): clamav-update-0.103.8-3.el8.x86_64.rpm 2.8 MB/s | 131 kB 00:00 (4/7): clamd-0.103.8-3.el8.x86_64.rpm 2.5 MB/s | 126 kB 00:00 (5/7): clamav-lib-0.103.8-3.el8.x86_64.rpm 3.8 MB/s | 863 kB 00:00 (6/7): libprelude-5.2.0-1.el8.x86_64.rpm 3.6 MB/s | 326 kB 00:00 (7/7): libtool-ltdl-2.4.6-25.el8.x86_64.rpm 81 kB/s | 57 kB 00:00 ---------------------------------------------------------------------------------------------------- 合計 1.0 MB/s | 1.8 MB 00:01 Extra Packages for Enterprise Linux 8 - x86_64 1.6 MB/s | 1.6 kB 00:00 GPG 鍵 0x2F86D6A1 をインポート中: Userid : "Fedora EPEL (8) <epel@fedoraproject.org>" Fingerprint: 94E2 79EB 8D8F 25B2 1810 ADF1 21EA 45AB 2F86 D6A1 From : /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-8 これでよろしいですか? [y/N]: y 鍵のインポートに成功しました トランザクションの確認を実行中 トランザクションの確認に成功しました。 トランザクションのテストを実行中 トランザクションのテストに成功しました。 トランザクションを実行中 準備 : 1/1 scriptletの実行中: clamav-filesystem-0.103.8-3.el8.noarch 1/7 インストール中 : clamav-filesystem-0.103.8-3.el8.noarch 1/7 インストール中 : libtool-ltdl-2.4.6-25.el8.x86_64 2/7 scriptletの実行中: libtool-ltdl-2.4.6-25.el8.x86_64 2/7 インストール中 : libprelude-5.2.0-1.el8.x86_64 3/7 scriptletの実行中: libprelude-5.2.0-1.el8.x86_64 3/7 インストール中 : clamav-lib-0.103.8-3.el8.x86_64 4/7 インストール中 : clamav-update-0.103.8-3.el8.x86_64 5/7 scriptletの実行中: clamav-update-0.103.8-3.el8.x86_64 5/7 インストール中 : clamav-0.103.8-3.el8.x86_64 6/7 scriptletの実行中: clamav-0.103.8-3.el8.x86_64 6/7 scriptletの実行中: clamd-0.103.8-3.el8.x86_64 7/7 インストール中 : clamd-0.103.8-3.el8.x86_64 7/7 scriptletの実行中: clamd-0.103.8-3.el8.x86_64 7/7 検証 : libtool-ltdl-2.4.6-25.el8.x86_64 1/7 検証 : clamav-0.103.8-3.el8.x86_64 2/7 検証 : clamav-filesystem-0.103.8-3.el8.noarch 3/7 検証 : clamav-lib-0.103.8-3.el8.x86_64 4/7 検証 : clamav-update-0.103.8-3.el8.x86_64 5/7 検証 : clamd-0.103.8-3.el8.x86_64 6/7 検証 : libprelude-5.2.0-1.el8.x86_64 7/7 インストール済み: clamav-0.103.8-3.el8.x86_64 clamav-filesystem-0.103.8-3.el8.noarch clamav-lib-0.103.8-3.el8.x86_64 clamav-update-0.103.8-3.el8.x86_64 clamd-0.103.8-3.el8.x86_64 libprelude-5.2.0-1.el8.x86_64 libtool-ltdl-2.4.6-25.el8.x86_64 完了しました!
手順② ウィルス定義ファイルの更新
更新用の設定ファイル変更
vi /etc/freshclam.conf
[root@SV-VEGA ~]# vi /etc/freshclam.conf
148 # Send the RELOAD command to clamd. 149 # Default: no 150 #NotifyClamd /path/to/clamd.conf 151 NotifyClamd /etc/clamd.d/scan.conf ★★追記
ウィルス定義ファイルの更新
freshclam
[root@SV-VEGA ~]# freshclam ClamAV update process started at Wed Jun 21 16:49:46 2023 daily database available for download (remote version: 26945) Time: 6.4s, ETA: 0.0s [========================>] 58.69MiB/58.69MiB Testing database: '/var/lib/clamav/tmp.463aefc6af/clamav-4b7cb67ee4ee371c9c949a1080f49b77.tmp-daily.cvd' ... Database test passed. daily.cvd updated (version: 26946, sigs: 2037537, f-level: 90, builder: raynman) main database available for download (remote version: 62) Time: 17.5s, ETA: 0.0s [========================>] 162.58MiB/162.58MiB Testing database: '/var/lib/clamav/tmp.463aefc6af/clamav-cd4573245c4a499c7325e2e6cb8a1f1d.tmp-main.cvd' ... Database test passed. main.cvd updated (version: 62, sigs: 6647427, f-level: 90, builder: sigmgr) bytecode database available for download (remote version: 334) Time: 2.0s, ETA: 0.0s [========================>] 285.12KiB/285.12KiB Testing database: '/var/lib/clamav/tmp.463aefc6af/clamav-8e99158f78ac63a941255aedb95cf58c.tmp-bytecode.cvd' ... Database test passed. bytecode.cvd updated (version: 334, sigs: 91, f-level: 90, builder: anvilleg) ERROR: NotifyClamd: No communication socket specified in /etc/clamd.d/scan.conf ERROR: Can't send to clamd: Socket operation on non-socket
手順③ エラーが出ているので設定変更
vi /etc/clamd.d/scan.conf
[root@SV-VEGA tmp]# vi /etc/clamd.d/scan.conf
94 # Path to a local socket file the daemon will listen on. 95 # Default: disabled (must be specified by a user) 96 LocalSocket /run/clamd.scan/clamd.sock ★★コメント解除して有効化
217 # Run as another user (clamd must be started by root for this option to work) 218 # Default: don't drop privileges 219 #User clamscan ★★コメントアウトして無効化
手順④ 自動起動の設定
systemctl enable clamd@scan
systemctl start clamd@scan
[root@SV-VEGA ~]# systemctl enable clamd@scan Created symlink /etc/systemd/system/multi-user.target.wants/clamd@scan.service → /usr/lib/systemd/system/clamd@.service. [root@SV-VEGA ~]# systemctl start clamd@scan [root@SV-VEGA ~]# systemctl status clamd@scan ● clamd@scan.service - clamd scanner (scan) daemon Loaded: loaded (/usr/lib/systemd/system/clamd@.service; enabled; vendor preset: disabled) Active: active (running) since Wed 2023-06-21 16:52:45 JST; 27s ago Docs: man:clamd(8) man:clamd.conf(5) https://www.clamav.net/documents/ Main PID: 6547 (clamd) Tasks: 2 (limit: 12339) Memory: 1.2G CGroup: /system.slice/system-clamd.slice/clamd@scan.service mq6547 /usr/sbin/clamd -c /etc/clamd.d/scan.conf 6月 21 16:52:45 SV-VEGA clamd[6547]: ELF support enabled. 6月 21 16:52:45 SV-VEGA clamd[6547]: Mail files support enabled. 6月 21 16:52:45 SV-VEGA clamd[6547]: OLE2 support enabled. 6月 21 16:52:45 SV-VEGA clamd[6547]: PDF support enabled. 6月 21 16:52:45 SV-VEGA clamd[6547]: SWF support enabled. 6月 21 16:52:45 SV-VEGA clamd[6547]: HTML support enabled. 6月 21 16:52:45 SV-VEGA clamd[6547]: XMLDOCS support enabled. 6月 21 16:52:45 SV-VEGA clamd[6547]: HWP3 support enabled. 6月 21 16:52:45 SV-VEGA clamd[6547]: Self checking every 600 seconds. 6月 21 16:52:45 SV-VEGA systemd[1]: Started clamd scanner (scan) daemon.
systemctl enable clamav-freshclam
systemctl start clamav-freshclam
[root@SV-VEGA ~]# systemctl enable clamav-freshclam Created symlink /etc/systemd/system/multi-user.target.wants/clamav-freshclam.service → /usr/lib/systemd/system/clamav-freshclam.service. [root@SV-VEGA ~]# systemctl start clamav-freshclam
手順⑤ テスト
clamdscan -c /etc/clamd.d/scan.conf --remove
[root@SV-VEGA ~]# clamdscan -c /etc/clamd.d/scan.conf --remove /root: OK ----------- SCAN SUMMARY ----------- Infected files: 0 Time: 0.060 sec (0 m 0 s) Start Date: 2023:06:21 16:54:42 End Date: 2023:06:21 16:54:42
手順⑥ cronで日次スケジュール実行の設定
vi /etc/cron.daily/clamdscan
[root@SV-VEGA ~]# cat /etc/cron.daily/clamdscan #!/bin/bash # 設定ファイル CONFIG=/etc/clamd.d/scan.conf # スキャン実行 # ※ウイルス検知時は隔離ディレクトリへ隔離 CLAMSCANLOG=`mktemp` QUARANTINEDIR=/tmp/clamdscan-quarantinedir-$(date +%Y%m%d) mkdir -p ${QUARANTINEDIR} clamdscan -c ${CONFIG} --move=${QUARANTINEDIR} / > ${CLAMSCANLOG} 2>&1 # ウイルス検知時のみroot宛にメール通知 if [ -z "$(grep FOUND$ ${CLAMSCANLOG})" ]; then rm -rf ${QUARANTINEDIR} else grep -A 1 FOUND$ ${CLAMSCANLOG} | mail -s "Virus Found in `hostname` => ${QUARANTINEDIR}" root fi # スキャンログをシスログに出力 cat ${CLAMSCANLOG} | logger -t $(basename ${0}) rm -f ${CLAMSCANLOG}
実行権限追加
[root@SV-VEGA ~]# chmod +x /etc/cron.daily/clamdscan
除外ディレクトリ設定
[root@SV-VEGA ~]# echo ExcludePath ^/tmp/clamdscan-quarantinedir-.*/ >> /etc/clamd.d/scan.conf [root@SV-VEGA ~]# echo ExcludePath ^/proc/ >> /etc/clamd.d/scan.conf [root@SV-VEGA ~]# echo ExcludePath ^/sys/ >> /etc/clamd.d/scan.conf
設定変更後の再起動
[root@SV-VEGA ~]# systemctl restart clamd@scan
参考にしたページ
参考書籍
Rocky Linux & AlmaLinux実践ガイド
LinuxにおけるITプロ向け定番書籍がRocky Linux 8 & AlmaLinux 8に対応
Rocky Linux 8 & AlmaLinux 8の運用管理にかかわるシステム管理者を対象に、
システム管理の基礎、ネットワーク、ストレージ、パフォーマンスチューニング、
バックアップ、障害対応など、
IT現場で役立つ幅広いシステム管理手法を網羅しています。
Rocky Linux 8 & AlmaLinux 8.5対応
Rocky Linux & AlmaLinux実践ガイド impress top gearシリーズ |