强制站点通过SSL(HTTPS)加载有什么好处?


55

假设我有一个大型的纯内容网站;没有登录或注销,没有用户名,没有电子邮件地址,没有安全区域,网站上没有秘密,nada。人们只是来到网站,然后一页一页地浏览内容。

除了Google的SEO 略有提高(根据我的阅读,非常轻微)之外,强迫网站通过HTTPS加载是否有任何好处?


1
我不认为这是现在强制在网站上使用SSL的副本吗?。尽管某些答案可能最终相似,但是该问题正在寻求有关是否使用SSL的建议。如果有的话,另一个问题应该以观点为基础而关闭。
Stephen Ostermiller

4
让我们来看看:不使用SSL有什么好处?我什么都不知道。哦,可以肯定的是,这种实现将是一次性的,并且(与其他所有功能相比)无需花费时间。因此,如果一种方法没有缺点,也有一些优点,而另一种方法没有优点,并且(根据您的观点)没有缺点,那么...为什么坚持后者?
VLAZ '16

3
@Vld-性能。如今,我们经常尝试将站点的初始加载时间优化为亚秒级性能指标,目标是1/2秒。在互联网连接稍慢的情况下(数据包延迟大约为100ms),SSL握手很容易花费300ms,这很可能使您无法实现性能目标。对于移动用户而言,情况更糟:移动网络的数据包等待时间更长,而在速度较慢的手机上,用于证书验证的处理时间很容易又需要几百毫秒。
Jules'July

6
移动运营商始终会篡改未加密的HTTP流量,无论是用于图像(过度)压缩,注入恶意Javascript还是更具攻击性的缓存控制标头。HTTPS将防止所有这些废话。
安德烈·博里

2
@Josef不正确。HTTP / 2也可以在未加密的连接上工作。没有浏览器可以做到这一点,但这是浏览器的限制,而不是HTTP / 2。说“ HTTP / 2仅在TLS上起作用”,就像在说“技术X无效,因为Internet Explorer无法实现它”。看看把我们带到了哪里。
Agent_L '16

Answers:


84

HTTPS不仅提供保密性(尽管仍然有充分的理由,但您怀疑它的价值),而且还提供了始终具有价值的真实性。没有它,恶意访问点/路由器/ ISP /等等。可以重写网站的任何部分,然后再向用户显示。这可能包括:

  • 为您的竞争对手注入广告
  • 注入广告或令人讨厌的窗口小部件,使您的网站看起来很糟糕并损害您的声誉
  • 注入利用漏洞进行恶意下载的恶意软件到访问者的计算机上,然后访问者(正确地!)将其归咎于您
  • 用捆绑了恶意软件的软件替换您网站上的软件下载
  • 降低图像质量
  • 删除您不希望您看到的网站部分,例如与自己的服务竞争的产品或描述其效果不佳的产品
  • 等等

无法保护您的用户免受这些伤害是不负责任的。


27
@Mike不是。有很多现成的软件可以执行此操作,并且它们都可以很好地处理解压缩和重新压缩。
ceejayoz '16

3
@Mike不是。完整的重写代理可以解码所有流量,并重新注入它想要的任何新内容。
Nayuki '16

10
仅供参考,即使不是全部,我的所有例子实际上都是在野外看到的。
R.,

2
@DavidMulder您的第一条评论说“ 集中化不是一件好事”
jiggunjer '16

3
我们能否将对这个答案的评论变成对无关问题的脱口而出的风格?
R.,

25

“网站上没有任何秘密”

...根据。有人想要一个安全的连接是一个很好的理由。它(部分)创造了隐私:

我的管理员可以看到我正在通过url在手机上浏览某些图片站点,但他不知道我是在看可爱猫咪还是色情影片。我会说那真是该死的好隐私。“内容”和“内容”可以改变世界。Agent_L

您可能会认为这无关紧要,或者也许现在没什么大不了的,但是可能在另一个时间点。我坚信,除了我和网站之外,没有人应该确切知道我在做什么。

它建立信任。拥有挂锁是安全的标志,它可以表示有关网站以及您产品的某种技能。

它使您减少了针对MitM攻击的目标。安全性提高。

借助诸如Let's Encrypt之举措,它变得更加轻松和免费,并且没有太多弊端。如今,SSL占用的CPU能力微不足道。


11
不幸的是,SSL不会阻止企业IT或您的ISP或公共咖啡馆wifi上的人与您一起了解您正在访问哪些站点。DNS查找仍然是显而易见的。尽管他们看不到内容,确切的URL,甚至看不到您使用的是网络浏览器,但他们可以看到您正在访问penisland.com(这当然是笔爱好者的网站,但是可能会被误解)。使用VPN或SOCKS5代理将保护您的DNS查询。
Schwern 2016年

3
@Martijn:使用服务器名称指示(所有现代浏览器都支持),网站的主机名本身作为HTTPS握手的一部分以明文形式发送。这不仅仅是边路攻击的问题,不能通过DNSsec加以缓解。
凯文

