Configuration Manager でのソフトウェア更新プログラムのスキャンエラーのトラブルシューティング
この記事では、Configuration Manager でソフトウェア更新プログラムのスキャンエラーをトラブルシューティングする方法について説明します。
元の製品バージョン: Microsoft System Center 2012 Configuration Manager、Microsoft System Center 2012 R2 Configuration Manager
元の KB 番号: 3090184
まとめ
ソフトウェア更新プログラムのスキャンが失敗する理由はいくつかあります。 ほとんどの問題には、クライアントとソフトウェアの更新ポイント コンピューター間の通信またはファイアウォールの問題が含まれます。 ここでは、最も一般的なエラー状態とそれに関連する解決策とトラブルシューティングのヒントについて説明します。 Windows Update の一般的なエラーの詳細については、「 Windows Update の一般的なエラーと軽減策を参照してください。
Configuration Manager のソフトウェア更新プログラムの詳細については、「 Software の更新プログラムの概要を参照してください。
ソフトウェア更新プログラムのスキャンエラーのトラブルシューティングを行う場合は、WUAHandler.logファイルとWindowsUpdate.log ファイルに注目してください。 WUAHandler は、Windows Update エージェントが報告した内容のみを報告します。 そのため、WUAHandler.log ファイル内のエラーは、Windows Update エージェント自体によって報告されたものと同じエラーになります。 エラーに関するほとんどの情報は、WindowsUpdate.logファイルにあります。 WindowsUpdate.log ファイルの読み取り方法の詳細については、「 Windows Update ログ ファイルを参照してください。
コンポーネントが見つからないか破損しているため、スキャンエラーが発生する
エラー 0x80245003、0x80070514、0x8DDD0018、0x80246008、0x80200013、0x80004015、0x800A0046、0x800A01AD、0x80070424、0x800B0100、および0x80248011は、コンポーネントの欠落または破損が原因で発生します。
ファイルまたはレジストリ キーの不足や破損、コンポーネントの登録などが原因で、いくつかの問題が発生する可能性があります。 まず、 Windows Update Troubleshooter を実行して、これらの問題を自動的に検出して修正することをお勧めします。
また、最新バージョンの Windows Update エージェント実行していることを確認することをお勧めします。
Windows Update トラブルシューティング ツールを実行しても問題が解決しない場合は、次の手順に従ってクライアントの Windows Update エージェント データ ストアをリセットします。
次のコマンドを実行して、Windows Update サービスを停止します。
net stop wuauserv
C:\Windows\SoftwareDistribution
フォルダーの名前をC:\Windows\SoftwareDistribution.old
に変更します。次のコマンドを実行して、Windows Update サービスを開始します。
net start wuauserv
ソフトウェア更新プログラムのスキャン サイクルを開始します。
プロキシ関連の問題によるスキャン エラー
エラー 0x80244021、0x8024401B、0x80240030、および0x8024402Cは、プロキシ関連の問題によって発生します。
クライアントのプロキシ設定を確認し、それらが正しく構成されていることを確認します。 Windows Update エージェントは、WinHTTP を使用して利用可能な更新プログラムをスキャンします。 クライアントと WSUS コンピューターの間にプロキシ サーバーがある場合、クライアントでプロキシ設定を正しく構成して、コンピューターの FQDN を使用して WSUS と通信できるようにする必要があります。
プロキシの問題の場合、WindowsUpdate.logは次のようなエラーを報告する場合があります。
0x80244021または HTTP エラー 502 - ゲートウェイが正しくありません
0x8024401Bまたは HTTP エラー 407 - プロキシ認証が必要
0x80240030 - プロキシ リストの形式が無効でした
0x8024402C - プロキシ サーバーまたはターゲット サーバー名を解決できません
ほとんどの場合、WSUS コンピューターはイントラネット内にあるため、ローカル アドレスのプロキシをバイパスできます。 ただし、クライアントがインターネットに接続されている場合は、その通信を有効にするようにプロキシ サーバーが構成されていることを確認する必要があります。
WinHTTP プロキシ設定を表示するには、次のいずれかのコマンドを実行します。
- Windows XP の場合:
proxycfg.exe
- Windows Vista 以降のバージョンでは、次の手順を実行します。
netsh winhttp show proxy
Internet Explorer で構成されているプロキシ設定は、WinINET プロキシ設定の一部です。 WinHTTP プロキシ設定は、Internet Explorer で構成されているプロキシ設定と必ずしも同じではありません。 ただし、プロキシ設定が Internet Explorer で正しく設定されている場合は、Internet Explorer からプロキシ構成をインポートできます。 Internet Explorer からプロキシ構成をインポートするには、次のいずれかのコマンドを実行します。
- Windows XP の場合:
proxycfg.exe -u
- Windows Vista 以降のバージョンでは、次の手順を実行します。
netsh winhttp import proxy source =ie
詳細については、「 Windows Update クライアントが Windows Update Web サイトへの接続に使用するプロキシ サーバーを決定する方法を参照してください。
HTTP タイムアウトまたは認証に関連するスキャン エラー
エラー: 0x80072ee2、0x8024401C、0x80244023、または0x80244017 (HTTP 状態 401)、0x80244018 (HTTP 状態 403)
WSUS コンピューターとの接続を確認します。 スキャン中に、Windows Update エージェントは WSUS コンピューター上の ClientWebService
および SimpleAuthWebService
仮想ディレクトリと通信してスキャンを実行する必要があります。 クライアントが WSUS コンピューターと通信できない場合、スキャンは失敗します。 この問題は、次のようないくつかの理由で発生する可能性があります。
- ポート構成
- プロキシの構成
- ファイアウォールの問題
- ネットワーク接続
まず、次のレジストリ キーを確認して、WSUS コンピューターの URL を見つけます。
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate
URL にアクセスして、クライアントと WSUS コンピューターの間の接続を確認します。 たとえば、使用する URL は次の URL のようになります。
http://SUPSERVER.CONTOSO.COM:8530/Selfupdate/wuident.cab
次に、クライアントが ClientWebService
仮想ディレクトリにアクセスできるかどうかを確認します。 URL は次の URL のようになります。
http://SUPSERVER.CONTOSO.COM:8530/ClientWebService/wusserverversion.xml
最後に、クライアントが SimpleAuthWebService
仮想ディレクトリにアクセスできるかどうかを確認します。 URL は次の URL のようになります。 http://SUPSERVER.CONTOSO.COM:8530/SimpleAuthWebService/SimpleAuth.asmx
これらのテストが成功した場合は、WSUS コンピューターの インターネット インフォメーション サービス (IIS) ログを確認して、WSUS から HTTP エラーが返されていることを確認します。 WSUS コンピューターがエラーを返さない場合、問題はおそらく中間ファイアウォールまたはプロキシにあります。
これらのテストのいずれかが失敗した場合は、クライアントで名前解決の問題を確認します。 WSUS コンピューターの FQDN を解決できることを確認します。
また、クライアントのプロキシ設定を確認して、正しく構成されていることを確認します。 詳細については、「 プロキシ関連の問題によるスキャンエラー 」セクションを参照してください。
最後に、WSUS ポートにアクセスできることを確認します。 WSUS は、次のいずれかのポートを使用するように構成できます。
- 80
- 443
- 8530
- 8531
クライアントが WSUS コンピューターと通信するには、クライアントと WSUS コンピューターの間のファイアウォールで適切なポートを有効にする必要があります。
WSUS とソフトウェアの更新ポイントで使用されるポート設定を決定する
ポート設定は、ソフトウェアの更新ポイント サイト システムの役割が作成されるときに構成されます。 これらのポート設定は、WSUS Web サイトで使用されるポート設定と同じである必要があります。 それ以外の場合、WSUS 同期マネージャーは、同期を要求するためにソフトウェアの更新ポイントで実行されている WSUS コンピューターに接続しません。 次の手順では、WSUS とソフトウェアの更新ポイントで使用されるポート設定を確認する方法を示します。
IIS 6.0 で WSUS ポート設定を決定する
- WSUS サーバーで、インターネット インフォメーション サービス (IIS) マネージャーを起動します。
- Web サイト展開し、WSUS サーバーの Web サイトを右クリックし、Properties を選択します。
- Web サイト タブを選択します。
- HTTP ポート設定は TCP ポートに表示され、HTTPS ポート設定は SSL ポートに表示されます。
IIS 7.0 以降のバージョンで WSUS ポートの設定を決定する
- WSUS サーバーで、インターネット インフォメーション サービス (IIS) マネージャーを起動します。
- Sites を展開し、WSUS サーバーの Web サイトを右クリックし、[ バインドの編集を選択します。
- [ Site Bindings ] ダイアログ ボックスの [ Port 列に HTTP ポートと HTTPS ポートの値が表示されます。
ソフトウェアの更新ポイントのポートを確認して構成する
- Configuration Manager コンソールで、 Administration>Site Configuration>Servers および Site System Roles に移動し、右側のウィンドウで <SiteSystemName> を選択します。
- 下部のウィンドウで、Software の更新ポイントを右クリックしPropertiesをクリックします。
- [ General タブで、WSUS 構成ポート番号を指定または確認します。
ポートが検証され、正しく構成されたら、次のコマンドを実行して、クライアントからのポート接続を確認する必要があります。
telnet SUPSERVER.CONTOSO.COM <PortNumber>
ポートにアクセスできない場合、telnet は次のようなエラーを返します。
ポート <PortNumber でホストへの接続を開けませんでした>
このエラーは、WSUS サーバー ポートの通信を有効にするためにファイアウォール規則を構成する必要があることを示しています。
エラー 0x80072f0cでスキャンが失敗する
エラー 0x80072f0c変換 クライアント認証を完了するには、証明書が必要です。 このエラーは、WSUS コンピューターが SSL を使用するように構成されている場合にのみ発生します。 SSL 構成の一環として、WSUS 仮想ディレクトリは SSL を使用するように構成する必要があり、クライアント証明書を無視するように設定する必要があります。 WSUS Web サイトまたは前述の仮想ディレクトリのいずれかが、 Accept または Require クライアント証明書に正しく構成されていない場合は、このエラーが発生します。
SSL 構成を確認する
サイトが HTTPS のみ モードで構成されている場合、ソフトウェアの更新ポイントは SSL を使用するように自動的に構成されます。 サイトが HTTPS または HTTP モードの場合は、SSL を使用するようにソフトウェアの更新ポイントを構成するかどうかを選択できます。 ソフトウェアの更新ポイントが SSL を使用するように構成されている場合、WSUS コンピューターも SSL を使用するように明示的に構成する必要があります。 SSL を構成する前に、 certificate の要件を確認する必要があります。 また、サーバー認証証明書がソフトウェアの更新ポイント サーバーにインストールされていることを確認します。
ソフトウェアの更新ポイントが SSL 用に構成されていることを確認する
- Configuration Manager コンソールで、 Administration>Site Configuration>Servers および Site System Roles に移動し、右側のウィンドウで <SiteSystemName> を選択します。
- 下部のウィンドウで、 Software の更新ポイントを右クリックし、 Properties を選択します。
- General タブで、次のオプションが有効になっていることを確認します。
WSUS サーバーへの SSL 通信を要求する
WSUS コンピューターが SSL 用に構成されていることを確認する
- サイトのソフトウェアの更新ポイントで WSUS コンソールを開きます。
- コンソール ツリー ウィンドウで、 Options を選択します。
- 表示ウィンドウで、[ソースサーバーとプロキシサーバーの更新を選択します。
- 更新情報の同期時に SSL を使用するオプションが選択されていることを確認します。
WSUS 管理 Web サイトにサーバー認証証明書を追加する
- WSUS コンピューターで、インターネット インフォメーション サービス (IIS) マネージャーを起動します。
- [ サイト] を展開し WSUS がカスタム Web サイトを使用するように構成されている場合 既定の Web サイト または WSUS 管理 Web サイトを右クリックし、[ バインドの編集] を選択します。
- HTTPS エントリを選択し、Edit を選択します。
- [サイト バインドの編集] ダイアログ ボックスで、サーバー認証証明書を選択し、[
OK を選択します。 - [サイト バインドの編集] ダイアログ ボックスで、[
OK を選択し、Close を選択します。 - IIS マネージャーを終了します。
重要
サイト システムのプロパティで指定されている FQDN が、証明書で指定されている FQDN と一致していることを確認します。 ソフトウェアの更新ポイントがイントラネットからの接続のみを受け入れる場合、 Subject Name または Subject Alternative Name にはイントラネット FQDN が含まれている必要があります。 ソフトウェアの更新ポイントがインターネットからのクライアント接続のみを受け入れる場合、WCM と WSyncMgr は引き続きイントラネット FQDN を使用してソフトウェアの更新ポイントに接続するため、証明書にはインターネット FQDN とイントラネット FQDN の両方が含まれている必要があります。 ソフトウェアの更新ポイントがインターネットとイントラネットの両方からの接続を受け入れる場合は、2 つの名前の間にアンパサンド (&) 記号区切り記号を使用して、インターネット FQDN とイントラネット FQDN の両方を指定する必要があります。
WSUS コンピューターで SSL が構成されていることを確認する
詳細については、「
重要
WSUS サイトへのすべてのトラフィックを暗号化する必要があるため、WSUS Web サイト全体を SSL を要求するように構成することはできません。 WSUS では、更新プログラムのメタデータのみが暗号化されます。 コンピューターが HTTPS ポートで更新ファイルを取得しようとすると、転送は失敗します。
グループ ポリシーが正しい WSUS 構成情報をオーバーライドする
ソフトウェア更新機能は、ソフトウェアの更新ポイントのソースの場所とポート番号を使用するように構成されるように、Configuration Manager クライアントのローカル グループ ポリシー設定を自動的に構成します。 クライアントがソフトウェアの更新ポイントを検索するには、サーバー名とポート番号の両方が必要です。
Active Directory グループ ポリシー設定がソフトウェアの更新ポイント クライアント インストール用のコンピューターに適用されている場合は、ローカルのグループ ポリシー設定をオーバーライドします。 グループ ポリシーで定義されている設定の値が Configuration Manager で設定されている値 (サーバー名とポート) と同じでない限り、Configuration Manager ソフトウェア更新プログラムのスキャンはクライアントで失敗します。 この場合、WUAHandler.log ファイルには次のエントリが表示されます。
Group policy settings were overwritten by a higher authority (Domain Controller) to: Server http://server and Policy ENABLED
この問題を解決するには、クライアントのインストールとソフトウェア更新プログラムのソフトウェアの更新ポイントが同じサーバーである必要があります。 また、正しい名前の形式とポート情報を使用して、Active Directory グループ ポリシー設定で指定する必要があります。 たとえば、ソフトウェアの更新ポイントが既定の Web サイトを使用していた場合、ソフトウェアの更新ポイントは http://server1.contoso.com:80
されます。
クライアントが WSUS サーバーの場所を見つけることができません
- クライアントが WSUS サーバーの場所を取得する方法については、「 WSUS サーバーの場所を参照してください。 また、クライアントと管理ポイントのログを確認します。
- クライアントと管理ポイントで詳細ログとデバッグ ログを有効にします。
- クライアントのCcmMessaging.logに通信エラーがないことを確認します。
- 管理ポイントから空の WSUS の場所の応答が返された場合、WSUS のコンテンツ バージョンが一致しない可能性があります。 これは、同期に失敗した結果である可能性があります。 ソフトウェアの更新ポイントのコンテンツ バージョンを確認するには、Configuration Manager コンソールで Monitoring>Software Update Point Synchronization Status を選択します。
CI_UpdateSources
、WSUSServerLocations
、およびUpdate_SyncStatus
テーブルのデータを確認し、更新元の一意の ID とコンテンツ バージョンがこれらのテーブル間で一致することを確認します。
コンプライアンスの結果が不明
- クライアントのPolicyAgent.log ファイルを確認して、クライアントがポリシーを受け取っていることを確認します。
- ソフトウェアの更新ポイントでソフトウェア更新プログラムの同期が成功したことを確認します。 同期に失敗した場合は、同期 問題を解決。
- WUAHandler.log ファイルが存在せず、スキャン サイクルを開始した後に作成されない場合は、次のいずれかの理由で問題が発生する可能性が最も高くなります。
- ソフトウェア更新プログラムのスキャン ポリシーは使用できません
- クライアントが WSUS サーバーの場所を見つけることができません
- クライアントのCcmMessaging.log ファイルに通信エラーがないことを確認します。
- スキャンが成功した場合、クライアントは状態メッセージを管理ポイントに送信して、更新の状態を示す必要があります。 状態メッセージ処理のしくみについては、 状態メッセージ処理フローを参照してください。
その他の問題
詳細については、「 クライアント ソフトウェア更新プログラムのスキャンを参照してください。