オープンソースソフトウェアを使用して、Dockerコンテナー内のファイルにウイルス対策のオンアクセススキャンソリューションを実装する必要があります。 Clamav On-Access は正常に機能しますが、いくつかの要件と制限があります。
この制限はありますか-「ホストから監視するときにコンテナイベントで機能しないことを通知する」、本当に存在するのですか、それともClamAVの設定を間違えただけですか? fanotifyがネームスペースでどのように機能するかについては深い知識はありませんが、カーネルの制限のように見えます。
更新:この制限の回避策はありますか?動的コンテナの性質上、/var/lib/docker/overlay2/container_id/merged
の追加は1つのオプションです。clamd.conf
は、すべてのコンテナイベントで更新する必要があります。ただし、パスを追加しても、ClamAVはコンテナー内の悪意のあるファイルを検出しません。
コンテナーごとにClamAVを実行すると、特に小さなコンテナーの場合、巨大なメモリオーバーヘッドが発生します。
リンク集:
パッチを当てたClamAVを使用したソリューションがあります。
OnAccessIncludePathをclamav-develメーリングリストに投稿したパッチで動作させることができました: https://lists.gt.net/clamav/devel/77347#77347 。
静的マウントにfanotifyを使用するプロセスと、/ var/lib/docker ephemeralマウントを監視するためにinotifyを使用するプロセスで終わりました。 2つのインスタンスがあることは、コンテナあたり1つよりもはるかに優れています。かなりの負荷テストを行い、メーリングリストにメールを送信した頃からパッチを運用しています。
ソフォスはうまくいきませんでしたが、すぐに諦めました。