セキュリティ証明書の名前が無効であるか、サイトの名前と一致しません

セキュリティ証明書の名前が無効であるか、サイトの名前と一致しません

当社の Exchange サーバーは、しばらくの間、内部署名された証明書を使用して実行されていました。今日、信頼できる SSL 証明書 (ワイルドカード) を購入し、サーバーにインストールしました。

https://mail.example.no/owa証明書は *.example.no に発行され、 Web ブラウザーからWeb インターフェイスにアクセスしてもセキュリティ例外は発生しません。

現在、Outlook を開くと、この証明書検証エラーが発生します。提供されている標準的な解決策をすべて試しましたが、そのほとんどは外部 URL を内部 URL として設定することでした。

  • 内部 FQDN:mx.example.local
  • 外部FQDN:mail.example.no
  • エラーメッセージ: プロキシ サーバーのセキュリティ証明書に問題があります。セキュリティ証明書の名前が無効であるか、ターゲット サイト mx.example.local の名前と一致しません。Outlook はプロキシ サーバーに接続できません。(エラー コード 10)

私がしたこと:

Set-WebServicesVirtualDirectory –Identity ‘mx\EWS (Default Web Site)’ –ExternalUrl https://mail.example.no/ews/exchange.asmx

Set-WebServicesVirtualDirectory -Identity "mx\EWS (Default Web Site)" –InternalUrl https://mail.example.no/EWS/Exchange.asmx

Set-OABVirtualDirectory -Identity “mx\OAB (Default Web Site)” -InternalURL https://mail.example.no/OAB

Set-ActiveSyncVirtualDirectory -Identity “mx\Microsoft-Server-ActiveSync (Default Web Site)” -InternalURL https://mail.example.no/Microsoft-Server-Activesync

Set-ClientAccessServer -Identity mx -AutodiscoverServiceInternalUri https://mail.example.no/autodiscover/autodiscover.xml

結果:

[PS] C:\>Get-WebServicesVirtualDirectory | Select InternalUrl, BasicAuthentication, ExternalUrl, Identity | Format-List

InternalUrl         : https://mail.example.no/ews/exchange.asmx
BasicAuthentication : True
ExternalUrl         : https://mail.example.no/ews/exchange.asmx
Identity            : mx\EWS (Default Web Site)

[PS] C:\>Get-OabVirtualDirectory | Select InternalUrl, ExternalUrl, Identity | Format-List

InternalUrl : https://mail.example.no/oab
ExternalUrl : https://mail.example.no/OAB
Identity    : mx\OAB (Default Web Site)

[PS] C:\>Get-ActiveSyncVirtualDirectory | Select InternalUrl, ExternalUrl, Identity | Format-List

InternalUrl : https://mail.example.no/Microsoft-Server-ActiveSync
ExternalUrl : https://mail.example.no/Microsoft-Server-ActiveSync
Identity    : mx\Microsoft-Server-ActiveSync (Default Web Site)

[PS] C:\>Get-ClientAccessServer | Select Fqdn, AutoDiscoverServiceInternalUri, Identity | Format-List

Fqdn                           : mx.example.local
AutoDiscoverServiceInternalUri : https://mail.example.no/autodiscover/autodiscover.xml
Identity                       : mx

その後私は

  • IIS アプリケーション プール MSExchangeAutoDiscoverAppPool をリサイクルしました (それでもメッセージは消えなかったので...)
  • メール サーバー全体を再起動しました (それでもメッセージは消えなかったので...)
  • コントロール パネル -> メール -> 電子メール アカウントに移動し、自分のアカウントの修復を選択しました (この投稿をしていることから、これも効果がなかったことはご想像のとおりです)
  • クライアント コンピュータの DNS をフラッシュしました (自動検出 URL が無視された場合)
  • メールアカウントを再度修復しました
  • アカウントを編集して、パブリック FQDN、mail.example.no をサーバーアドレスとして設定しようとしました
  • 編集: アカウントを削除して再作成しようとしました。メール プロファイル全体、%AppData%\Local\Outlook、および %AppData%\Local\Outlook フォルダーを削除しました。それでも成功しません。

もうアイデアが尽きてしまいました... Web 上でアクセスしたすべてのサイトで、私が今行ったことと同じことを行うように提案されており、結果は私の結果と同じになると予想されます...

アップデート: ユーザーの 1 人が、ワークステーションから Outlook を使用してログインすることすらできません。アカウントは正常 (携帯電話のメールと Web クライアントは機能) ですが、Outlook はパスワード プロンプトを繰り返し表示し続け、オフライン モードを終了しません。

アップデート: Digicert の Web サイトで SSL チェックを実行し、証明書が正常にインストールされているかどうかを確認しました。サーバーはすべてのチェックに合格しましたが、SSL 3.0 プロトコルの使用についてのみ警告されました: プロトコル サポートは TLS 1.1、TLS 1.0、SSL 3.0 です。SSL 3.0 は、既知の脆弱性がある古いプロトコル バージョンです。

更新 150709:

免責事項:このアップデートによって実際の内部IPアドレスは損なわれていません

  • DNSに新しい前方参照ゾーンを設定し、mail.example.noメールサーバーの仮想IPアドレス192.168.1.1を指す空白の(A)レコードを1つ追加しました。
  • 192.168.1.in-adds.arpaの逆引き参照ゾーンに、mail.example.noを指す192.168.1.1という名前のe(PTR)レコードがあります。
  • ダウンロード済みMicrosoft Exchange 向け DigiCert® 内部名ツール
  • ツールを実行したところ、アドレスはほぼ正しかったのですが、OWAVirtualDirectory ECPVirtualDirectory はまだ mx.example.local を参照していたため、mail.example.no に変更しました。

nslookup出力は有望そうです:

D:\>ipconfig /flushdns

Windows IP Configuration

Successfully flushed the DNS Resolver Cache.

D:\>nslookup mail.example.no
Server:  dc1.example.local
Address:  192.168.1.2

Name:    mail.example.no
Address:  192.168.1.1


D:\>nslookup 192.168.1.1
Server:  dc.example.local
Address:  192.168.1.2

Name:    mail.example.no
Address:  192.168.1.1

Outlook は.....

小さなテスト:

  1. アカウント設定 -> 詳細設定 -> 接続 -> Exchange プロキシ設定に移動しました。
  2. 接続URLを次のように変更しましたhttps://mail.example.no
  3. 許可されたプリンシパル名をmsstd:*.example.no
  4. Outlook を再起動しました。証明書エラーは表示されなくなりましたが、接続されていないことに気付きました...
  5. アカウント設定をもう一度、今回は自動修復を選択しました
  6. Outlookを再起動しました
  7. ここで、Exchange プロキシ設定に戻ると、内部 URL が戻っています...

答え1

サード パーティ発行者からの証明書は、IIS または Exchange 上に配置されているため、Outlook を使用する LAN ユーザーがアクセスしようとしているローカル自動検出と連携できるように、サブジェクト別名として内部 FQDN を持っている必要があります。

そうでない場合、ユーザーには「SSL 証明書名の不一致」というプロンプトが表示され、場合によってはパスワードを何度も入力するよう求められます。

答え2

私はまさにこの問題と戦っています。コメントするだけのポイントがありません。

しかし、気になるのは、EXCH Outlook プロバイダーの CertPrincipalName が設定されているかということです。

Get-OutlookProvider

ワイルドカード証明書では、通常、EXPR プロバイダーを設定する必要があります。ただし、RPC クライアントの場合は EXCH プロバイダーも設定する必要があるようです。

Set-OutlookProvider EXCH -CertPrincipalName msstd:*.domain.com

関連情報