SchannelのイベントID 36871は、WindowsがTLS通信で使用する資格情報(サーバー証明書やプロトコル設定など)の作成に失敗した際にシステムログに記録されるエラーです。このログが記録されたからといって、直ちにOSやハードウェアの物理的な故障と断定することはできません。まずはイベント詳細に記録されている「内部エラー状態」の値を確認し、セキュリティポリシーやTLSプロトコルの設定状況を切り分けることが重要です。
このイベントは発生した事象を記録するもので、単独では原因を断定できません。前後のログと詳細フィールドを使う切り分けの手掛かりとして扱います。
イベントID 36871(Schannel)が記録される意味と重要性
Schannel(Secure Channel)は、Windows OSにおいてSSL/TLS暗号化通信を制御するセキュリティサポートプロバイダー(SSP)です。リモートデスクトップ(RDP)接続やIISなどのWebサーバー機能、その他セキュアなネットワーク通信を行うアプリケーションがTLS接続を確立する際に機能します。
イベントID 36871が記録される主な意味は、指定されたプロトコルや暗号化設定、または証明書を用いてTLSサーバー資格情報を作成できなかったという事象の報告です。このエラーが発生すると、対象のサービス(RDPなど)への接続が拒否されるなどの実害が生じることがあります。ただし、エラーの根本原因はネットワークの切断ではなく、OS内部のセキュリティポリシーの競合やプロトコルの不整合、証明書のアクセス権限不足などにある場合がほとんどです。
イベントログの「全般」と「詳細」フィールドの読み方
イベントビューアで本エラーを確認する際は、以下のフィールドとメッセージ内容を照合してください。
- ログ名: システム(System)
- ソース: Schannel
- イベントID: 36871
- レベル: エラー
- 説明(全般タブ): TLS サーバー資格情報の作成中に致命的なエラーが発生しました。内部エラー状態は 10013 です。(または英語表記:A fatal error occurred while creating a TLS server credential. The internal error state is 10013.)
該当ログの見分け方と「内部エラー状態」の重要性
説明文に含まれる「内部エラー状態(Internal error state)」の数値は、エラーの原因を特定するための極めて重要な判断材料です。例えば、値が 10013 の場合、システムのセキュリティポリシーによって古いTLSバージョン(TLS 1.0など)が非有効化されているにもかかわらず、接続要求側またはアプリケーション側がその古いプロトコルでの資格情報作成を要求したために競合が発生していることを示唆しています。
原因と切り分けの判断基準
発生している症状と、イベントログから読み取れる情報を基にした切り分け基準は以下の通りです。
| 症状 | 確認箇所 | 判断材料 | 次の行動 |
|---|---|---|---|
| RDP接続時に接続が失敗する | イベントログの「内部エラー状態」の値 | 内部エラー状態が 10013 であり、古いTLSプロトコルがポリシーで無効化されている | 接続元・接続先双方のTLSプロトコルの有効化状況、およびRDPのセキュリティ設定を確認する |
| 特定の暗号化通信を使用するアプリが通信エラーになる | レジストリのSchannelプロトコル設定 | HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols 配下の有効無効設定 | アプリケーションが要求するTLSバージョンと、OS側で許可されているTLSバージョンが一致しているか確認する |
| RDP自己署名証明書の更新や読み込みに失敗している | 証明書ストア(Remote Desktopフォルダ) | 証明書の有効期限切れ、または暗号化キー(MachineKeys)へのアクセス権限不足 | 証明書の有効性の確認、またはMachineKeysフォルダのアクセス権限の確認を行う |
安全な確認と切り分け手順
設定を不用意に変更する前に、まずは現在のシステム設定を安全に確認する手順から実施してください。
手順1:現在のTLSプロトコル有効状況の確認
OSでどのTLSバージョンが有効になっているかをレジストリから確認します。この手順ではレジストリの変更は行いません。
- キーボードの Windows キー + R キーを押し、regedit と入力して「OK」をクリックします。
- 次のキーに移動します:HKEYLOCALMACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols
- Protocols 配下に TLS 1.0、TLS 1.1、TLS 1.2、TLS 1.3 などのサブキーが存在するか確認し、それぞれの Server および Client キー内にある Enabled 値(DWORD)が 0(無効)または 1(有効)のどちらになっているかを確認します。キーが存在しない場合は、OSの既定値が適用されています。
手順2:RDPのセキュリティプロトコル設定の確認
RDP接続でエラーが発生している場合、接続先サーバーと接続元クライアントの間で合意できるTLSバージョンが存在しない可能性があります。特に、セキュリティ強化のためにTLS 1.0を無効化した環境では、RDPが新しいTLSバージョン(TLS 1.1や1.2など)を使用するように構成されているか確認してください。
手順3:リモートデスクトップ証明書の確認
- Windows キー + R キーを押し、mmc と入力して実行します。
- 「ファイル」メニューから「スナップインの追加と削除」を選択します。
- 「証明書」を選択して「追加」をクリックし、「コンピュータ アカウント」を選択して「完了」をクリックします。
- 「リモート デスクトップ」配下の「証明書」フォルダを開き、配置されている証明書が有効期限内であるか、またエラーが記録された時間帯と一致する不整合がないか確認します。
コマンドを使用した確認方法
管理者としてコマンドプロンプトを起動し、以下のコマンドを実行することで、過去24時間以内にイベントID 36871がシステムログに記録されているか確認できます。
wevtutil qe system /c:1 /f:text /q:"Event[System[Provider[@Name='Schannel'] and EventID=36871 and TimeCreated[timediff(@SystemTime) <= 86400000]]]" | more
コマンド実行後、該当するログが存在する場合はその詳細テキストが表示されます。表示された内容の中に「内部エラー状態は 10013 です。」などの記述があるか確認してください。
やってはいけない対処と専門家へ相談する基準
避けるべき高リスクな操作
- バックアップなしでのレジストリ変更: Schannelに関連するレジストリキーを誤って変更すると、システム全体のネットワーク通信や認証機能が停止し、OSが正常に起動しなくなる恐れがあります。
- MachineKeysフォルダの安易な全削除: 暗号化キーが格納されているフォルダ内のファイルを無差別に削除すると、既存の暗号化サービスや証明書がすべて無効化され、復旧が極めて困難になります。
専門業者やメーカーへ相談すべき基準
- リモートデスクトップ接続が完全に遮断され、かつローカルからのログインも資格情報エラー等で受け付けなくなった場合。
- レジストリや証明書の整合性を確認・修正してもイベントID 36871が頻発し、基幹業務アプリケーションの通信障害が解消されない場合。
よくある質問
Q1: イベントID 36871が発生すると、どのような実害がありますか?
主に、リモートデスクトップ(RDP)による接続が拒否されたり、IISなどのWebサーバーがHTTPS接続を受け付けなくなったり、TLS通信を必要とする特定のアプリケーションがサーバーとの接続に失敗するなどの実害が発生します。
Q2: 内部エラー状態「10013」とは何を意味していますか?
Microsoftの公式資料に基づくと、このエラー状態は主にセキュリティポリシーによる競合を示しています。例えば、古いプロトコル(TLS 1.0など)がポリシーによって無効化されている環境において、アプリケーションや接続要求がその無効化されたプロトコルを使用して資格情報を作成しようとした場合にこのエラーが発生します。
Q3: Windows 11やWindows Serverでこのエラーが発生した場合、対処法は同じですか?
基本的な原因(TLSプロトコルの不整合や証明書の問題)と切り分けの考え方は共通しています。ただし、Windows Server環境ではグループポリシー(GPP)や特定のセキュリティテンプレートによってTLS設定が強制されている場合があるため、個別のレジストリ変更だけでなく、適用されているドメインポリシーの確認も必要になります。
Q4: エラーを消すために、TLS 1.0をレジストリで強制的に有効化しても安全ですか?
一時的な通信復旧のテスト目的としては有効な切り分け手法ですが、恒久的な対処としてTLS 1.0を有効化し続けることは推奨されません。TLS 1.0には既知の脆弱性が存在するため、接続するクライアントやアプリケーション側をTLS 1.2以降に対応させるのが本質的な解決策です。
参考情報
- Schannel error codes (Microsoft Learn)
- Troubleshoot Azure VM RDP connection issues by Event ID (Microsoft Learn)
まとめ
イベントID 36871(Schannel)が発生した際は、まずイベントビューアの「全般」タブで「内部エラー状態」の数値を確認してください。この数値は、セキュリティポリシーによるプロトコルの競合が発生しているかどうかの重要な手がかりとなります。次に、レジストリや証明書ストアを参照して、TLSプロトコルの有効化状況と証明書の有効性を安全に確認し、段階的に原因を特定していきましょう。