Microsoft Forefrontの定義ファイルとか

MS純正なセキュリティ対策ソフト、軽い動作がステキと思う。
Windows Update経由で定義ファイルの更新は良い点でもあるし悪い点でもあると思う。
 
WSUSで更新させれば良いのだろうけど、瞬快で固めている関係もあってWSUSだとOSのhotfixも含むから使っているとイロイロとあるので使えるけど使いたくない。つまり使えない。

Forefront Server Security Management Console: よく寄せられる質問
Q. Forefront Server Security Management Console は定義ファイルの更新をどのように管理しますか?
A.
マイクロソフトでは、自社の Rapid Update Process を使用して、マイクロソフトのパートナーであるすべてのスキャン エンジン ベンダの Web サイトを監視し、新しいエンジンのバージョンと定義ファイルが入手可能になると、直ちにこれを更新、ダウンロード、および検証し、その後オンラインにポストします。Forefront Server Security Management Console は、Microsoft Update サイトに定期的にアクセスし、新たなエンジンや定義ファイルが利用可能になると、直ちにこれを自動的にダウンロードします。その後、環境内に展開されているすべての Forefront Security for Exchange ServerForefront Security for SharePoint、および Antigen に定義ファイルとエンジンの更新を配布します。これにより、すべての Forefront Server Security 製品が確実に最新状態に保たれます。

 
しかしMicrosoftの素晴らしいところは現在までのクライアント セキュリティの定義ファイル コピー プロシージャを使用して展開する方法というのが公開されているところ。
 

無理矢理な更新環境

常に起動しているXPにForefrontを入れて、定義ファイルのフォルダを共有すればいいんじゃね?と考えたけど甘かった。Forefrontの定義ファイルが入るフォルダが毎日変わってしまう。

配付側の定義ファイルの場所
C:\Documents and Settings\All Users\Application Data\Microsoft\Microsoft Forefront\Client Security\Client\Antimalware\Definition Updates\{ほにゃらら・・・}

「{」と「}」で括られたなんだかユニークな文字列になる。フォルダ名が変なヤツに共有設定を行うのは面倒なのでコピーでお茶を濁すことにした。
share_guidフォルダを作成し、「guid」で共有、ユーザー「kenmituo」を追加
 
share_guid.bat

配付側で定義ファイルを共有フォルダにコピー
cd C:\Documents and Settings\All Users\Application Data\Microsoft\Microsoft Forefront\Client Security\Client\Antimalware\Definition Updates\{*
copy *.* "C:\Documents and Settings\All Users\Application Data\Microsoft\Microsoft Forefront\Client Security\Client\Antimalware\Definition Updates\share_guid"
cd c:\tools
echo %date% %time% >> share_guid.txt

こいつをタスクに登録しておけば、おk(30分ごとに動いてくれると助かる)

 
定義ファイルを取りに行く側も強引なバッチを作る。
msff.bat

::@ECHO OFF
if exist t:\. net use t: /delete /yes
if not exist t:\. net use t: \\ikenie_xp.exsample.com\guid /user:kenmituo kenmituo
cd "%allusersprofile%\application DATA\MICROSOFT\MICROSOFT FOREFRONT\CLIENT SECURITY\CLIENT\ANTIMALWARE\DEFINITION UPDATES\UPDATES"
xcopy t: /r /d /y
net use t: /delete
::@ECHO ON
cd c:\wsd
echo %date% %time% >> msff.txt

これをタスクで動かすとコマンドプロンプトが一瞬表示されるのがいやーんなのでvbsファイルを噛ます
msff.vbs

Dim oShell
Set oShell = WScript.CreateObject ("WSCript.shell")
oShell.run "C:\tools\msff.bat",0
Set oShell = Nothing

たぶん更新されるはず。クライアントが一斉に生け贄XPに取りに行くことは無いはずだし。(クライアントが増えたら使えない姑息な手段だな、、、)
最近のサーバはみんな64bit版になってしまった。定義ファイルが32bitと同じだったらそっちが良いに決まっているけど同じかどうか調べきれなかった。