chromeでの自己証明書の認識に関するメモ


chromeでの自己証明書の認識に関するメモ

自己証明書(通称オレオレ証明書)を登録したWebサイトにアクセスしたときに、
IEだと、証明書エラーが出ないのに

最新のGoogle Chrome(バージョン58以上)からアクセスすると、SSL自己証明書を使っているサイトで、証明書エラーになる場合があります。

調べてみると、
最新のGoogle Chrome(バージョン58以上)から、証明書の扱いが変わっていているようです、

これまでは、

・証明書のCN(共通名)を見て、接続先ドメイン名と一致しているかを確認

していたものが、上記バージョン以降だと

・X509v3 Subject Alternative Name: DNS: (略してSANとも呼ばれるらしい)と、接続先ドメイン名と一致しているかを確認(証明書のCN(共通名)を確認しない)

となっているらしいです。

自己証明書を作成する際に、この項目を指定していないと、せっかく証明書を作ってもchromeではエラーになってしまうことになります。

例として、以下の条件の場合で作成手順を確認してみました。

・WebサーバがWindowsドメイン参加している。
・Windowsドメインに証明局(Windows証明書サービス)が登録されている。
・作成する証明書のドメイン名は「*.nsb.homeip.net」(アスタリスク証明書)

 

それでは、Webサーバから、証明局に証明書発行を依頼してみます。

 

1.Webサーバでmmc.exeを起動し、「ファイル」から、「スナップインの追加と削除」をクリックします。

2.「利用できるスナップイン」の中から「証明書」を選択し、追加をクリックします。

3.「証明書スナップイン」で、「コンピュータアカウント」を選択肢、「次へ」をクリックします。

4.「コンピュータの選択」で、「ローカルコンピュータ」を選択し、完了をクリックします。

5.「選択されたスナップイン」に「証明書(ローカルコンピュータ)」が追加されたことを確認して、「OK」をクリックします。

6.「コンソールルート」から「証明書(ローカルコンピュータ)」-「個人」-「証明書」をクリックします。現在Webサーバに登録されている証明書が表示されます。

(今回は、*.nsb.homeip.netの証明書を作り直します。)

7.「*.nsb.homeip.net」で右クリックして、「すべてのタスク」-「新しいキーで証明書を要求」をっクリック

8.「証明書の登録」ウィザードが開始されますので、「次へ」をクリックします。

9.「証明書の要求」で「Active Directory 登録ポリシー」から、前回作成に使用したポリシーを選択します(今回は、VMwareCertificate)
(もし、テンプレートが表示されないようであれば、証明書テンプレートを作成し、権限を付与する必要があります。手順はこちらが参考になります。
詳細情報を入力するため、「この証明書を登録するには情報が不足しています。設定を構成するには、ここをクリックしてください。」をクリックします。

10.「証明書のプロパティ」が表示されるので、必要な情報を入力します。
最低限入力しなければいけないのは2つあります。

11.「サブジェクト名」で「種類」で「共通名」を選択し、値に「*.nsb.homeip.net」を入力し、追加をクリックします。

12.「サブジェクト」に「CN=*.nsb.homeip.net」の行が追加されたことを確認後、
「別名」で「種類」で「DNS」を選択し、値に「*.nsb.homeip.net」を入力し、追加をクリックします。

13.「別名」に「DNS」と「*.nsb.homeip.net」の行が追加されたことを確認します。
最低限設定しなければいけない項目は以上ですが、必要に応じて設定を追加します。
入力が完了したら、「OK」をクリックします。

15.証明書発行依頼の準備ができましたので、登録をクリックします。

16.証明書の登録が完了しました。
「完了」をクリックします

17.証明書が追加されました。
追加された証明書をWebサーバなどに登録します。
今回の証明書は、VMwareHorizonViewのConnection Serverで使用するので、フレンドリ名を「vdm」に設定して、既存の証明書のフレンドリ名をクリアして、サーバを再起動すればOKです。

新しい証明書に入れ替えた結果、
chromeでも証明書エラーが出なくなりました。

めでたし、めでたし。

 

なお、IISからCSRを作成して、証明局に送付して証明書を発行してもらうような場合は、
以下のページがわかりやすそうです。

Windows Serverの認証局でSAN属性を持たせたマルチドメイン証明書を認証する
https://qiita.com/shadowhat/items/f71b2564dfed0319fbac

 

また、証明書の署名ハッシュアルゴリズムがsha2(SHA256やSHA512)に切り替わっておらず、以前のsha1を使用している場合でも、同様のエラーになってしまうらしいです。
その場合は、ドメインに登録された証明局側で調整の上、証明書の再発行が必要とのことです。
(なお、証明書の詳細表示の中の「拇印アルゴリズム」はsha1でも問題ありません。)

Update Microsoft certificate authorities to use the SHA-2 hashing algorithm
http://www.cusoon.fr/update-microsoft-certificate-authorities-to-use-the-sha-2-hashing-algorithm-2/

(上記作業を実施した場合、証明局の証明書の再展開が必要になる場合がありますので、ご注意を)

 

 

以下参考にしたページ様
Chrome58で、HTTPSの自己証明書が NET::ERR_CERT_COMMON_NAME_INVALID になる場合の対応
https://tech.torico-corp.com/blog/chrome58-https-ssl-cert-san-error/

何でも屋: 簡単になった証明書の作成 (第 2 部)
https://technet.microsoft.com/ja-jp/library/dn198511.aspx?f=255&MSPPError=-2147217396


コメントを残す

メールアドレスが公開されることはありません。