关于绑定域名后通过阿里云SSL证书进行安全认证的方法

在购买域名并将其解析绑定到Github Page个人网站上后,网站的性质由安全变为了不安全。

img

原因并在于以前网站的所谓域名其实是对一个仓库的访问,但是现在通过Github Page的修改域名解析的方式。来定义了一个自己的域名,而这个域名是没有SSL安全证书的。

所以会在一些浏览器中显示出不安全的字样,甚至谷歌的chrome浏览器直接中断了连接。

这无疑给博客留下了不好的开场,因此需要绑定一张SSL安全证书来证明自己的博客是安全的。

SSL简介

SSL是一种安全套接层协议,是Web浏览器与Web服务器之间安全交换信息的协议,提供两个基本的安全服务:鉴别与保密。

SSL协议的三个特性在一个:

① 保密:在握手协议中定义了会话密钥后,所有的消息都被加密;

② 鉴别:可选的客户端认证,和强制的服务器端认证;

③ 完整性:传送的消息包括消息完整性检查(使用MAC)。

SSL的位置

SSL介于应用层和TCP层之间,应用层数据不再直接传递给传输层,而是传递给SSL层,SSL层对从应用层收到的数据进行加密,并增加自己的SSL头。

获得SSL证书

SSL证书一般由权威公司进行颁发。如果是自己颁发的SSL证书算法不够强力,甚至还会被浏览器认为是更高的风险级别。

所以我们需要去权威公司中获得一张证明自己网站安全的证书,加密自己的网站。

目前的权威公司有许多,但是能提供免费证书的却寥寥无几。

所以最好选择DigiCert 免费版 SSL证书,有效期一年。

阿里云已经集成这个服务,会更加方便快捷,所以推荐注册域名时使用阿里云。

步骤

登陆阿里云后,转到数字证书管理服务。

img

选择SSL在这里证书,再选择免费证书。

img

这是购买了免费证书后的界面,在没有购买之前,「创建证书」按钮将会变为「免费证书」的按钮。

img

选择购买20张,其余的数量则不能免费。

img

选择申请证书,按照提示填写信息。

如果在阿里云购买的域名,在验证信息环节会自动添加DNS解析,更为方便与快捷。

验证信息完后申请的速度非常快,一般不到一分钟便可有邮件通知,表示申请完成。

img

便会显示一张证书,表示已经被认可。

部署

获得了证书后便需要将它部署到自己的网站上。

此时不用选择阿里云内置的部署操作,此部署操作是针对于服务器而言的,对Github page页面操作是无效的。

所以需要转到Github并登录账号,再选择对应的个人博客仓库的Page页面。

将页面滑到最底下,可看到如图所示的页面。

img

由于此时网站已经通过了证书验证,所以中间的TLS证书请求已经消失了。

如果从未进行证书验证,此时会在强制HTTPS和Custom domain中间显示TLS证书生成。

由于TLS证书和SSL证书是同级的,所以我们选择部署SSL证书。

在此时便有两种方法。

图形化部署

当GitHub验证成功,此网站确实具有SSL证书时,下面的Enforce HTTPS(强制HTTPS)的选项就可选,此时勾选便会使对网站的访问强制使用HTTPS。

输入部署

如果点击后没有效果,那么便需要清空域名,输入https://yourdomain.com,将域名刷新为只有HTTPS的选项。

之后Github便会自动将https省略。

注意:上述两种方法都需要在强制HTTPS的选项可选的情况下操作,此选项可选表示Github已经发现了SSL证书。

否则,即使重新输入部署也无效,还可能导致跳转错误。

区别

图形化部署是让访问HTTP的请求强制重定向到HTTPS,但如果未能重定向,就会提示不安全。

此方法在直接输入时大多有效,但在重定向时经常不起作用。

而输入部署是删除所有HTTP的网址,只保留HTTPS的网址。

此方法虽然稳妥,但如果有用户输入全部网址而又忘记加上s时,便会无法访问。

所以最为稳妥的办法是进行两个部署。

效果

部署了SSL证书后,网站变为「安全」状态。


关于绑定域名后通过阿里云SSL证书进行安全认证的方法
https://blog.windeling.com/20231001273719c3/
作者
黄文林
发布于
2023年10月1日
更新于
2025年5月8日
许可协议