手把手教你给自己的网站配置ssl证书

为你的网站加一把“锁”

上周的周报中提到,我要重新搭建一个个人博客,为了快速实现,我选用了Typecho,当然自己的搭建博客的这个任务没有放弃,周一把博客搭建好了之后,因为域名没有备案,所以一开始我使用ip来访问的,但是访问的时候,总会在浏览器地址栏头部提示“不安全”,这周正好抽出一点时间,成功解决了这个问题(域名也已经备案成功)。其是也很简单,就是给域名加上一个SSL证书,正如标题所示,让网页变的更安全,我称之为给网站加一把“锁”。

如上图所示,加锁的真正原理就是使用https对网页进行访问,例如你在淘宝网站上进行购物的时候,如果采用http协议进行交易的话,很容易被中间人进行攻击,而利用https之后,就会相对来说更加安全。这里的https和http之后我会写一篇更详细的介绍,这里我们只需要了解https是比http更加安全的一种网络协议。

配置清单

以下是一些相关的配置信息:

服务器:阿里云ESC

web服务器:Apache

服务器管理面板:宝塔控制面板

一个待加“锁”的域名,域名服务商:阿里云

详细步骤

下面我们就来进行实际的操作

购买SSL证书

因为我的域名是在阿里云购买的,所以这里我就以阿里云为例(腾讯云等其他云商也是可以的)。

阿里云的域名控制台,找到你想要加证书的域名,点击管理

点击开启SSL证书

当然一开始你没有加过证书的话,打开之后里面是没有任何证书的,这个时候我们就要点击购买(不要听到购买就想到要花钱了,阿里云给个人用户提供了免费的证书,而且还可以购买多个!)

点击免费版

购买完了我们的证书列表里面就有证书了,但是还没有签发下来,因为我们还要进行证书的申请并填写自己网站相关的一些信息。

填写信息

填写信息,下一步验证过后,等待签发证书即可,验证很快,签发的时候会给你发送邮件并发送短信提示,耐心等待片刻就好。

证书签发之后,我们就会在我们证书页面的已签发列表中看到我们的证书,这个时候点击下载

下载证书

这里根据你的web服务器类型选择对应的证书,因为我的博客是基于Apache服务的,因此我在Apache一栏点击下载,然后就会将三张证书下载到本地。

我们可以看到,文件夹中包含三张证书,其中.key密钥文件是放在服务器端的,public和chain证书我们需要在稍后进行合并(因为很多验证平台是要求pem格式的)

登录宝塔控制面板

打开网站的设置界面,点击SSL中的其他证书

将我们下载的证书用文本编辑器打开,其中.key文件放到密钥部分,public和chain需要合并,但是要注意,public文件中的内容放在前面,然后将两个进行合并然后输入到第二个方框。

填写证书信息

开启SSL证书

保存之后,在证书夹中点击部署即可。

注意事项

到这一步,可能你去访问你的网站,多半情况是访问不了的,这是因为国内的云商或将你的网站的一些端口给关闭了。

http使用的端口号为80,而https使用的端口则是443端口,需要你手动的去你自己服务器安全组中打开!打开后即可访问你的网站了!

过程中碰到的问题

笔者在以上操作之后,发现访问自己博客的时候,出现了一个问题,网站的logo总是加载不出来,

在地址栏中,我发现了一个神秘的东西

加载脚本之后,网站的https就变成红色的了

一顿操作猛如虎,到最后出现了一个bug,然后我就查看网页源代码,猛的发现,自己的logo是后加上去的,当时写的地址正是http链接,真的傻了,看来以后还是得规范点写代码,以免因小失大。

进入服务器,vim打开该文件,把http改成https,刷新,大功告成!