为什么我的浏览器认为 https://1.1.1.1 是安全的?

为什么我的浏览器认为 https://1.1.1.1 是安全的?

当我访问https://1.1.1.1,我使用的任何网络浏览器都认为该 URL 是安全的。

Google Chrome 显示的内容如下:

Google Chrome 65.0.3325.181 地址栏显示 https://1.1.1.1

通常,当我尝试通过 IP 地址访问 HTTPS 网站时,我会收到如下安全警告:

Google Chrome 65.0.3325.181 地址栏显示 https://192.168.0.2

据我了解,网站证书需要与域名匹配,但 Google Chrome 证书查看器并未显示1.1.1.1

证书查看器:*.cloudflare-dns.com

GoDaddy 的知识库文章“我可以为内联网名称或 IP 地址申请证书吗?”说:

不可以 - 我们不再接受针对内联网名称或 IP 地址的证书请求。这是一个行业标准,而不是特定于 GoDaddy 的。

强调矿)

并且:

因此,自 2016 年 10 月 1 日起生效、认证机构 (CA)必须撤销使用内部网名称或IP 地址

强调矿)

和:

而不是保护 IP 地址和内联网名称,您应该重新配置服务器以使用完全限定域名 (FQDN),例如www.coolexample.com

强调矿)

虽然该证书的颁发日期已远远晚于强制撤销日期 2016 年 10 月 1 日,但1.1.1.1颁发日期却是 2018 年 3 月 29 日(如上图所示)。


所有主流浏览器怎么可能都认为https://1.1.1.1是可信任的 HTTPS 网站吗?

答案1

英语含糊不清。您可以像这样解析它:

(intranet names) or (IP addresses)

即完全禁止使用数字 IP 地址。与您看到的内容相符的含义是:

intranet (names or IP addresses)

即禁止证书私有 IP 范围例如 10.0.0.0/8、172.16.0.0/12 和 192.168.0.0/16,以及公共 DNS 上看不到的私有名称。

仍然允许使用可公开路由的 IP 地址的证书,一般不推荐大多数人使用,特别是那些没有静态 IP 的人。


此声明仅为建议,并非要求您不能保护(公共)IP 地址。

您不应保护 IP 地址和内联网名称,而应重新配置服务器以使用完全限定域名 (FQDN),例如 www.coolexample.com

也许 GoDaddy 的某个人误解了措辞,但更有可能的是,他们希望保持建议简单,并希望建议在证书中使用公共 DNS 名称。

大多数人不会为其服务使用稳定的静态 IP。提供 DNS 服务是真正需要拥有稳定、知名的 IP 而不仅仅是名称的情况。 对于其他任何人来说,将您当前的 IP 放入 SSL 证书中都会限制您未来的选择,因为您不能让其他人开始使用该 IP。他们可以冒充您的网站。

Cloudflare.com控制1.1.1.1 IP 地址本身,并且在可预见的未来不打算用它做任何不同的事情,所以这是有道理的对他们来说将他们的 IP 放入证书中。尤其是作为 DNS 提供商,HTTPS 客户端按数量访问其 URL 的可能性比访问其他任何网站的可能性都大。

答案2

GoDaddy 文档有误。证书颁发机构 (CA) 必须吊销所有 IP 地址的证书,这种说法并不正确……仅保留 IP 地址

来源:https://cabforum.org/internal-names/

CA 的https://1.1.1.1曾是DigiCert,截至撰写此答案时,确实允许购买公共 IP 地址的站点证书。

DigiCert 有一篇关于此的文章,名为2015 年之后的内部服务器名称 SSL 证书颁发

如果您是使用内部名称的服务器管理员,则需要重新配置这些服务器以使用公共名称,或者在 2015 年截止日期之前切换到内部 CA 颁发的证书。所有需要公共信任证书的内部连接都必须通过以下名称进行:公开且可验证(这些服务是否公开并不重要)。

强调矿)

1.1.1.1Cloudflare 只是从该受信任的 CA获取了其 IP 地址的证书。

解析证书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 证书查看器的“详细信息”选项卡下:

证书查看器:详细信息:*.cloudflare-dns.com

此证书对列出的所有域名(包括通配符*)和 IP 地址有效。

答案3

看起来证书主题备用名称包含 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/也被浏览器认为是安全的。

相关内容