SQL Server マシンに暗号スイート ポリシーを実装した後の "クライアントが接続を確立できません" エラー
この記事は、サーバーに暗号スイート ポリシーを実装した後に発生する問題を解決するのに役立ちます。 クライアントとサーバーでサポートされている暗号スイートが一致しない場合、接続が失敗する可能性があります。
現象
サーバーに暗号スイート ポリシーを実装すると、次のエラー メッセージが表示されます。
リモート ホストによって、既存の接続は強制的に切断されました。 [SQLSTATE 42000](エラー 10054)リンク サーバー "DB 名" の OLE DB プロバイダー "" から、"クライアントが接続を確立できません" というメッセージが返されました。
原因 1: Rivest Cipher 4 (RC4) が含まれていない
暗号スイートに Rivest Cipher 4 (RC4) が含まれていない場合、暗号化に RC4 を使用しようとすると失敗します。 同様に、暗号スイートに RC4 が含まれているが、関係する当事者の 1 人が含まれていない場合、ハンドシェイクは失敗し、接続は確立されません。
ソリューション
次のステップを実行します。
msds-supportedEncryptionType
プロパティが設定されているかどうかを確認します。 プロパティが設定されていない場合は、RC4 のみが有効になります。- RC4、AES128、AES256 を有効にするには、このプロパティの値を 28 に設定します。
原因 2: トランスポート層セキュリティ (TLS) バージョンの不一致
トランスポート層セキュリティ (TLS) のバージョンが一致しません。 この問題は、クライアントが TLS 1.0 を使用して接続を開始した場合に発生する可能性があります。 最新の暗号スイートは TLS 1.0 をサポートしていないことがよくあります。TLS 1.2 などのより安全なバージョンが好まれるためです。
ソリューション
次のステップを実行します。
クライアント ドライバーが TLS 1.2 をサポートしていることを確認します。 そうでない場合は、ドライバーを更新します。
TLS 1.0 通信をサポートするために、次の暗号をローカル ポリシーに追加します。
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA