WSUSでの運用を始めて半年が経過しました。月例パッチの適用率の向上もさることながら運用も軽減されました。WSUSの適用前は、プロキシ環境下でのWindows Updateの自動更新サービスの適用には苦労しました。
当時、調査した内容を簡単に紹介します。
スポンサーリンク
自動更新サービスの仕組み
簡単にまとめます。ここを理解してしまえば簡単です。
- 自動更新サービス(Webアクセスも含む)では、バックグラウンド インテリジェント転送サービス(以下、BITS)を使用します。
- BITSは、下記の順番でプロキシを解決します。
- 自動更新サービスは、[Local System]アカウントで実行される。
- WinHTTPでは、自動構成を指定することができない。
a.自動構成(WPADやpacファイル)で指定したプロキシサーバー
b.WinHTTP で指定したプロキシサーバー
c.直接接続(プロキシサーバー無しと判断)
pacファイルの利用が曲者
私のところではpacファイルで運用しています。
※ネットワーク管理者に訪ねてみるとDNSやらDHCPが煩わしかったようです。
結果的にpacファイルが仇となり、プロキシの解決ができていませんでした。
- PAD運用のケース
- プロキシをホスト名もしくはIP指定の運用ケース
- pacファイル運用のケース
自動更新サービスでは、IEの設定に関係なくWPADでの解決を試みます。
プロキシ環境下ではないケースと同様にクライアント側には特別な設定は要りません。
IEのプロキシ設定ではなく、WinHTTPのプロキシ設定が必要になります。
WinHTTPはシステムで一つの設定ですので、[Local System]アカウントで実行される自動更新サービスでも使用できます。
WinHTTPの設定方法は下記記事を参照ください。
OS別のWinHttpプロキシの設定方法
[pacファイル運用のケース]の方法でも解決することが可能です。
WinHTTPは、自動更新スクリプトの設定ができないため、pacファイルでプロキシの解決を行えません。また[Local System]アカウントには一般的な方法ではIEの設定を行うことができません。
以上のことから、pacファイルで運用しているケースが曲者なのです。
回避するには、[Local System]アカウント対してIEのプロキシ設定する必要があります。
設定方法は2種類あります。
方法1 コンピュータ別にIEのプロキシを設定する
コンピュータ別にプロキシを設定する方法
方法2 ATコマンドを利用して[Local System]アカウントのIEのプロキシを設定する
この方法は、時間が経つと設定したことを忘れてしまいそうなので、おすすめはしません。
@IT:Security Tips > プロキシ環境下でWindowsの自動更新を有効にする
これでほぼ解決すると思います。
当時は悩まされましたが、自動更新サービスの仕組みを理解していれば難しい問題ではなかったようです。
参考サイト
Windows Update クライアントが Windows Update Web サイトへの接続に使用するプロキシ サーバーを決定するしくみ