云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

京东云_电子商务网站建设论文_企业级

小七 141 0

介绍Cloudflare洋葱服务

当:一个寒冷的旧金山夏日午后这里:房间305,CloudflareWho:2来自Cloudflare+9来自Tor项目会出什么问题?两年前的本周,Cloudflare引入了机会加密,这一特性为尚未改用HTTPS的网站提供了额外的安全性和性能优势。事实上,在过去,有些网站只使用HTTP——很奇怪,对吧?"这里的"机会主义"意味着服务器通过一个HTTP替代服务头来宣传对HTTP/2的支持,希望任何识别该协议的浏览器都能在随后对该域的请求中利用这些优势。大约在同一时间,首席执行官马修•普林斯(Matthew Prince)撰文阐述了互联网上隐私的重要性和挑战,并责成我们寻找一种提供方便、安全和匿名的解决方案。从消除隐私獾所依赖的指纹向量和日常浏览器跟踪器,到减轻只有大公司才有能力的关联攻击,保证隐私是一个复杂的挑战。幸运的是,Tor项目在Tor浏览器中解决了这个广泛的对手模型。然而,互联网上到处都是坏人,当流量是匿名的时候,区分合法流量和恶意流量(Cloudflare的核心功能之一)变得更加困难。特别是,许多使Tor成为隐私保护工具的特性也使其成为隐藏恶意流量来源的工具。这就是为什么许多人求助于使用验证码挑战来提高在Tor网络上成为机器人的成本。然而,使用CAPTCHA挑战来阻止机器人有一个附带的损害:人类的眼睛也必须处理它们。减少这种情况的一种方法是使用保护隐私的加密签名,也称为盲令牌,例如那些支持隐私传递的令牌。另一种方法是用洋葱。接下来,Ononinstoday的Crypto Week版本引入了一种"机会主义"的解决方案来解决这个问题,因此,在适当的条件下,任何使用Tor Browser 8.0的人都可以在访问Cloudflare网站时享受到更高的安全性和性能,而不必面对验证码。同时,此功能支持更细粒度的速率限制,以防止恶意流量,而且由于这里描述的思想机制并非特定于Cloudflare,因此任何人都可以自行重用此方法网站。之前我们继续,如果你需要复习一下Tor是什么或者我们为什么要谈论洋葱,请查看Tor项目网站或我们自己在DNS解析程序洋葱上的博客文章六月。就像Matthew在他的博客中提到,筛选Tor流量的一种方法是使用洋葱服务协议。Onion服务是Tor节点,它公布其公钥,用.Onion TLD编码为一个地址,并使用"集合点"在Tor网络中完全建立连接:而Onion服务的设计目的是为内容提供商提供匿名性,媒体机构使用它来允许告密者与他们进行安全通信,而Facebook则使用它来告诉Tor用户机器人从洋葱服务的角度来看,每一个单独的Tor连接或电路都有一个唯一但短暂的相关数字,而从普通服务器的角度来看,通过一个出口节点发出的所有Tor请求共享同一个IP地址。使用这个电路号,洋葱服务可以区分各个电路并终止那些看起来恶意的电路。澄清一下,这并不意味着洋葱服务可以识别或跟踪Tor用户。而坏的参与者仍然可以通过重复集合协议来建立新的电路,这样做需要花费时间和计算的密码密钥交换。把它想象成一个加密拨号序列。垃圾邮件发送者可以一遍又一遍地拨打我们的洋葱服务,但每次他们都要重复这个键交换。或者,完成会合协议可以看作是使用Cloudflare Onion服务所需工作的一个小证明。这增加了使用洋葱服务执行拒绝服务的成本攻击。问题解决了,对吧?不完全是。正如我们在引入隐藏解析器时所讨论的,确保看似随机的洋葱地址是正确的这一问题是可用安全性的一个障碍。在这种情况下,我们的解决方案是购买一个扩展验证(EV)证书,它的成本要高得多。不用说,这限制了那些可以为洋葱服务购买HTTPS证书的少数特权用户。有些人不同意。特别是,新一代洋葱服务解决了Matthew指出的一个弱点,即CA/B论坛只允许洋葱服务的EV证书。这可能意味着很快就可以获得洋葱服务的域验证(DV)证书。我们当然希望如此。不过,DV证书缺少地址栏中显示的组织名称(例如"Cloudflare,Inc."),而且与密码相关的数字几乎不可能被人类记住或区分。这让我们回到可用安全性的问题上,所以我们提出了一个不同的主意。看在洋葱的地址不同之前,我们正在讨论匿名。当你输入"cloudflare.com网站在浏览器中按enter键,设备首先将该域名解析为IP地址,然后浏览器向服务器请求有效的证书cloudflare.com网站"并尝试与主机建立加密连接。只要证书被证书颁发机构信任,就没有理由介意IP地址。大概这里的想法是简单地将上面场景中的IP地址切换为.洋葱地址。只要证书有效,.onion地址本身就不需要由用户手动输入,甚至不需要记住。实际上,证书是有效的这一事实表明.洋葱地址是正确。在特别是,同一个IP地址可以服务于数百万个域一样,一个.onion地址应该能够为任意数量的域服务域。除了,DNS不起作用好吧。怎么了那它有用吗?就像使用机会主义加密一样,我们可以使用HTTP替代服务将用户指向Cloudflare Onion服务,这是一种允许服务器告诉客户他们正在访问的服务在另一个网络位置或通过另一个协议可用的机制。例如,当Tor Browser请求cloudflare.com网站,Cloudflare添加了一个可选的服务头,以指示站点可以通过我们的洋葱通过HTTP/2访问服务。在与Cloudflare拥有服务于客户网站的IP地址相同,我们运行10.洋葱地址。可以将它们想象为Tor网络中的10个Cloudflare存在点(或POP)。确切的头看起来像这样,除了包含所有10.onion地址之外,每个地址都以前缀"cflare"开头:alt svc:h2="cflare2nge4h4yqr3574crrd7k66lil3torzbisz6uciyuzqc2h2ykyd洋葱:443"ma=86400;持久性=1这只是表示"cloudflare.com网站"可以使用HTTP/2("h2")通过虚拟端口443通过洋葱服务"cflare2n[…].onion"进行授权访问。字段"ma"(max age)表示客户端应记住备用服务存在的时间(以秒为单位),"persist"表示在网络处于空闲状态时是否应清除备用服务缓存打断了。一次浏览器接收到这个标题,它尝试为alt svc报头中公布的洋葱服务建立一个新的Tor电路,并确认监听虚拟端口443的服务器可以提供一个有效的证书"cloudflare.com网站"—即原始主机名,而不是.onion地址然后,洋葱服务将客户机Hello包转发到可以提供服务的本地服务器"的证书"cloudflare.com网站"这样Tor守护进程本身可以非常小。下面是一个配置示例文件:SocksPort 0隐藏服务非匿名模式1HiddenServiceSingleHopMode 1HiddenService3版海登服务端口443安全记录1日志通知标准输出使用上面的配置时要小心,因为它为本身不需要匿名的洋葱服务启用了非匿名设置。澄清一下,这并没有牺牲Tor用户的隐私或匿名性,只是牺牲了服务器。另外,它改善了电路。如果此证书由受信任的证书颁发机构签名,以便以后向"cloudflare.com网站浏览器将使用HTTP/2通过洋葱服务进行连接,从而避免了通过出口的需要节点。这里步骤是否再总结一次时间:一个新的Tor电路已建立浏览器使用SNI向洋葱服务发送客户端Hello=cloudflare.com网站;洋葱服务将数据包中继到本地服务器;服务器用SNI的serverhello进行应答=cloudflare.com网站;洋葱服务将数据包中继到浏览器;浏览器验证证书是否有效。到重申,洋葱服务提供的证书只需要对原始主机名有效,这意味着不需要在证书的任何地方提到洋葱地址。这是一个巨大的好处,因为它允许您,例如,为您的.org域提供一个免费的Let's Encrypt证书,而不是一个昂贵的EV证书。方便,✓区分电路记住,虽然一个出口节点可以为许多不同的客户端提供服务,但从Cloudflare的角度来看,所有这些流量都来自一个IP地址。这种池有助于覆盖合法流量中的恶意流量,但对于Tor的安全性或隐私性来说并不重要。事实上,它可能会使用户的流量暴露在错误的出口中,从而对用户造成潜在的伤害节点。记得吗Tor电路到洋葱服务带有一个电路号,我们可以用它来限制电路的速率。现在,问题是如何以最小的工作量通知nginx这样的服务器。事实证明,只要在Tor二进制文件中稍作调整,我们就可以在