security – なぜブラウザは https://1.1.1.1 が安全だと思うのでしょうか?

browser https security ssl-certificate web

https://1.1.1.1にアクセスすると、私が使用しているどのWebブラウザでもURLが安全だと判断します

これがGoogle Chromeの表示です

Google Chrome 65.0.3325.181 address bar showing https://1.1.1.1

通常、そのIPアドレスを経由してHTTPSサイトを訪問しようとすると、このようなセキュリティ警告が表示されます

Google Chrome 65.0.3325.181 address bar showing https://192.168.0.2

私の理解では、サイト証明書はドメインと一致する必要があるのですが、Google Chrome証明書ビューアでは1.1.1.1が表示されません

Certificate Viewer: *.cloudflare-dns.com

GoDaddyのナレッジベースの記事「イントラネットの名前やIPアドレスの証明書を要求できますか?”」にはこう書かれています

いいえ – イントラネット名または IP アドレスの証明書要求は、もはや受け付けていません。これは業界全体の標準であり、GoDaddy に特有のものではありません

(emphasis mine)

And also:

その結果、2016年10月1日より、認証局(CA)はイントラネット名やIPアドレスを使用したSSL証明書を失効させなければなりません

(emphasis mine)

And:

IP アドレスやイントラネット名を確保するのではなく、www.coolexample.com のような完全修飾ドメイン名(FQDN)を使用するようにサーバーを再設定する必要があります

(emphasis mine)

強制失効日の2016年10月01日をかなり過ぎていますが、それでも1.1.1.1の証明書は2018年3月29日に発行されています(上のスクリーンショットの通り)


https://1.1.1.1が信頼できるHTTPSサイトだと主要なブラウザが思っているのはどうしてでしょうか?

  135  None  2018-04-12


ベストアンサー

英語は曖昧です。こんな風にパースしてたんですね

(intranet names) or (IP addresses)

つまり、数字のIPアドレスの使用を全面的に禁止する。あなたが見ているものと一致する意味は

intranet (names or IP addresses)

つまり、10.0.0.0.0/8、172.16.0.0.0/12、192.168.0.0/16 のようなプライベートIP範囲や、パブリックDNS上では見えないプライベート名の証明書を禁止します

公にルーティング可能なIPアドレスの証明書はまだ許可されていますが、多くの人、特に固定IPを所有していない人には一般的には推奨されていません


この記述はアドバイスであって、(パブリック)IPアドレスを確保できないという主張ではありません

IP アドレスやイントラネット名を確保するのではなく、www.coolexample.com のような完全修飾ドメイン名(FQDN)を使用するようにサーバーを再設定する必要があります

もしかしたら、GoDaddyの誰かが言葉を誤解していたのかもしれませんが、より可能性が高いのは、彼らはアドバイスをシンプルに保ちたいと思っていて、証明書でパブリックDNS名を使用することを推奨したいと思っていたのかもしれません

ほとんどの人はサービスに安定した固定IPを使っていません。DNSサービスを提供する場合、名前だけではなく安定したよく知られたIPを持つことが本当に必要なケースの一つです。他の誰にとっても、現在のIPをSSL証明書に入れることは将来の選択肢を狭めることになります。彼らはあなたのサイトになりすましてしまうかもしれません

Cloudflare.com 1.1.1.1.1 の IP アドレスをコントロールしている特に DNS プロバイダとしては、HTTPS クライアントが他のサイトよりも数で URL を訪問する可能性が高い

97  Peter Cordes  2018-04-12


GoDaddyのドキュメントは間違っています。認証局 (CA) がすべての IP アドレスに対して証明書を失効させなければならないというのは正しくありません

ソース。https://cabforum.org/internal-names/

https://1.1.1.1のCAは、DigiCertでした

DigiCertに2015年以降の内部サーバ名SSL証明書発行という記事があります

内部名を使用しているサーバ管理者の場合は、公開名を使用するようにサーバを再設定するか、2015年の締切日までに内部CAが発行した証明書に切り替える必要があります。公開信頼された証明書を必要とするすべての内部接続は、公開されていて検証可能な名前を使用しなければなりません(それらのサービスが公開されているかどうかは問題ではありません)

(emphasis mine)

Cloudflareは、単にその信頼できるCAからIPアドレス1.1.1.1の証明書を取得しただけです

https://1.1.1.1 の証明書を解析すると、証明書にはサブジェクト代替名(SAN)が使用されており、一部のIPアドレスと通常のドメイン名が含まれていることがわかります

deltik@node51 [~]$ openssl s_client -showcerts -connect 1.1.1.1:443 < /dev/null 2>&1 | openssl x509 -noout -text | grep -A1 'Subject Alternative Name:'
X509v3 Subject Alternative Name:
DNS:*.cloudflare-dns.com, IP Address:1.1.1.1, IP Address:1.0.0.1, DNS:cloudflare-dns.com, IP Address:2606:4700:4700:0:0:0:0:1111, IP Address:2606:4700:4700:0:0:0:0:1001

この情報は、「詳細」タブのGoogle Chrome証明書ビューアにもあります

Certificate Viewer: Details: *.cloudflare-dns.com

この証明書は、記載されているすべてのドメイン(ワイルドカード*を含む)とIPアドレスに対して有効です

101  Deltik  2018-04-12


Certificate Subject Alt NameにIPアドレスが含まれているようです

Not Critical
DNS Name: *.cloudflare-dns.com
IP Address: 1.1.1.1
IP Address: 1.0.0.1
DNS Name: cloudflare-dns.com
IP Address: 2606:4700:4700::1111
IP Address: 2606:4700:4700::1001

従来はここにDNS名を入れるだけだったと思いますが、CloudflareはIPアドレスも入れています

https://1.0.0.1/もブラウザによって安全とされています

45  Michael Frank  2018-04-12


タイトルとURLをコピーしました