Q

セキュリティ強化の一環として,社外へのWebアクセスは,必ずプロキシ・サーバーを経由するようにネットワーク構成を変更しました。しかし,設定を変更してから,WindowsXPクライアントでWindowsUpdateの通知メッセージが表示されなくなり,システムの自動更新ができなくなってしまいました。マイコンピュータにある[自動更新]タブを確認すると,[コンピュータを常に最新の状態に保つ]はきちんと有効になっています。もちろん,インターネットのプロパティでプロキシ関連は適切に設定してあり,Webブラウザからは問題なくアクセスできています。WindowsUpdateのサイトを直接指定してもきちんとアップグレード可能です。

A

質問の状況からすると,透過型プロキシではなく,各クライアントでプロキシ・サーバーを指定する,一般のプロキシを導入したものと思われます。WindowsUpdateを使っている環境にプロキシを導入する場合はhttps://v4.windowsupdate.microsoft.com/とい うサイトにSSLを使って接続できるようにしておく点に注意が必要です。しかし,Webブラウザから問題なく実行できるということは,このSSLの設定が原因ではありません。

プロキシの設定はアカウント単位
 今回の原因は,自動更新を実行するサービスを動作させるアカウントの問題です。プロキシをはじめとする,インターネットとの接続に関する設定はアカウント単位で管理されています。


△ 図をクリックすると拡大されます
図1●Automatic Updatesサービスの[ログオン]タブ

 Windowsの自動更新を実行しているAutomatic Updatesサービスは,ローカル・システム・アカウントを使っています(図1)。このため,マシンを使用している一般のユーザーがインターネットの設定をいくら修正しても,Windowsの自動更新で使っているローカル・システム・アカウントの設定には反映されないのです。

 Windowsの各アカウントのインターネット設定は,デフォルトでは[設定を自動的に検出する]が有効になっています。ローカル・システム・アカウントのインターネット設定も同様になっています。

 この設定では,クライアントはWPADというプロトコルを使ってプロキシの設定をWPADサーバーに問い合わせ,自動設定します。つまり,ネットワーク内でWPADプロトコルを使用したプロキシ構成を可能にすれば,Windowsの自動更新もプロキシ経由で使用可能になります。WPADを実現するには,DHCPサーバーを利用する方法や,グループ・ポリシーで設定する方法などが一般的です。


図2●Proxy自動構成ファイルを使ってプロキシを設定する
あらかじめ作成したスクリプト・ファイルをhttp://wpad.クライアントのドメイン名/wpad.datでアクセスできるようにWebサーバー上に置いておけばよい。ここでは,IPアドレスが192.168.10.1のプロキシ・サーバーで,3128のポートを利用している場合のスクリプト・ファイルを示している。

 こういった会社全体での対応が難しい場合は,簡易Webサーバーにスクリプト・ファイルを置いてもWPADが利用できます。Webサーバー上にファイルを用意して,そのファイルを「http://wpad.クライアントのドメイン名/wpad.dat」というURLでアクセスできるようにWebサーバーとクライアントを設定します(図2)。クライアントからはDNSやhostsファイルなどで名前解決できるようにしておけばよいでしょう。

 WPADを使う方法については,マイクロソフトのサポート技術情報(該当サイト)や,「WebブラウザのProxy設定を行うための4つの方法-WPADのススメ-」(該当サイト)などを参照してください。

ローカル・ポリシーでプロキシを設定
 GUIを使って比較的簡単に実現する方法としては,ローカル・コンピュータ・ポリシーがあります。


△ 図をクリックすると拡大されます
図3●ローカル・コンピュータ・ポリシーの設定を変更すると,プロキシの設定がローカル・システム・アカウントに反映される

 [ファイル名を指定して実行]などから「gpedit.msc」を実行してローカル・コンピュータ・ポリシーの画面を表示します。[コンピュータの構成]-[管理用テンプレート]-[Windowsコンポーネント]-[Internet Explorer]とたどり,[コンピュータ別にプロキシを設定する]という項目を[有効]にしてください(図3)。この設定をすると,そのコンピュータを利用する全ユーザーに対して同じプロキシ設定が利用されるようになります。

 この設定をした時点で,インターネットの設定はデフォルト状態に戻ってしまっています。しかし,改めてAdministrators権限のあるアカウントでプロキシの設定をすれば,その設定がローカル・システム・アカウントを含む全アカウントに適用され,結果としてWindowsの自動更新もプロキシ経由で実行されるようになります。

 このほか,筆者の方で確認したところ,レジストリ中のHKEY_USERS\S-1-5-18\Software\Microsoft\Windows\CurrentVersion\InternetSettings以下にあるローカル・システム・アカウントの設定を直接修正しても,インターネット接続の設定を変更することが可能でした。

 なお,図1の画面にある[デスクトップとの対話をサービスに許可]をチェックしても,自動更新時に対話的な操作はできません。そのため,プロキシ・サーバーで認証が必要な場合も,Windowsの自動更新が失敗してしまいます。これを回避するのは動作の原理から困難です。

高橋 基信