Active Directory レプリケーション エラー 5 - アクセスが拒否されました
この記事では、エラー 5: アクセスが拒否され、AD 操作が失敗する状況の症状、原因、および解決策の手順について説明します。
適用対象: Windows Server 2012 R2
元の KB 番号: 2002013
現象
DCDIAG は、Active Directory レプリケーションテストがエラー状態コード (5): アクセスが拒否されたことを報告します。
Testing server: <site name><destination dc name> Starting test: Replications Replications Check [Replications Check,<destination DC name] A recent replication attempt failed: From <source DC> to <destination DC> Naming Context: <directory partition DN path> The replication generated an error (5): Access is denied. The failure occurred at <date> <time>. The last success occurred at <date> <time>. 3 failures have occurred since the last success.
DCDIAG は、DsBindWithSpnEx() がエラー 5 で失敗したことを報告します。
REPADMIN.EXE は、最後のレプリケーション試行が状態 5 で失敗したことを報告します。
REPADMIN
一般的に状態 5 を引用するコマンドには、次のものが含まれますが、これらに限定されません。REPADMIN /KCC
REPADMIN /REPLICATE
REPADMIN /REPLSUM
REPADMIN /SHOWREPL
REPADMIN /SHOWREPS
REPADMIN /SYNCALL
CONTOSO-DC2 から CONTOSO-DC1 への受信レプリケーションがレプリケーション アクセス拒否エラーで失敗したことを示すサンプル出力
REPADMIN /SHOWREPS
を次に示します。Default-First-Site-Name\CONTOSO-DC1 DSA Options: IS_GC Site Options: (none) DSA object GUID: b6dc8589-7e00-4a5d-b688-045aef63ec01 DSA invocationID: b6dc8589-7e00-4a5d-b688-045aef63ec01 ==== INBOUND NEIGHBORS ====================================== DC=contoso, DC=com Default-First-Site-Name\CONTOSO-DC2 via RPC DSA object GUID: 74fbe06c-932c-46b5-831b-af9e31f496b2 Last attempt @ <date> <time> failed, result 5 (0x5): Access is denied. <#> consecutive failure(s). Last success @ <date> <time>.
状態 5 の NTDS KCC、NTDS General、または Microsoft-Windows-ActiveDirectory_DomainService イベントは、ディレクトリ サービス イベント ログに記録されます。
一般的に 8524 状態を引用する Active Directory イベントには、次のものが含まれますが、これらに限定されません。
イベント ソース イベント文字列 NTDS 全般 1655 Active Directory が次のグローバル カタログと通信しようとしましたが、試行は失敗しました。 NTDS KCC 1925 次の書き込み可能なディレクトリ パーティションのレプリケーション リンクを確立できませんでした。 NTDS KCC 1926 次のパラメーターを使用して、読み取り専用ディレクトリ パーティションへのレプリケーション リンクを確立できませんでした。 Active Directory サイトとサービスで [レプリケート] コマンドを実行すると、 Access が拒否されます。
ソース DC から接続オブジェクトを右クリックし、[レプリケート] を選択すると、Access が拒否され、失敗するようになりました。 画面上のエラー メッセージのテキストとスクリーンショットを次に示します。
ダイアログ タイトル テキスト: [今すぐレプリケート]
ダイアログ メッセージ テキスト:
ドメイン コントローラー ソース DC からドメイン コントローラー宛先 DC への名前付けコンテキスト <%directory パーティション名%> の同期試行中に<、次のエラーが発生しました: アクセスが拒否されました>><
操作は続行されません
ダイアログのボタン: OK
原因
エラー 5: アクセスが拒否された 場合の有効な根本原因は次のとおりです。
- レジストリの RestrictRemoteClients 設定の値は 2 です。
- [ネットワークからこのコンピューターにアクセスする] ユーザー権限は、エンタープライズ ドメイン コントローラー グループまたは管理者が即時レプリケーションをトリガーする権限には付与されません。
- 宛先 DC のレジストリの CrashOnAuditFail 設定の値は 2 です。
- 宛先 DC とソース DC で使用されるキー配布センター (KDC) には時間差があります。 時間差は、既定のドメイン ポリシーで定義されている Kerberos によって許可される最大時間スキューを超えています。
- ソース DC と宛先 DC の間に SMB 署名の不一致があります。
- ソース DC と宛先 DC の間に LMCompatiblity の不一致があります。
- サービス プリンシパル名は、単純なレプリケーションの待機時間またはレプリケーションエラーのために登録されていないか、存在しません。
- UDP 形式の Kerberos パケットは、ルーターやスイッチなどのネットワーク インフラストラクチャ デバイスによって断片化されています。
- ソースまたは宛先 DC のセキュリティで保護されたチャネルが無効です。
- 信頼チェーン内の信頼関係が壊れているか、無効です。
- レジストリのセクションの KDCNames 設定に
HKLM\System\CurrentControlSet\Control\LSA\Kerberos\Domains
、ローカル Active Directory ドメイン名が誤って含まれています。 - 一部のネットワーク アダプターには、 大きな送信オフロード 機能があります。
- ソースまたは宛先 DC でミニファイアウォール ネットワーク アダプター フィルター ドライバーを使用するウイルス対策ソフトウェア。
この KB の現象のセクションに記載されているような Active Directory エラーとイベントも、同様のエラー文字列 レプリケーション アクセスが拒否されたエラー 8453 で失敗する可能性があります。 次の根本原因の理由により、AD 操作が 8453 で失敗する可能性があります。 レプリケーション アクセスは拒否されました が、エラー 5 ではエラーが発生しません。 レプリケーションは拒否されます。
- レプリケート ディレクトリの変更アクセス許可で NC ヘッドが許可されていません。
- レプリケーションを開始するセキュリティ プリンシパルは、 ディレクトリの変更のレプリケートが許可されているグループのメンバーではありません。
- および
TRUSTED_FOR_DELEGATION
を含むSERVER_TRUST_ACCOUNT
属性にUserAccountControl
フラグがありません。 - RODC は、最初に を実行
ADPREP /RODCPREP
せずにドメインに昇格しました。
解決方法
エラー 5 で AD レプリケーションが失敗すると、複数の根本原因があります。 次のようなツールを使用して、最初に問題を解決します。
- Dcdiag
- DCDIAG /TEST: CheckSecurityError
- 一般的な問題を公開する NETDIAG
それでも解決されない場合は、最も一般的な、最も複雑で、最も破壊的な順序の既知の原因リストを、最も一般的で最も複雑で最も破壊的な順序に従います。
DCDIAG、DCDIAG/TEST:CheckSecurityError、および NETDIAG を実行する
汎用 DCDIAG では、複数のテストが実行されます。
DCDIAG /TEST:CheckSecurityErrors
特定のテスト (SPN 登録チェックを含む) を実行して、Active Directory 操作のレプリケーションが失敗した場合のトラブルシューティングを行うために記述されました。
- エラー 5: アクセスが拒否されました
- エラー 8453: レプリケーション アクセスが拒否されました
DCDIAG /TEST:CheckSecurityErrors
は、DCDIAG の既定の実行の一部として実行されません。
- 宛先 DC で DCDIAG を実行する
- DCDIAG /TEST:CheckSecurityError を実行する
- NETDIAG を実行する
- DCDIAG と NETDIAG によって識別されたエラーを解決します。 以前に失敗したレプリケーション操作を再試行してください。 それでも失敗した場合は、 長い道のりを進んでください。
長い道のり
RestrictRemoteClients
value が 2 に設定されているこのレジストリ値
RestrictRemoteClients
は、 で 0x2 の値にHKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\RPC
設定されます。この問題を解決するには
この設定を適用するポリシーを無効にします。
レジストリ設定を
RestrictRemoteClients
削除し、再起動します。この設定の詳細については、「 RestrictRemoteClients レジストリ キーが有効になっている」を参照してください。
レジストリ値は
RestrictRemoteClients
、次のグループ ポリシー設定によって設定されます。コンピューターの構成>管理用テンプレート>システム>リモート プロシージャ呼び出し - 認証されていない RPC クライアントの制限事項
0x2 のレジストリ 値は、ポリシー設定が有効になっていて、 例外なしで Authenticated に設定されている場合に適用されます。
このオプションでは、認証された RPC クライアントのみが、ポリシー設定が適用されているコンピューター上で実行されている RPC サーバーに接続できます。 例外は許可されません。 このオプションを選択した場合、システムは RPC を使用してリモート匿名呼び出しを受信できません。 この設定をドメイン コントローラーに適用しないでください。
[ネットワーク権限からこのコンピューターにアクセスする] をオンにします。
Windows の既定のインストールでは、既定のドメイン コントローラー ポリシーがドメイン コントローラー OU コンテナーにリンクされます。 ネットワーク ユーザーから次のセキュリティ グループへの アクセス権をこのコンピューター に付与します。
ローカル ポリシー 既定のドメイン コントローラー ポリシー 管理者 管理者 Authenticated Users Authenticated Users すべてのユーザー すべてのユーザー エンタープライズ ドメイン コントローラー エンタープライズ ドメイン コントローラー [Windows 2000 以前の互換性のあるアクセス] [Windows 2000 以前の互換性のあるアクセス] エラー 5: アクセスが拒否され、Active Directory 操作が失敗する場合は、次のことを確認します。
- 上記の一覧のセキュリティ グループには、既定のドメイン コントローラー ポリシーの ネットワーク権限からこのコンピューターへのアクセス が許可されています。
- ドメイン コントローラー コンピューター アカウントは、ドメイン コントローラー OU にあります。
- 既定のドメイン コントローラー ポリシーは、ドメイン コントローラー OU またはコンピューター アカウントをホストする代替 OU にリンクされています。
- グループ ポリシーは、現在エラー 5 をログに記録している宛先ドメイン コントローラーに適用されています。
- 拒否 ネットワーク ユーザー権限からこのコンピューターにアクセス が有効になっていないか、失敗した直接グループまたは入れ子になったグループを参照していません。
- ポリシーの優先順位、ブロックされた継承、WMI フィルター処理などでは、DC ロール コンピューターにポリシー設定が適用されるのを妨げません。
ポリシー設定は RSOP を使用して検証できます。MSC ですが
GPRESULT /Z
、より正確であるため、推奨されるツールです。注:
ローカル ポリシーは、サイト、ドメイン、OU で定義されているポリシーよりも優先されます。
注:
一度に、管理者は、既定のドメイン コントローラー ポリシーでネットワークからこのコンピューターへのアクセスからエンタープライズ ドメイン コントローラーとすべてのグループを削除するのが一般的でした。 両方を削除することは致命的です。 DC のみがこのグループのメンバーであるため、この権限から エンタープライズ ドメイン コントローラー を削除する理由はありません。
CrashOnAuditFail
= 2= の値が 2 の場合
HKLM\System\CurrentControlSet\Control\LSA\CrashOnAuditFail
、AD レプリケーションは失敗します。CrashOnAduitFail
値 2 は、グループ ポリシーのセキュリティ監査をログに記録できない場合、[監査: システムを直ちにシャットダウンする] 設定が有効になっており、ローカル セキュリティ イベント ログがいっぱいになるとトリガーされます。Active Directory ドメイン コントローラーは、監査が有効になっている場合、特に最大容量のセキュリティ ログが発生しやすく、セキュリティ イベント ログのサイズが、イベント ビューアーまたはグループ ポリシーの同等のオプションで必要に応じてイベントを上書きしない (手動でログをクリアする) または [上書き] オプションによって制限されています。
ユーザー アクション:
2 の場合
HKLM\System\CCS\Control\LSA\CrashOnAuditFail
= :- セキュリティ イベント ログをクリアする (必要に応じて別の場所に保存)
- ポリシー ベースの設定を含め、セキュリティ イベント ログのサイズ制約を再回避します。
- 再作成
CrashOnAuditFail (REG_DWORD)
= 1 - 再起動
値 0 または 1 が表示
CrashOnAuditFail
されると、一部の CSS エンジニアは、セキュリティ イベント ログを再度クリアし、レジストリ値をthe CrashOnAuditFail
削除し、宛先 DC を再起動することで、アクセスが拒否されました。関連コンテンツ: 監査ログとセキュリティ ログを管理します。
時間のずれが多すぎる
既定のドメイン ポリシーの Kerberos ポリシー設定では、再生攻撃を防ぐために、KDC ドメイン コントローラーと Kerberos ターゲット サーバー間のシステム時間で 5 分の差 (既定値) を許可します。 一部のドキュメントでは、クライアントと Kerberos ターゲットの間の時間は、互いに 5 分以内に時間が必要であると記載されています。 また、Kerberos 認証のコンテキストでは、重要な時間は、呼び出し元が使用する KDC と Kerberos ターゲット上の時刻との間の差分であると言うものもあります。 また、Kerberos は、関連する DC のシステム時刻が現在の時刻と一致することを気にしません。 KDC とターゲット DC の相対的な時間差が、Kerberos ポリシーで許可される最大時間スキュー (既定では 5 分以下) 内にあることに注意してください。
Active Directory 操作のコンテキストでは、ターゲット サーバーは、移行先 DC によって接続されるソース DC です。 Active Directory フォレスト (現在 KDC サービスを実行している) 内のすべてのドメイン コントローラーは、KDC の可能性があります。 そのため、宛先 DC 自体の時間を含め、ソース DC に対する他のすべての DC の時間精度を考慮する必要があります。
時間精度をチェックするには、次の 2 つの方法があります。
C:\> DCDIAG /TEST: CheckSecurityError
および
C:\> W32TM /MONITOR
拡張エラーが発生したソース DC の GUIDed CNAME レコードを引用するレプリケーション要求の失敗時に、宛先 DC で LSASRV 40960 イベントを探します。
0xc000133: プライマリ ドメイン コントローラーでの時刻は、バックアップ ドメイン コントローラーまたはメンバー サーバーの時刻と大きすぎて異なります。
ソース DC 上の共有フォルダーに接続しているターゲット コンピューターをキャプチャするネットワーク トレース (およびその他の操作) には、 拡張エラーが発生した画面エラーが表示される場合があります。 ただし、ネットワーク トレースには次の情報が表示されます。
KerberosV5:TGS 要求領域 > TGS 要求ソース DC からの
KerberosV5:KRB_ERROR - KRB_AP_ERR_TKE_NYVがまだ無効なチケットにマップされているKRB_AP_ERR_TKE_NVV > (33) > TGS 応答TKE_NYV応答は、TGS チケットの日付範囲がターゲットの時刻よりも新しく、過剰な時間ずれを示していることを示します。
注:
W32TM /MONITOR
は、テスト コンピューター ドメイン内の DC の時間のみをチェックするため、各ドメインでこれを実行し、ドメイン間の時間を比較する必要があります。注:
システム時刻が不正確であることが判明した場合は、今後不正確な時間を防ぐために、その理由と実行できる内容を把握する努力をしてください。 フォレスト ルート PDC は外部タイム ソースで構成されましたか? 基準時間ソースはオンラインで、ネットワーク上で使用できますか? タイム サービスは実行されていましたか? ソース時間に NT5DS 階層を使用するように DC ロール コンピューターが構成されていますか?
注:
Windows Server 2008 R2 の宛先 DC で時間差が大きすぎる場合は、DSSITE で [今すぐレプリケート ] コマンドを実行します。MSC が画面エラーで失敗します 。クライアントとサーバーの間に時刻や日付の違いがあります。 このエラー文字列は、エラー 1398 の 10 進数/0x576 16 進数にマップされ、シンボリック エラー名 ERROR_TIME_SKEW。
関連コンテンツ: 再生攻撃を防ぐためにクロック同期の許容範囲を設定します。
SMB 署名の不一致
SMB 署名に最適な互換性マトリックスは、4 つのポリシー設定とそのレジストリ ベースの同等物によって定義されます。
ポリシー設定 レジストリ パス Microsoft ネットワーク クライアント: 通信にデジタル署名する (サーバーが同意する場合) HKLM\SYSTEM\CCS\Services\Lanmanworkstation\Parameters\Enablesecuritysignature Microsoft ネットワーク クライアント: 通信にデジタル署名する (常に) HKLM\SYSTEM\CCS\Services\Lanmanworkstation\Parameters\Requiresecuritysignature Microsoft ネットワーク サーバー: 通信にデジタル署名する (サーバーが同意する場合) HKLM\SYSTEM\CCS\Services\Lanmanserver\Parameters\Enablesecuritysignature Microsoft ネットワーク サーバー: 通信にデジタル署名する (常に) HKLM\SYSTEM\CCS\Services\Lanmanserver\Parameters\Requiresecuritysignature 転送先とソース ドメイン コントローラーの間の SMB 署名の不一致に焦点を当て、クラシック ケースは設定が有効であるか、一方では必須ですが、もう一方では無効になっています。
注:
内部テストでは、SMB 署名の不一致が示され、エラー 1722 でレプリケーションが失敗しました。 RPC サーバーは使用できません。
UDP 形式の Kerberos パケットの断片化
ネットワーク ルーターとスイッチは、Kerberos と EDNS0 (DNS) で使用される大きな UDP 形式のネットワーク パケットを断片化または完全にドロップする可能性があります。 Windows 2000 および Windows 2003 オペレーティング システム ファミリを実行しているコンピューターは、Windows Server 2008 および 2008 R2 を実行しているコンピューターと比較して UDP 断片化に対して脆弱です。
ユーザー アクション:
宛先 DC のコンソールから、完全修飾コンピューター名でソース DC に ping を実行し、ネットワーク ルートでサポートされている最大のパケットを識別します。
c:\> Ping <source DC hostname.>. <fully qualified computer name> -f -l 1472
最大のフラグメント化されていないパケットが 1,472 バイト未満の場合は、どちらか (優先順)
大規模な UDP フレームを適切にサポートするようにネットワーク インフラストラクチャを変更します。 ルーター、スイッチ、またはファイアウォールでファームウェアのアップグレードまたは構成の変更が必要になる場合があります。
または
(宛先 DC の) maxpacketsize を、TCP ヘッダーを考慮して変更された DC を再起動するために、PING -f -l コマンドによって識別される最大のパケットに 8 バイト未満に設定します。
または
(宛先 DC の) maxpacketsize を "1" に設定します。この値を使用すると、Kerberos が TCP を使用するようにトリガーされます。 変更した DC を再起動して、変更を有効にします。
失敗した Active Directory 操作を再試行する
無効なセキュリティで保護されたチャネル/パスワードの不一致
または を使用してセキュリティで保護されたチャネルを
nltest /sc: query
検証しますnetdom verify
。で宛先 DC のパスワード
NETDOM / RESETPWD
をリセットする方法の詳細については、「 Netdom.exe を使用して Windows Server ドメイン コントローラーのマシン アカウント パスワードをリセットする方法」を参照してください。ユーザー アクション:
再起動する DC の KDC サービスを無効にします。
宛先 DC のコンソールから NETDOM RESETPWD を実行して、宛先 DC のパスワードをリセットします。
c:\>netdom resetpwd /server: server_name /userd: domain_name \administrator /passwordd: administrator_password
KDC とソース DC (同じドメイン内の場合) が、移行先 DC の新しいパスワードに関する知識をレプリケートする可能性があることを確認します。
宛先 DC を再起動して Kerberos チケットをフラッシュし、レプリケーション操作を再試行します。
信頼が無効です
異なるドメイン内の DC 間で AD レプリケーションが失敗する場合は、信頼パスに沿って信頼関係の正常性を確認します
可能な場合は、NETDIAG 信頼関係テストを使用して、破損した信頼をチェックします。 NETDIAG は、次のテキストを使用して、破損した信頼を識別します。
信頼関係テスト。 . . . . . : ドメイン <ドメイン名> の DomainSid が正しいことを確認するためのテストに失敗しました。 [FATAL]ドメイン <ドメイン名> へのセキュリティで保護されたチャネルが壊れています。 [<%variable status code%>]
たとえば、次を含むマルチドメイン フォレストがあるとします。
- ルート ドメイン
Contoso.COM
- 子ドメイン
B.Contoso.COM
- grandchild domain
C.B.Contoso.COM
- 同じフォレスト内のツリー ドメイン
Fabrikam.COM
孫ドメインとツリー
Fabrikam.COM
ドメインC.B.Contoso.COM
の DC 間でレプリケーションが失敗する場合は、次の順序で信頼の正常性を確認します。- と の間
C.B.Contoso.COM
B.Contoso.COM
- と の間
B.Contoso.COM
Contoso.COM
- と の間
Contoso.COM
Fabrikam.COM
宛先ドメイン間に短縮信頼が存在する場合、信頼パス チェーンを検証する必要はありません。 代わりに、宛先ドメインとソース ドメインの間の短い切り取り信頼を検証します。
信頼されたドメイン オブジェクト (TDO) による
Repadmin /showobjmeta * \<DN path for TDO in question>
信頼に対する最近のパスワードの変更を確認します。信頼パスワードの変更が行われる可能性がある書き込み可能なドメイン ディレクトリ パーティションをレプリケートする宛先 DC が推移的に受信されていることを確認します。信頼をリセットするコマンド:
ルート ドメイン PDC から:
netdom trust <Root Domain> /Domain:<Child Domain> /UserD:CHILD /PasswordD:* /UserO:ROOT /PasswordO:* /Reset /TwoWay
子ドメイン PDC から:
netdom trust <Child Domain> /Domain:<Root Domain> /UserD:Root/PasswordD:*/UserO:Child /PasswordO:* /Reset /TwoWay
- ルート ドメイン
無効な Kerberos 領域 - PolAcDmN/PolPrDmN (記事の記述時に再現なし)
ドメイン コントローラーからコピーされた が正しく機能していません。
- レジストリ エディターを起動します。
- 左側のウィンドウで [セキュリティ] を展開します。
- [ セキュリティ ] メニューの [ アクセス許可 ] を選択して、Administrators ローカル グループに SECURITY ハイブとその子コンテナーとオブジェクトのフル コントロールを付与します。
HKEY_LOCAL_MACHINE\SECURITY\Policy\PolPrDmN
キーを探します。- レジストリ エディターの右側のウィンドウで、[名前>なし: REG_NONE] エントリを 1 回選択<します。
- [ 表示 ] メニューの [ バイナリ データの表示] を選択します。 ダイアログ ボックスの [書式] セクションで、[バイト] を選択 します。
- ドメイン名は、[バイナリ データ] ダイアログ ボックスの右側に文字列として表示されます。 ドメイン名は Kerberos 領域と同じです。
HKEY_LOCAL_MACHINE\SECURITY\Policy\PolACDmN
レジストリ キーを見つけます。- レジストリ エディターの右側のウィンドウで、[名前>なし: REG_NONE] エントリを<ダブルクリックします。
- [バイナリ エディター] ダイアログ ボックスで、PolPrDmN の値を貼り付けます。 (PolPrDmN の値は NetBIOS ドメイン名になります)。
- ドメイン コントローラーを再起動します。
無効な Kerberos 領域 - KdcNames
ユーザー アクション:
- 宛先 DC のコンソールで、REGEDIT を実行します。
- レジストリで、次のパスを見つけます。
HKLM\system\ccs\control\lsa\kerberos\domains
- の下の
HKLM\system\ccs\control\lsa\kerberos\domains
完全修飾ドメイン>ごとに<、 の値KdcNames
が有効な外部 Kerberos 領域を参照し、同じ Active Directory フォレスト内のローカル ドメインまたは別のドメインを参照しないことを確認します。
IPv4 Large Send オフロードが有効になっているネットワーク アダプター:
ユーザー アクション:
- ネットワーク アダプター カード プロパティを開きます。
- [ 構成] ボタンを選択します。
- [ 詳細設定 ] タブを選択します。
- IPv4 Large Send オフロードを無効にします。
- 再起動。
データ収集
Microsoft サポートからの支援が必要な場合は、「 Active Directory レプリケーションの問題に TSS を使用して情報を収集する」で説明されている手順に従って情報を収集することをお勧めします。
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示