小木猫

 找回密码
 立即注册

扫一扫,访问微社区

搜索
热搜: 活动 交友 discuz
查看: 487|回复: 0
打印 上一主题 下一主题

Cloudflare友情提醒:使用SNI的必要性

[复制链接]
跳转到指定楼层
楼主
发表于 2021-10-30 08:43:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
  你的浏览历史有多 私密?

  当您通过HTTPS访问一个站点时,您希望没有人监听您和您的连接终止的位置之间的操作的。某种程度上来说,这是HTTPS能做到的。如果您访问您的银行网站,HTTPS可以有效地防止发送到或从该网站发送的内容(例如,您的用户名和密码或您的银行帐户余额)泄露给ISP或监视您网络连接的任何人。

  尽管发送到HTTPS站点或从HTTPS站点接收的内容是受到保护的,但是还有两种方式可以很容易地观察到您访问过该站点。传统上,其中一种是通过DNS。默认情况下,DNS查询是不加密的,因此您的ISP或任何其他人都可以看到您要到达网络上的哪个地方。Cloudflare 1.1.1.1——一个免费的(而且速度很快的)公共DNS解析器,支持DNS over TLS和DNS over HTTPS。

  

  1.1.1.1已经取得了巨大的成功,我们显著提高了通过加密连接发送DNS查询的百分比。然而,批评人士正确地指出,你访问的网站的身份仍可能以其他方式泄露。最有问题的是所谓的服务器名称指示(SNI)扩展。

  为什么使用SNI

  从根本上说,SNI的存在是为了允许您在一个IP地址上托管多个加密的网站。早期的浏览器没有包含SNI扩展。因此,当发出建立HTTPS连接的请求时,web服务器没有太多信息来继续进行,并且只能回收web服务器正在监听的每个IP地址的单个SSL证书。

  这个问题的一个解决方案是,创建具有多个主题备用名称(SANs)的证书。这些证书将加密多个域的流量,这些域都可以托管在同一个IP上。Cloudflare就是这样处理来自不支持SNI的旧浏览器的HTTPS流量的。然而,我们限制这一功能仅供我们的付费客户使用,这和SANs不是一个很好的解决方案的原因一样:它们是一种黑客攻击,管理起来很麻烦,如果包含了太多域,可能会降低性能。

  最具弹性的解决方案是SNI。Cloudflare认为的一个合理的类比是,把它想象成一个邮政信封。信封里的东西是受保护的,邮差是看不到的。而信封外面是街道地址,邮差根据它来将信封送到正确的建筑位置。在互联网上,web服务器的IP地址就相当于街道地址。

  然而,如果你住在一个多单元的大楼里,仅仅通过一个街道地址是不足以把信封送到正确的收件人手中的。为了补充街道地址,你要写上一个公寓号码或收件人的名字。这相当于SNI。如果web服务器承载多个域,SNI可以确保将请求路由到正确的站点,以便返回正确的SSL证书,从而能够加密和解密任何内容。

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表