3
@Schwern我从不理解HTTPS不能保护主机名的说法,因为DNS查找以及SNI和服务器的证书是明确的。如前所述,这当然是正确的,但是纯文本HTTP在这方面绝不是更好的选择!
CVn

5
@Schwern我的管理员可以看到我正在手机上浏览tumblr,但他不知道我是在看可爱猫咪还是色情影片。我会说那真是该死的好隐私。“内容”和“内容”可以改变世界。
Agent_L '16

2
@Agent_L不,即使这样也不是一个好建议。如果您转到https://penisland.tumblr.com/浏览器,则会执行一个DNS请求penisland.tumblr.com,除非您保护了DNS查询,否则网络管理员可以看到。然后,您的浏览器必须从产生更多DNS请求的各个域中获取图像,Javascript,CSS和广告。他们可以来自任何域。我尝试过的几个色情Tumblr域没有任何明显的内容,Tumblr倾向于在内部托管图像和视频,但是您不能依靠它来获得隐私。
Schwern 2016年

12

您将获得HTTP / 2支持,这是旨在显着提高网站加载速度的新Web标准。

由于浏览器制造商选择仅通过HTTPS支持HTTP / 2,因此(在支持HTTP / 2的服务器上)启用HTTPS是获得此速度升级的唯一方法。


1
这是非常巨大的,需要更多宣传。只有大多数管理者可以落后,这为仅加载HTTPS提供了业务案例。
德维·摩根

10

(摘自对类似问题的回答。)


HTTPS可以实现两件事:

  • 身份验证。确保访问者正在与真实域所有者进行通信。
  • 加密。确保只有该域所有者和访问者才能阅读其通讯。

大概每个人都同意,在传输秘密(例如密码,银行数据等)时,HTTPS应该是强制性的,但是,即使您的站点不处理此类秘密,在其他情况下,使用HTTPS也可能是有益的。

攻击者无法篡改请求的内容。

使用HTTP时,窃听者可以操纵访问者在您的网站上看到的内容。例如:

  • 在您提供下载的软件中包含恶意软件(或者,如果您不提供任何软件下载,攻击者就会开始这样做)。
  • 审查您的某些内容。改变您的意见表达。
  • 注入广告。
  • 用自己的捐款帐户替换数据。

HTTPS可以防止这种情况。

攻击者无法阅读请求的内容。

使用HTTP时,窃听者可以了解访问者可以访问主机上的哪些页面/内容。尽管内容本身可能是公开的,但特定人所消费的知识可能会成问题:

  • 它为社会工程打开了一个攻击载体。
  • 它侵犯了隐私。
  • 它可能导致监视和惩罚(直至监禁,酷刑,死亡)。

当然,这取决于您内容的性质,但是对您而言似乎无害的内容可能会被其他方不同地解释。

安全要比后悔好。HTTPS可以防止这种情况。


1
确实,HTTPS 可以阻止它。在某些情况下,可能不会。有关最新示例,请参阅Lenovo Superfish
CVn

@MichaelKjörling:是的,我知道这一点(这就是我确保使用“可以”的原因;)),但这是由访问者的行为引起的问题,而不是HTTPS本身或网站站长使用方式的问题对的?访客应考虑信任哪些CA(以及访客应考虑安装哪些软件,尤其是在其有权摆弄信任的CA列表的情况下,尤其如此)。
Unor

确实; 我不是在反对你的观点,只是在补充它!
CVn

6

它可以防止中间人攻击,使您认为您正在访问您的网站,但提供的页面实际上是另一个页面,并且可能试图从您那里获取信息。由于数据是加密的,因此攻击者也很难像看到的那样操纵该页面。

因为您需要SSL证书,所以至少可以验证您是该站点的所有者,并至少提供一些有关您身份的验证。


3

当您不使用SSL时,像Hitwise这样的营销公司会向ISP付费以收集有关您网站的数据。您可能不希望竞争对手知道有关您网站的数据:

  • 用户人口统计
  • 访客统计
  • 热门网页
  • 搜索引擎关键字(尽管“不提供”,但如今这已不再是一个问题)

3

而且,仅在所有答案中添加其他内容,我将仅讨论延迟。因为,似乎没有人在这里写过这件事。

客户端到服务器的HTTP延迟低对于创建快速加载,响应迅速的网站至关重要。

仅TCP / IP就有3向握手(通过TCP进行纯HTTP的初始连接设置需要3个数据包)。使用SSL / TLS时,将涉及更多的连接设置,这意味着新HTTPS连接的延迟不可避免地会比纯文本HTTP高。

HTTP的问题在于它不安全。因此,如果您有敏感数据,则需要某种形式的安全性。在以“ https”开头的Web浏览器中键入内容时,即要求浏览器使用加密层来保护流量。这为窃听者提供了合理的保护,但是问题在于它会更慢。由于我们要加密流量,因此会涉及一些计算,这会增加时间。这意味着,如果您未正确设计系统,则用户的网站将显得呆滞。

结论:

