今回、自前のサーバにClamAVと言うアンチウィルスソフトを導入した。
基本的にパッケージをインストールしてやるだけで良い。
dnf install epel-release
でEPELのリポジトリを追加してやり、
dnf install clamav clamav-update clamd
でパッケージをインストールしてやれば良い。
その後、freshclamコマンドでウィルス定義データベースを初回作成し
systemctl start clamd@scan
でデーモンが有効になる。
後はclamdscan /root の様にコマンドを打つとウィルスチェックが出来る。
今回のClamAVのセットアップは2回目になるのだが、前回インストールしたときは問題なく動作したのに、今回は何故かエラーが出て困った。
clamdscan /home ってhomeフォルダをチェックすると
「/home: File path check failure: Permission denied. ERROR」 というエラーになり、
ネットで検索した情報によりclamdscan –fdpass /home と打つと良いようなのだが、
「LibClamAV Error: File tree walk aborted.」と言うエラーが出る
ファイルを直接指定して、clamdscan –fdpass /bin/ab って打つと問題ないのだが、これだと使い勝手が悪い。
ワイルドカードを使用して clamdscan –fdpass /bin/* の様に打てばそのフォルダを全部チェック出来るが、何故か errors が117も出る。
「no reply from clamd」というエラーだ。
色々とググってみたのだが、海外の情報を翻訳して読んでみると、どうもSELinuxが悪さをしているっぽい。
色々と調べてみたら、「SELinuxが有効な場合は、antivirus_can_scan_system
をon
にする。」とある
setsebool -P antivirus_can_scan_system on
とコマンドを打って有効にすれば良い
この設定をすると、今度は何のエラーもなくウィルスチェックが完了する。
clamdscan /homeの様にコマンドを打っても問題が無いようだ。
これで無事にClamAVがインストール出来た。
何かにつけて不具合が出るとき、SELinuxが絡んできて、ちょっとやっかいな機能だ。
セキュリティ確保の観点からは必要なのだろうけど。
何か不具合が起きたらSELinuxを疑え、と言うのがセオリーになりそうだ。
コメント