一个星期前,Google给我发送了一封电子邮件,要求我使用HTTPS。如果我不将HTTP传输到HTTPS,则它将向所有尝试在我的网站中输入文本的网站访问者显示我的连接不安全。

不使用SSL,是否有其他方法可以使我的连接安全吗?由于在Web URL中使用SSL与昂贵的过程有关,因此我正在寻找其他任何选项。

评论

您是否查看过letsencrypt.org?它颁发免费的HTTPS证书。从头开始设置有点麻烦,但是许多托管公司已为您实现了它。

您还可以使用cloudflare,它将免费为您提供SSL证书。

问题不是“如何使用HTTPS”,而是更广泛的问题:如果http://不好,那么https://之外还有什么?是否有abc://,lgbtqiapk +://或dps://?

“昂贵的过程”?让我们加密是免费的。另外:didmysiteneedhttps.com

#1 楼


还有其他方法可以确保我的连接安全吗?


Google不仅在抱怨“安全性”(其中可能包含许多不同的主题),还包括专门针对加密/ HTTPS。使用纯HTTP时,客户端和服务器之间的连接是未加密的,从而使任何人都可以查看和拦截提交的任何内容。通常,只有在您允许用户登录(即提交用户名/密码)或通过未加密的连接提交付款信息时,才会提示此操作。一般的“文本”表单提交不一定是问题。但是,正如@Kevin在评论中指出的那样,Google / Chrome计划在将来对此进行扩展:


最终,我们计划将所有HTTP页面标记为不安全,并更改我们使用HTTP安全指示符来标记断开的HTTPS。


在您的站点上安装SSL证书(或使用Cloudflare之类的前端代理来处理SLL)是加密访问网站流量的唯一方法。

但是,如今这不一定是“昂贵的过程”。 Cloudflare有一个“免费”选项,而“让我们加密”是一个免费的证书颁发机构,默认情况下许多主机都支持。

评论


“通常,只有在允许用户登录(提交用户名/密码)或通过未加密的连接提交个人信息时,才会提示此问题。常规的“文本”不一定是问题。”这很快将不再成立。 Chrome会在“任意”文本输入字段中显示警告。毕竟,它无法分辨潜在的敏感信息与诸如搜索之类的良性内容之间的区别,因此决定只对所有内容发出警告。

– Muzer
17年8月23日在16:49



@Muzer如果文本输入敏感,通常也无法确定-如果我键入家庭住址,或者搜索我尴尬的医疗问题,那么对于窃听者来说,这些可能会非常有趣。

–仿制药
17年8月23日在17:03

最终,Chrome会在所有HTTP站点上显示此警告,因此没有替代HTTPS的长期方法。

–凯文
17年8月23日在17:05

与普通的端到端加密(身份)相比,此答案缺少HTTPS的最大优势。 HTTPS允许您的服务器向其客户端证明其实际上是它声称的服务器,而无需事先专门安排身份验证方法。如果客户端已连接到恶意行为者拥有的服务器,则单独进行端到端加密将无济于事。

–IllusiveBrian
17年8月23日在21:54

@IllusiveBrian尽管此问题并非真的与“ HTTPS的优点”有关(已有一些已有的问题对此进行了介绍),但此问题与尝试避免Google / Chrome中的浏览器安全“警告”有关。但是HTTPS不一定“证明身份”-为此,您将需要为OV或EV证书支付更多的钱。在此问题的上下文中,所有内容都与加密有关。

– DocRoot
17年8月23日在22:58

#2 楼

我不建议这样做,但是您可以通过不使用原始输入文本字段来绕过此消息。您可以使用具有div事件的常规onkeypress创建自己的输入字段。或者,您可以创建一个将div属性设置为contenteditabletrue元素。

这样,用户将能够在您的站点上输入信息,而无需使用input标签元素。

评论


这真是个坏主意。它不能解决Google鼓励您解决的安全性问题,并且可能会给使用您网站的用户带来一些问题,这些用户使用的网站与您对其进行测试的方式略有不同(例如,其他浏览器,电话,屏幕阅读器等)。它还可能会破坏密码管理器。

–thelem
17年8月23日在14:26

使用此方法发布表单会出现问题。

–the_lotus
17年8月23日在14:36

您无需发布表单。您可以使用XMLlHTTPRequest(aka AJAX)发送信息

– Aminadav Glickshtein
17年8月23日在14:50

我会将您的答案从“不推荐”更改为“从不这样做”。您正在绕过许多这样做的标准,因此您可能不再制作Web应用程序了。

–凯门
17年8月23日在18:55



我真的需要125分才能投票否决这件事吗? 。

– Andrea Lazzarotto
17年8月24日在16:52

#3 楼

如果您只是提供静态文件,或者可以将代理放在前面,则可以使用像caddy服务器之类的服务器,通过使用let加密为您处理所有这些事情,这消除了配置证书的麻烦,而您不必安装任何其他软件。

或者,您可以使用cloudflare这样的服务-他们的免费计划提供免费的https。

最后,某些托管商现在提供免费的https证书,包括dreamhost。因此,请检查您当前的主机是否提供此选项。

我不建议您尝试找到一种解决方法,只有一种方法可以确保您的网站安全,无论使用哪种方式,浏览器最终都会在每个没有https的网站上发出警告。内容。 Web到处都在走向https。

评论


Firefox现在还在不安全的登录页面上引入了警告,并且所有主流浏览器都选择仅为HTTP2提供https支持,这意味着该协议的下一个版本仅是事实上的https。

