腾讯云上免费部署HTTPS

接上篇《腾讯云下安装 nodejs + 实现 Nginx 反向代理》,想从头一步到位的同窗建议从上篇文章开始阅读。本文将继续介绍如何经过 Nginx 免费部署HTTPS。html

留意下,这里的“免费”指的是HTTPS证书的获取,至于域名仍是须要额外购买(其实域名真心很便宜了)node

笔者在腾讯云上购买了 vajoy.org 的域名,并根据官方指引进行了解析处理,绑定到服务器ip上(留意处理后大约10分钟后才能ping通)nginx

接着在云主机修改配置,执行:ubuntu

#vim /home/ubuntu/nginx/conf/nginx.conf

将 server_name 修改成“vajoy.org”vim

而后重启 Nginx 服务:浏览器

#/home/ubuntu/nginx/sbin/nginx -s reload

这时我们直接用浏览器访问 http://vajoy.org 就能正常访问了,只不过是 HTTP 协议形式:安全

免费获取HTTPS证书服务器

事实上腾讯云自己支持申请免费的SSL证书,不过其仅支持单个非一级域名:优化

另外为了方便非腾讯云用户也能够作参考,这里咱们经过 https://startssl.com/ 来申请免费的SSL证书。网站

我们先在 startssl 上进行注册,而后选择申请免费的证书:

如其描述所示,该证书时限为3年,支持10个域名,但仅提供到 Class 1 级别的证书。这里简单科普下证书级别概念:

Class 4 SSL证书:即EV SSL证书,顶级SSL证书,又称扩展验证型SSL证书。安全级别最高,验证审核最严格,网站部署EV SSL证书后,浏览器地址栏将变成绿色并显示企业名称。EV SSL证书通常应用于金融、银行、电商等安全需求较高的网站。
Class 3 SSL证书:即OV SSL证书,专业级SSL证书,又称机构验证型SSL证书。当前普遍应用的SSL证书,须要验证企业身份信息后颁发。OV SSL证书是当前最多见的证书类型,适用于行政、企业、科研、邮箱、论坛等各种大中型网站。
Class 2 SSL证书:即IV SSL证书,我的级SSL证书,沃通特有的SSL证书,又称我的验证型SSL证书。验证我的详细信息后颁发,主要应用于私人博客、自媒体等我的网站。
Class 1 SSL证书:即DV SSL证书,基础级SSL证书,又称域名验证型SSL证书。DV SSL证书是签发只验证域名全部权,任何人均可以申请,属于快速颁发的SSL证书,安全级别较低。

目前来讲,Class 1 SSL 证书对咱是够用了。

接着 startssl 会指引咱们对 SSL 证书进行域名认证:

点击“Finish”连接,再选择“Domain Validation”,会进入域名验证页面:

这里要求经过域名邮箱来接收验证码。不过截止咱尚未任何邮箱服务。

怎么办呢?不用慌,经过腾讯企业邮是能够进行免费申请的,登陆其申请页面点击申请免费版便可。

申请的过程当中会提供你域名MX记录的配置信息:

咱们返回腾讯云管理后台的域名解析页面,新增对应记录便可:

接着回到腾讯企业邮管理后台,添加 startssl 要发送验证码的邮箱帐户:

再用这个邮箱(hostmaster@vajoy.org)做为账户名登陆腾讯企业邮便可:

顺便吐槽下,企业邮这么方便的产品,腾讯云整个站点都没找到传送门,这点建议改进了。

回到 startssl,这下能够安心发送域名验证的验证码到咱邮箱(hostmaster@vajoy.org)了。

初步验证完成后,我们再点击“Certificates Wizard”:

 

如上图,这里有两处须要填写,一处是证书的 common name,这里我填写的“vajoy.org”,若是你还但愿该证书支持其它域名(如“a.vajoy.org”),能够换行加上(一个只能加10个域名)

另外是须要在服务器上生成的CSR(证书请求文件)内容。

咱们在云主机上(/home/ubuntu)执行指令(指令格式参考上图 startssl 页面红字部分)

openssl req -newkey rsa:2048 -keyout vajoy.org_ssl.key -out vajoy.org.csr

期间会要求输入机构名称、地址、email等信息,且最终会生成两个文件(证书签名请求文件和私钥)

经过 cat 指令获取到 CSR 文件内容后把它粘贴到 startssl 页面。提交后会引导你下载证书:

点击“here”直接下载证书压缩包,打开后里面有各类服务器支持格式的证书,这里我们选 NginxServer.zip,解压它可获得“vajoy.org_bundle.crt”文件。

把下载到的这个“vajoy.org_bundle.crt”证书上传到咱服务器去(我经过 FileZilla 上传服务器,放到 /home/ubuntu)

接着就是修改 nginx 的配置啦。这里特别推荐到 https://cipherli.st/ 去获取最安全的配置内容。

咱们给 nginx.conf 加上红框部分的内容(跟进 https://cipherli.st/ 上的配置来修改的)

而后执行指令判断 nginx 配置是否正确:

#/home/ubuntu/nginx/sbin/nginx -t

注意这里可能还会让你输入一次 PEM 密码,直接输入以前生成 .csr 时填写的安全密码便可。

最后咱们再重启下 nginx 服务,再访问 https://vajoy.org 会发现HTTPS已经妥妥的生效了:

后续可能还会再讲讲此次 nginx.conf 上新增的内容的含义,以及一些针对HTTPS的优化。共勉`

相关文章
相关标签/搜索