組織のネットワークフォルダーでのウイルス活動の別の発生後、ウイルス対策保護について考えました。 これは、Debian Wheezyで実行されるSambaが担当するネットワークフォルダーです。
Googleに情報を求めて、現在関連する2つの方法を見つけました。
方法1-clamfsを使用する
Clamfsは、アンチウイルスで保護されたフォルダ(マウントポイント)と通常の(サービス)ディレクトリとの間で通信します。 保護されたディレクトリからファイルを読み取ろう(コピー)しようとすると、ファイルはclamav-daemonデーモンによってウイルスの存在を自動的にチェックされます。 その作業には、カーネルモジュールFUSEが必要です。
この方法は適切ですが、SambaはLXCコンテナーで回転しています。 FUSEカーネルモジュールとlxcコンテナ間の接続の安定性に自信がありませんでした(そして、ホストマシンに触れたくありませんでした-サービスがそこで回転しているだけでなく)、方法2に決めました。
方法2-samba vfs svsモジュール(Sambaウィルススキャナー)を使用する
svs開発者によると、このモジュールは理論的にはアンチウイルスをバックエンドとして使用できますが、現在サポートされているのはClamAVのみです。
Debian Wheezy(Samba 3.6.6)の例を使用して、このモジュールをインストールする方法を簡単に説明します。
1.)最初に必要なことは、clamavをインストールすることです
apt-get install clamav-daemon clamav-freshclam
データベースの更新
freshclam
悪魔を始める
/etc/init.d/clamav-daemon start
2.)svsリポジトリにモジュールがないため、モジュールをビルドするために必要なパッケージをインストールする必要があります
apt-get install build-essential qt4-make libqt4-dev
Sambaソートをダウンロードし、必要なヘッダーをコンパイルします
apt-get source samba cd samba-3.6.6/source3 ./configure ./make
svsモジュールのソースをsourceforgeから/ tmpディレクトリにダウンロードします。
解凍してコンパイル:
cd samba-3.6.6 bzcat /tmp/svs-0.1.4.tar.bz2 | tar xvf - cd svs qmake && make
svsモジュールをvfs sambaモジュールがあるディレクトリにコピーします。
32ビットシステムの場合:
cp --no-dereference libsvs*.so* /usr/lib/samba/vfs/
64ビットシステムの場合:
cp --no-dereference libsvs*.so* /usr/lib64/samba/vfs/
だから-モジュールが配置されているので、次の内容を含む構成ファイル/etc/samba/svs.iniを作成する必要があります。
[SVS] maxParallelScans=6 maxCachedResults=10000 statisticsLogInterval=500 statisticsLogThreadUtil=false clamdscanCommand=clamdscan postScanSleep=100 infectAction=quarantine quarantineDirectory=/home/viruses scanOnOpen=true scanOnClose=true turboMode=false maxScannerHeartbeatAge=0 maxQueuedRequests=24 waitPendingScans=false
パラメーターを分析しましょう。
maxParallelScans-並列スキャンの最大数(プロセッサコアの数を行いました)
maxCachedResults-キャッシュされた結果の最大数
statisticsLogInterval-スキャナーログのエントリー間のミリ秒単位の時間
statisticsLogThreadUtil-スレッド使用ログ
clamdscanCommand-clamavスキャンを開始するコマンド
postScanSleep-スキャンプロセスが「スリープ」する時間(ミリ秒単位)(clamavの負荷を減らすため)
infectAction-ウイルスが検出されたときのアクション。 値は「なし」、「削除」、「検疫」を取ることができます
quarantineDirectory-ウイルスが検出されたディレクトリ
scanOnOpen-ファイルを開くときにスキャンする
scanOnClose-ファイルを閉じるときにスキャンする
maxScannerHeartbeatAge-svsがキュー内の次のストリームでストリームを置換するまでの最大時間(ミリ秒)。 <'1000'の場合、このオプションは無効と見なされます。
maxQueuedRequests-キュー内の保留中のスキャン要求の最大数(4 X maxParallelScans)
waitPendingScans-スキャンがキューにリクエストされるまでスキャンセッションを閉じない
次に、sambaでvfs svsモジュールを有効にする必要があります。 これを行うには、オプションボールを設定に追加します
vfs objects = libsvs_clamav
さて、サンバを再起動しましょう
/etc/init.d/samba restart
それだけです これで、vfsモジュールsvsを使用してsambaにアクセスするためのウイルス対策スキャンの構成が完了しました。
現時点では、私のsamba + svsバンドルは2か月間中断することなく機能しています。
サーバーの負荷については、Xeon E31230では50人のユーザーが同時に作業している間、平均LA(負荷平均)は3を上回らないと言えます。
参照:
SVSモジュール開発者のreadme-sourceforge.net/p/svs/code/HEAD/tree/trunk/README
設定に非常に役立つ良い記事-scottlinux.com/2011/09/06/clamav-virus-on-access-scanning-for-samba-shares