–肯尼·格兰特(Kenny Grant)
17年8月23日在20:55



@closetnoc GoDaddy是多种方式的翻版。我们(webdev公司)过去每年以7欧元的价格购买我们的证书,这是可以负担的价格,但不适用于一百个站点。现在,我们正在使用“让我们加密”并免费获取它们,因此我们将SSL应用于所有这些。我们的客户喜欢它,我们喜欢使用HTTP / 2。更新没有问题。证书会持续90天,我们会在60天后开始尝试每天续订。如果出现问题(没有错),则有很多重叠。如果您不希望麻烦,请使用Cloudflare。

–马丁·海默斯(Martijn Heemels)
17年8月24日在9:11

@closetnoc ssl不仅可以加密,还可以确保完整性,安全性和私密性,因此MitM'er不会看到页面上的内容(例如,您的雇主,幸存者状态)或更改(例如,注入的广告)。此外,它还可以防止人们通过MitMing嗅探朋友的身份验证数据(该数据很可能用于将不需要的内容上传到站点)。此外,马丁·马丁(Martijn)说,GoDaddy是一个巨大的盗版活动,总体上是不利的。我建议您的朋友来看看Google网域,namecheap和gandi(我不隶属于任何公司)。

–以前
17年8月24日,11:30



@MartijnHeemels我同意GoDaddy价格过高。重要时刻!看起来“加密”是大多数内容良好的大多数网站的一种选择。我可以看到某些网站也需要经过全面审查的证书。您是否相信我曾经是证书颁发机构?我想我更喜欢一年的证书。我不相信更短的时间。但是最近有什么选择?干杯!!

– closetnoc
17年8月24日在14:22

@closetnoc从公认的具有1年有效期的CA(每张大约10美元)中找到付费SSL证书并不难。但这显然不会为您提供“经过全面审查”的证书;如果您确实需要,则需要跳过以获得EV证书并支付相应的价格(并且如前所述,即使EV证书也不是完美的或没有警告)。 “让我们加密”讨论了其证书仅在其网站上有效90天的一些原因,但是“让我们加密”的存在尚未(至今)引起商业CA撤销其DV证书产品。

–用户
17年8月24日在14:34

#4 楼

似乎没有其他人提到过,
如果您拥有连接到站点的每台计算机
,例如“这可能不是您想要的”
,像公司设置一样,您可以创建证书您可以自行将其公共证书安装到连接到您站点的所有计算机上(以及所有浏览器和证书存储区中)。此选项没有第三方获利;使用相同的加密密码,但是您不会获得公共信任(例如Google的Chrome,Mozilla的Firefox等无法识别您的权限,就像我们加密的方式一样),但是配置为信任自己的计算机会识别它。
诚然,建立证书颁发机构的交易有些棘手,维护工作可能很繁琐-因此,我将其保留在此处,您最好是针对以下主题进行深入研究您对这种方法确实很感兴趣。
尽管可以进行精细的部署,但如果可以尝试XCA

对于Debian,请访问:https://packages.debian.org/stretch/xca

官方站点:http://xca.sourceforge.net/


XCS是为小型部署颁发证书的一种不错的方法,并且包括逐步浏览的帮助文档。整个设置。

评论


与购买商业SSL证书相比,几乎可以肯定,您花费更多的时间来设置自己的CA(在工作时间上,如果没有其他选择)。然后,总有可能做错事。

– Eric J.
17年8月27日在2:37

#5 楼

我有两个主意。

如果HTTPS的原因是管理登录,那么可以通过为用户提供保持登录状态来最小化所有浏览器的影响。然后,当用户登录时, cookie可以永久存储在用户的计算机上,因此,下次用户打开计算机访问该网站时,该用户将自动登录,而不会始终看到登录提示和可能的安全警告。

另一个可以绕过消息但在来宾和服务器上都比较麻烦的想法是让来宾上载具有正确配置的特殊文件。例如,对于登录屏幕,不是要求用户在两个文本框中输入用户名和密码,而是让用户上传一个包含其用户名和密码进行加密的小文件(例如,将用户名和密码压缩为zip)文件(具有特定压缩级别),则服务器可以解密该文件以提取用户名和密码。当用户将文件发送到服务器时,潜在的黑客将在传输中看到乱码。该想法的唯一一点好处是连接速度稍快,因为SSL连接处理不在HTTP中进行。

评论


即将发布的Chrome版本将警告您输入任何文本,而不仅仅是密码字段。使用HTML表单的任何数据都必须是HTTPS以避免警告,而不仅仅是登录。 Google一直在通过Search Console向网站所有者发送通知,这些网站的所有者被Google认为会受到影响。

–斯蒂芬·奥斯特米勒(Stephen Ostermiller)
17年8月25日在8:14

#6 楼

否。

您尝试的任何黑客攻击(例如,尝试使用javascript进行加密),都几乎不可能安全。

SSL不必“昂贵”,许多托管服务提供商免费提供。甚至cloudflare之类的东西都提供免费的SSL,并保持当前的托管。

#7 楼

一个免费的快速解决方案是“加密”。链接
它们具有几乎每个服务器操作系统的文档。我们在工作中使用它,而W2P供应商也使用它来保护我们每个店面的安全。

评论


该答案不会添加尚未说明的任何内容。

–斯蒂芬·奥斯特米勒(Stephen Ostermiller)
17年8月24日在16:06