在整个站点中使用SSL

时间:2010-12-23 01:59:24

标签: ssl https

我只考虑在整个网站上使用SSL,而不只是为HTTPS访问选择一些页面。

这会有什么缺点?

编辑2014年8月7日

Google现在因为排名而使用HTTPS,因此您绝对应该在整个网站上使用SSL:

http://googleonlinesecurity.blogspot.com/2014/08/https-as-ranking-signal_6.html

6 个答案:

答案 0 :(得分:38)

如今,强烈建议在TLS(https)上运行整个网站。

开销问题已成为过去,它不再是新TLS协议的问题,因为它现在正在维护会话,甚至在客户端断开连接时缓存它们以供重用。在过去,事实并非如此。这意味着今天,你必须做公钥加密(cpu重的类型)的唯一时间是建立连接。所以当你拥有证书时,没有任何缺点。这意味着您不必在http和https之间来回发送信息,客户将始终在浏览器中看到锁定标志。

Firesheep发布后,对这个主题给予了额外的关注。你可能已经听说Firesheep是一个Firefox插件,让你轻松(如果你们都使用相同的开放wifi网络)在Facebook,Twitter等网站上高举其他人的会话。这是有效的,因为这些网站只选择性地使用TLS,如果在站点范围内启用TLS,这对他们来说不会有问题。

因此,总的来说,缺点(例如增加的CPU使用率)对于当前技术的状态可以忽略不计,并且专业人员很清楚,因此通过SSL / TLS提供所有内容!这是现在的方式。

编辑如其他答案所述,在没有SSL / TLS的情况下提供某些网站内容(如图片)的另一个问题是,客户/用户会得到一个非常恼人的“不安全内容”安全页面“消息。

此外,作为stated by thirtydot,您应该将人员重定向到https网站。您甚至可以启用使您的服务器拒绝非ssl连接的标志。

另一个编辑:正如a comment below中所指出的,请记住,SSL / TLS并不是解决所有网站安全需求的唯一解决方案,还有很多其他注意事项,但它确实为用户解决了一些安全问题,并很好地解决了这些问题(尽管有很多方法可以做中间人,即使使用SSL / TLS)

答案 1 :(得分:3)

如果可能的话,最好这样做,但是你应该:

  • 从普通HTTP提供静态资源(图像,CSS等)以避免HTTPS开销。
    (不要这样做,否则你会收到有关“不安全资源”的警告。)
  • 您还应该将HTTP主页重定向到HTTPS版本,以便用户无需键入HTTPS即可访问您的网站。

缺点包括:

  • 响应性较低的浏览体验 - 因为之间有更多的来回 具有HTTPS与HTTP的服务器和客户端 - 这一点值得注意的将取决于服务器和客户端之间的延迟。
  • 服务器上的CPU使用率增加 - 因为每个页面都必须加密,而不是只选择少数几个。

答案 2 :(得分:1)

用于建立SSL连接的服务器端算法非常昂贵,因此通过SSL提供所有内容需要在后端使用更多CPU电源。 据我所知,这是唯一的缺点。

答案 3 :(得分:1)

SSL不是为虚拟主机设计的,尤其是弹性云类型。如果您无法控制Web服务器的主机名以及它们如何解析为IP地址,则可能会遇到一些困难。

但总的来说,这是一个好主意,如果你允许用户登录你的网站,几乎是必要的(如Firesheep所示)。

  

我还应该添加我想要做的事情。我想允许社交服务登录(如FaceBook),但我们也将存储信用卡信息

对于用户可以查看其信用卡信息或进行金融交易的页面,可以更好地转换为更安全的身份验证模式。 Facebook是一个很大的目标,吸引着黑客。如果有人的Facebook帐户被黑客攻击,然后他们可以花钱或从您的网站收集信用卡信息,那就不太好了。接受非关键内容的社交服务登录很好,但对于网站中更严重的部分,最好需要额外的密码。

答案 4 :(得分:0)

  

这些天强烈推荐   在TLS上运行整个方面

某些人强烈推荐

  1. 您的用户总数 系统可以支持门控 无论是CPU需求还是IO负载; 如果你是对抗CPU,TLS 使情况变得更糟。
  2. 加密流量使得无法使用某些诊断技术。
  3. 如果您加载任何非加密文件,大多数浏览器都会向您的用户发出警告。如果您尝试访问第三方资源,这可能是一个巨大的问题。
  4. 在某些情况下(例如,大量资金岌岌可危),只需咬紧牙关加密一切就行了;在其他情况下,攻击者拦截飞行中的数据包并决定劫持会话的几率非常低,可以完成的伤害量非常小,你可以随心所欲地行动。 (例如,会话,我用来发布此答案的会话,是未加密的,我真的,真的不在乎。)

    对于其他情况,您可能希望为用户提供选择。有人在他自己的地下室使用硬线连接可能会造成与黑帽会议对面星巴克使用WiFi的人不同的情况。

    我正在研究协议和库,以便您签署XHR请求。我们的想法是将整个站点设置为HTML,CSS和JavaScript的静态文件,这些文件将从CDN加载。实际的应用程序将完全由JavaScript制作AJAX和COMET请求。任何必须进行身份验证的请求都是,但实际上,大多数请求都没有。我用这种方式完成了几个站点 - 它们非常非常可扩展。

答案 5 :(得分:0)

我们运营一个完全强制,安全的网站和商店。我是根据一位了解网站安全性的朋友的建议做到的。

积极的是,我们的网站似乎并没有明显变慢。此外,谷歌分析运行,但我无法让电子商务工作。如果它保护我们免受攻击,我不能说出来,但直到今天都没有麻烦。

然而,糟糕的是,您将很难在安全网站上运行Youtube和社交(“赞”)框。

提高安全性的提示:

  1. 好的虚拟主机(它们会花费你,但它是值得的!)
  2. 访客无法登录。它会破坏可用性,但通过快速简便的结账,显而易见的是,您只是不存储敏感信息。
  3. 使用优质的付款服务提供商,让他们处理付款。
  4. * 2我知道这不会适用于很多网站,但“你没有,不能被盗”。 我们已经在我们的网上商店销售了2年没有登录,只要Checkout是Mega简单且闪电般快速,它就能正常工作。

相关问题