我有一个大型的纯内容网站;没有登录或注销,没有用户名,没有电子邮件地址,没有安全区域,网站上没有秘密,nada。人们只是来到网站,然后一页一页地浏览内容。

如果是这种情况,我将完全不使用SSL。我希望我的页面在您单击时能在一秒钟内打开。那是来自用户体验。您可以随心所欲地做,我只是不把证书放在我做的所有事情上。在这种情况下,我根本不会使用它。


IMO,这与获得所有选票的答案一样正确。
迈克尔·雅格,2016年

youtube.com/watch?v=e6DUrH56g14提到了一些缓解性能影响的技术,即使您(或大部分客户)由于某种原因无法执行HTTP / 2。
CVn

1

除了别人提到的好处外,还有一个原因会使您切换到SSL,除非您不关心使用Chrome的访问者-Chrome的新版本(据我所知从年底开始)对于所有未使用HTTPS的网站,默认情况下将显示警告(这将使用户离开您的网站)。

//编辑:

这里是指向两篇更详细的文章的链接,尽管当他们计划正式介绍该功能时,我似乎找不到我所读过的文章:

https://motherboard.vice.com/read/google-will-soon-shame-all-websites-that-are-unencrypted-chrome-https

http://www.pandasecurity.com/mediacenter/security/websites-that-arent-using-https/


对于答案中的说法,这并不是一个完美的引用,但始终有将HTTP标记为不安全的标记
CVn

1

简单的答案是,没有充分的理由不这样做。过去,存在关于仅在绝对必要的情况下(例如在收集付款明细的电子商务网站上)仅使用SSL的争论。

这些主要与SSL证书的安装过程,成本,网络服务器上的额外负载以及网络限制(在人们没有宽带的时候等)有关。所有这些原因在2016年都不适用。

在SEO方面,我们知道大多数搜索引擎的目标是为用户提供最佳结果,这可以通过为他们提供与其所浏览网站的安全连接来实现。在这方面,搜索引擎不在乎网站上是否存在“敏感”数据(正在展示或收集);如果站点通过HTTPS提供服务,则很可能会大大降低身份验证和加密的任何潜在风险,因此,与不使用HTTPS的等效站点相比,该站点被认为“更好”。

本质上,它是如此简单,直接地实现,如今被视为最佳实践。作为Web开发人员,我只考虑安装SSL证书,然后强制通过HTTPS进行所有请求(使用.htaccess或等效操作非常容易)成为我构建的任何网站或Web应用程序的标准部分。


1

除其他答案外,浏览器还应(如RFC 2119中)发送User-Agent标头。如果用户发送实际信息,它会提供有关用户使用哪个平台的足够信息User-Agent。如果Eve可以窃听Alice的请求,并且Alice发送了实际请求User-Agent,则Eve将知道Alice使用的平台,而无需Alice与Eve的服务器建立连接。有了这些知识,更容易侵入Alice的计算机。


这有点像说,如果夏娃可以从汽车挡风玻璃上看到爱丽丝的汽车VIN码,那么夏娃就更容易闯入爱丽丝的汽车,因为VIN码使她能够找到爱丽丝拥有的品牌和车型。当然,这是有可能的,但是有很多方法可以在不使用MITM的情况下获得几乎相同的信息,而这些方法几乎不会注册为网络上叶子节点的Internet背景噪声。例如:Eve(或者也许是Mallory)可以通过电子邮件向Alice发送指向其控制下的网页的链接。人们喜欢点击链接。
CVn

1

您有两个选择来保护您的主域(mysite.com)及其子域(play.mysite.com和test.mysite.com)。SSL不仅适用于通过网站共享金融交易或登录凭证的电子商务,支付商人站点。对于基于内容的网站同样重要。攻击者总是搜索纯HTTP网站或网站漏洞。SSL不仅可以提供安全性,还可以对您的网站进行身份验证。在基于内容的网站上使用SSL的主要好处是,

  • 您可以避免可能改变网站内容的中间人攻击。

  • 此外,您的网站将具有真实性,可告知访问者与他们共享的信息将受到保护。

  • 他们获得有关网站真实性的保证。

  • 此外,一旦您的网站上安装了SSL,您的网站就不会受到恶意广告,漏洞利用,不需要的小部件,软件替换以及对网页的危害之害。

  • SSL证书提供可放置在任何网页上的静态站点密封,以确保安全,客户可以单击该密封以了解已安装SSL证书的详细信息。


1

其他答案谈到了HTTPS的好处。会迫使用户使用HTTPS吗?有两个原因:

  • 如果您为用户提供不使用HTTPS的选项,则他们可能不会使用,特别是因为大多数浏览器在地址栏中键入域时默认使用http://而不是https://。
  • 通过同时实现安全版本和不安全版本,可以增加连接的攻击面。即使您认为您使用的是安全版本,也可以使攻击者有机会执行降级攻击
  • 如果将每个http:// URL重定向到等效的https://,则服务器管理员和搜索引擎的工作变得更加轻松。无需担心http://和https://是等同还是指向完全不同的事物,通过将一个重定向到另一个,每个人都清楚应该使用什么URL。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.