web-dev-qa-db-ja.com

レジストリ設定を無視するWSUSクライアント

WSUSをServer 2012 R2にインストールしました。インストールはサーバー側でうまくいきました。 Active Directory環境がないので、クライアントでレジストリ設定を使用する必要があります。次のレジストリ設定を使用しました:Windows Registry Editorバージョン5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate] 
"AcceptTrustedPublisherCerts"=dword:00000001 
"ElevateNonAdmins"=dword:00000001 
"TargetGroup"="Servers" 
"TargetGroupEnabled"=dword:00000000 
"WUServer"="http://serveripaddress:8530" 
"WUStatusServer"="http://serveripaddress:8530"

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU] 
"AUOptions"=dword:00000004 
"AUPowerManagement"=dword:00000001 
"AutoInstallMinorUpdates"=dword:00000001 
"DetectionFrequency"=dword:0000000a 
"DetectionFrequencyEnabled"=dword:00000001 
"IncludeRecommendedUpdates"=dword:00000001 
"NoAUAsDefaultShutdownOption"=dword:00000001 
"NoAUShutdownOption"=dword:00000001 
"NoAutoRebootWithLoggedOnUsers"=dword:00000001 
"NoAutoUpdate"=dword:00000000 
"RebootRelaunchTimeout"=dword:0000000a 
"RebootRelaunchTimeoutEnabled"=dword:00000001 
"RescheduleWaitTime"=dword:0000000a 
"RescheduleWaitTimeEnabled"=dword:00000001 
"ScheduledInstallDay"=dword:00000000 
"ScheduledInstallTime"=dword:00000003 
"UseWUServer"=dword:00000001

Regeditを実行して、設定がレジストリにあることを確認します。レジストリ設定を追加した後、私は実行しました:

wuauclt /reportnow
wuauclt /detectnow

テストクライアントのレポートが表示されるのを2日間待って、4台のサーバーと4台のデスクトップを使用しました。報告されたのは、1つのサーバーと1つのデスクトップの2つだけです。 WSUSで「サーバー」グループと「デスクトップ」グループを手動で作成しましたが、サーバーは「割り当てられていないコンピューター」に報告され、デスクトップは「すべてのコンピューター」に報告されました。他のどれもチェックインしませんでした。各マシンの%windir%\ WindowsUpdate.logを見ると、レジストリ設定が無視されているように見えました。
これらの行で報告されたサーバー(2008 R2)で目立った:

2017-08-12          18:13:12:040       852        f88          Agent      * WSUS server: http://serveripaddress:8530
2017-08-12          18:13:12:040       852        f88          Agent      * WSUS status server: http://serveripaddress:8530
2017-08-12          18:13:12:040       852        f88          Agent      * Target group: (Unassigned Computers)

しかし、レジストリはターゲットグループがデスクトップ上のサーバーであると述べています(Windows 10)PowershellでGet-WindowsUpdateLogを実行し、生成されたファイルを確認しました。これらのラインは際立っていました:

2017/08/13 00:00:14.5525097 1188  9088  Agent           [0]04A4.2380::08/13/2017-00:00:14.552 [agent]WSUS server: http://serveripaddress:8530
2017/08/13 00:00:14.5525101 1188  9088  Agent           [0]04A4.2380::08/13/2017-00:00:14.552 [agent]WSUS status server: http://serveripaddress:8530
2017/08/13 00:00:14.5525109 1188  9088  Agent           [0]04A4.2380::08/13/2017-00:00:14.552 [agent]Alternate Download Server: NULL
2017/08/13 00:00:14.5525117 1188  9088  Agent           [0]04A4.2380::08/13/2017-00:00:14.552 [agent]Fill Empty Content Urls: No
2017/08/13 00:00:14.5525121 1188  9088  Agent           [0]04A4.2380::08/13/2017-00:00:14.552 [agent]Target group: (Unassigned Computers)

繰り返しになりますが、ターゲットグループがレジストリのように「デスクトップ」である代わりに、「割り当てられていないコンピューター」と表示されます。この場合、[すべてのコンピューター]グループにありますが、WSUSサーバーの[割り当てられていないコンピューター]には表示されません。
WSUSサーバーにレポートしないコンピューターには、レジストリに関連するさまざまな問題があります。別のサーバー2008 R2は以下を報告します。

