30分钟让网站支持HTTPS

转载自码农网

这里我会指导大家如何轻松搞定在你的网站上使用HTTPS。

我不是安全专家也不是搞服务器的,所以这对我而言也是一种有趣的经历,而记录这个过程可以让其他任何人也能很快地做到这些。包括一些暂时的停顿时间,我总共只花了20-30分钟。

获得证书

有一些官方出售的证书,但从我的经验来看,最容易上手是Let’s Encrypt。它也是免费的,而且背后有一些主要的赞助商,例如Mozilla,Chrome,Akamai和Cisco。

通过Let’s Encrypt为你的网站生成证书的最快方法是使用SSL For Free。然后,你便可以选择Automatic FTP Verification或者Manual Verification。

选择好了之后,你就可以得到:

  • 针对网站的SSL证书
  • 证书私钥
  • CA /链证书

安装证书

下面,针对你的托管服务提供商以及你的服务器类型,或者如果你是自己托管的话,有不同的方法。就我而言,我对这个网站使用Media Temple,并且它们在Twitter上非常有用,而且它们的在线支持聊天会指点我正确的方向。

所有我需要做的是:

  1. 进入帐户中心。正如Media Temple有一个,我敢肯定它适用于大部分的托管选项。
  2. 选择导入SSL证书,添加我之前得到的SSL证书,私钥,CA /链证书之前。
  3. 成功!

好了吗,没有。第3步是骗人的。当我在第2步中进入我的密钥时,我会得到一个错误说我的私钥是无效的。我慌了一下,然后开始去找问题出在什么地方。Media Temple支持指引我到Let’s Encrypt论坛上的“Error adding cert, Invalid private key”讨论中。

原来需要转换私钥到RSA格式,使用下面的代码行就可以在终端中快速转换:

当然要相应地改变上面的域和路径。然后复制输出和提交/另存为私钥。

更多高级设置

如果你正在某个地方运行你自己的服务器或虚拟机,或者恰好没有针对主机的简单帐户中心选择,那么我推荐你阅读下面这些文章考虑手动安装:

验证证书安装

安装好了之后,验证证书的一个简单方法是使用SSL Checker以发现任何潜在的问题。然后,当你使用https://访问你的网站的时候,所有一切都应该显示良好和安全。然而在现实生活中很少是这样的情况。要小心混合的内容,即部分内容通过https://提供服务,而一些内容使用的则是http://。使用http://的内容将不显示。

注意:不要使用相对路径/协议相关的URL,即/css/style.css。它会对可能的端点攻击开放,而且,从http://你可以随时请求https://资源,反之则不能。

一旦确保安全之后,你应该可以在所有的web浏览器中看到挂锁图标,在地址栏的URL旁边。如果没有显示,那么可以使用伟大的服务Why No Padlock? 来找出可能的问题。我敢打赌,你的1%的时间用来改变内部引用到https://,然后剩下99%的时间用来搞清楚有关第三方的内容,以及如何安全地包含这些内容。

强制SSL / HTTPS用于所有请求

一旦网站安全并在可以平稳运行HTTPS之后,没有理由不确保所有请求都通过SSL。

正如使用.htaccess和mod_rewrite的Force SSL/https中概述的那样,下面有一个代码片段可以用来添加.htaccess 文件以确保:

一起试试添加HTTPS到你的网站吧!你值得拥有。

原文发布于微信公众号 - java一日一条(mjx_java)

原文发表时间:2017-01-11

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏ytkah

公众平台调整SSL安全策略 不再支持SSLv2、SSLv3版本

  昨天夜间,微信团队发布重要安全策略调整,将关闭掉SSLv2、SSLv3版本支持,不再支持部分使用SSLv2、 SSLv3或更低版本的客户端调用。请仍在使用这...

74740
来自专栏守望轩

WordPress整站轻松开启HTTPS

近两年来HTTPS取代HTTP已经成为大势所趋。早在2014年google Chromium安全团队提议将所有的HTTP协议网站标注为不安全。现在,Chr...

60890
来自专栏前端儿

HTTPS 概述

HTTPS(Secure Hypertext Transfer Protocol)安全超文本传输协议 它是一个安全通信通道,它基于HTTP开发,用于在客户计算机...

27620
来自专栏FreeBuf

TLS 1.3如何用性能为HTTPS正名

序•魔戒再现 几天前,OpenSSL官方宣布即将发布的新版本 (OpenSSL 1.1.1) 将会提供 TLS 1.3 的支持,而且还会和之前的 1.1.0 版...

34860
来自专栏建站达人秀

如何搭建 HTTPS 网站

SSL 即安全套接层数字证书,数字证书是一种用于电脑的身份识别机制。数字证书可以从身份认证机构获得。理论上任何人都可以给您发个数字证书。换个说法就是给您发数字证...

1.3K30
来自专栏FreeBuf

一封伪造邮件引发的“探索”(涉及钓鱼邮件、SPF和DKIM等)

0x00. 引言 我用swaks 发送一封以我们公司CTO为显示发件人(腾讯企业邮箱)的伪造邮件给我的一个同事,邮件的内容就是让这位同事去CTO的办公司一趟,没...

1.4K60
来自专栏前端黑板报

软件工程师需要了解的网络知识:从铜线到HTTP(五)—— HTTP 和 HTTPS

JohnLui:程序员,Swift Contributor,正在写《iOS 可视化编程与 Auto Layout》 HTTP 在以前的文章中,我大力推荐过《图解...

38970
来自专栏腾讯云TStack专栏

Pike版本变慢,不慌,看云计算十年老兵教你一招化解

18230
来自专栏拂晓风起

网站安全登录 web应用安全登录 密码 防截获

20030
来自专栏北京马哥教育

openssl创建CA、申请证书及其给web服务颁发证书

一、创建私有的CA 1)查看openssl的配置文件:/etc/pki/tls/openssl.cnf ? 2)创建所需的文件 touch /etc/pki...

48650

扫码关注云+社区

领取腾讯云代金券