はじめに
Windows Server 2008R2で定期的(AM4時)にIISを再起動をしているのですが、不定期にIIS Adminサービスが正常に起動出来ずに停止と起動を繰り返し、最終的には7時に正常にサービスが起動される現象が発生しています。
調査
某N社に問い合わせると、イベント・ログを送って欲しいとのことで送ったのですが、送ったイベント・ログでは原因が特定できないので、監査ポリシーの「プロセスの追跡」を設定して欲しいとの依頼がありました。
設定するとプロセスの開始と終了をイベント・ログのセキュリティに記録されるようになるとのこと。
しかし、この設定するのをためらいました。
現行動作しているシステムでは、プロセスの開始と終了が日中かなり頻繁に行われているため、少ないとはいえ負荷がかかることとイベント・ログが膨れ上がるためです。
時間制限
監査ポリシーの「プロセスの追跡」の有効・無効をプログラムで制御が出来れば、発生している期間は4:00~7:00なので日中動かす必要がなくなります。
ネットで検索すると「auditpolコマンド」で制御できることが分かった。
バッチ
下記のバッチを作成した。
タスクスケジューラーで「プロセス開始」と「プロセス監視の停止」の2つを作成した。「プロセス監視の開始」では引数に”START”をセットする。
発生している期間は4:00~7:00なので、開始時間は3:55、停止時間は7:05とした。
@ECHO OFF
IF "%1" == "START" (
call :SetConf enable
) ELSE (
call :SetConf disable
)
exit 0
:SetConf
auditpol /set /subcategory:"プロセス作成" /success:%1
auditpol /set /subcategory:"プロセス終了" /success:%1
exit /b
原因
木曜日に仕掛けると週明けの月曜日に早速発生したので、某N社にイベント・ログを送ったところ、ウィルスバスターのあるサービスがIIS Adminサービスと同じタイミングで動作しているとのこと。
しかしながら、ウィルスバスターのあるサービスを停止するわけにいかないと思っており、そのままにしている。
終わりに
現状では解決できていないが、この記事の目的はタイトル通りなので、また何か進展があれば追記したいと思います。