2017-08-13  00:18:12:188     880    1ba0    PT  WARNING: Cached cookie has expired or new PID is available
2017-08-13  00:18:12:188     880    1ba0    PT  Initializing simple targeting cookie, clientId = f47c77db-1416-44dd-88e7-6130b4f7a123, target group = , DNS name = data-server
2017-08-13  00:18:12:188     880    1ba0    PT    Server URL = http://serveripaddress/SimpleAuthWebService/SimpleAuth.asmx
2017-08-13  00:18:14:207     880    1ba0    Misc    WARNING: Send failed with hr = 80072efd.
2017-08-13  00:18:14:207     880    1ba0    Misc    WARNING: SendRequest failed with hr = 80072efd. Proxy List used: <(null)> Bypass List used : <(null)> Auth Schemes used : <>
2017-08-13  00:18:14:207     880    1ba0    Misc    FATAL: SOAP/WinHttp - SendRequest: SendRequestUsingProxy failed. error 0x80072efd
2017-08-13  00:18:14:207     880    1ba0    PT    + Last proxy send request failed with hr = 0x80072EFD, HTTP status code = 0
2017-08-13  00:18:14:207     880    1ba0    PT    + Caller provided credentials = No
2017-08-13  00:18:14:207     880    1ba0    PT    + Impersonate flags = 0
2017-08-13  00:18:14:207     880    1ba0    PT    + Possible authorization schemes used = 
2017-08-13  00:18:14:207     880    1ba0    PT  WARNING: GetAuthorizationCookie failure, error = 0x80072EFD, soap client error = 5, soap error code = 0, HTTP status code = 200
2017-08-13  00:18:14:207     880    1ba0    PT  WARNING: Failed to initialize Simple Targeting Cookie: 0x80072efd
2017-08-13  00:18:14:207     880    1ba0    PT  WARNING: PopulateAuthCookies failed: 0x80072efd
2017-08-13  00:18:14:207     880    1ba0    PT  WARNING: RefreshCookie failed: 0x80072efd
2017-08-13  00:18:14:207     880    1ba0    PT  WARNING: RefreshPTState failed: 0x80072efd
2017-08-13  00:18:14:208     880    1ba0    PT  WARNING: PTError: 0x80072efd
2017-08-13  00:18:14:208     880    1ba0    Report  WARNING: Reporter failed to upload events with hr = 80072efd.

この場合、サーバーはIPアドレスの末尾のポートを無視しています。最初にWSUSをセットアップしたとき、新しいバージョンではポート80を使用しないことに気づかなかったため、ポートなしでレジストリにサーバーURLを設定しました。ポートを含めるようにレジストリを変更しましたが、設定が反映されていないようです。
レポートしなかったデスクトップ(Windows 7)の1つでは、ログにシステム検証署名が表示されますが、次のように表示されます。

2017-08-12  21:52:05:983    1008    53c PT  +++++++++++  PT: Synchronizing extended update info  +++++++++++
2017-08-12  21:52:05:983    1008    53c PT    + ServiceId = {7971F918-A847-4430-9279-4A52D1EFE18D}, Server URL = https://fe2.update.Microsoft.com/v6/ClientWebService/client.asmx
2017-08-12  21:52:06:529    1008    53c Agent     * Added update {C2D37DE8-9638-468D-9575-5764F0D086D1}.200 to search result
2017-08-12  21:52:06:529    1008    53c Agent     * Found 1 updates and 89 categories in search; evaluated appl. rules of 3722 out of 5816 deployed entities

これは私のWSUSサーバーではなく、Windows更新URLに到達しているようです。レジストリ設定がさまざまなシステムに影響を与えないのはなぜですか?

2
Aaron Martin

答えは非常に基本的で恥ずかしいことがわかりました。 WSUS設定では、初めて設定したときにコンピューターを再起動する必要はありませんが、変更された場合は、コンピューターを再起動する必要があります。適切なポートなしでサーバーを初めてセットアップしたときにレジストリ設定がすぐに有効になるため、最初はこれを試しませんでした。再起動すると、ログには更新されたレジストリ設定が反映されました。

2
Aaron Martin

このコマンドを試して、クライアントにWSUSサーバーとのチェックインを強制することができますwuauclt /resetauthorization /detectnow /ReportNow

また、クライアントや他のサーバーでローカルグループポリシーエディターを使用することをお勧めします。これにはActive Directoryは必要ありません。

これを実行するには、gpedit.msc各クライアント。

必要な設定は、コンピューターの構成/管理用テンプレート/ Windowsコンポーネント/ Windows Update /にあります。

1
martin81