少女祈祷中...

白嫖SSL证书

访问阿里云的链接,按照下图的配置进行选择。可以看到最后的价格是0,直接购买就行。我这里是已经买过了,所以是灰色的。

然后进入到控制台,如图所示,点击左侧的SSL证书管理,再点右边的免费证书,最后再点创建证书。

接着会弹出一个界面让你进行配置,按如图所示进行配置即可。

如果你的域名是在阿里云买的,那么它会自动帮你选择“自动DNS验证”。剩下的东西都不要管,按照默认的来就行。检查一下自己的个人信息以后直接提交审核。

然后我们就会看到一条审核记录。

我们点一下验证,确保确实没什么问题,稍等一会儿,你的手机应该就会收到两条短信,邮箱也会收到一封邮件。这就说明成功白嫖到了。接下来就是部署一下。

通过Nginx部署SSL证书

我们先把证书下载下来。

选择nginx,当然如果你会搞其他的也随意。

下载完以后解压出来,先放在一边。然后通过SSH连接上服务器,找到nginx的可执行文件的位置。我的是在/usr/local/nginx/sbin目录下。

1
2
cd /usr/local/nginx/sbin/
./nginx -V

注意这里是大写的,如果能输出内容中含有以下东西就没问题。

1
configure arguments: --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module

但如果是第一次配置,那大概率是没有的,所以要先配置一下依赖。

找到nginx的源码目录,包含 configure的目录。我的是在/usr/local/nginx-1.17.9目录下。

1
2
3
cd /usr/local/nginx-1.17.9
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
make

执行完上面三条指令后,会在同目录的objs文件夹中编译出一个新的nginx,我们用这个文件替换掉原来的旧的nginx。cp或者mv过去就行。

然后回到nginx目录下,在这里创建一个新的文件夹名为conf.d,如果已经有了就不用创建。这个是用来存放配置文件的,尽量不要把所有的配置都写在主配置文件里。

1
2
cd /usr/local/nginx
mkdir conf.d

再创建一个名为cert的文件夹,这里就是用来存放SSL证书的,如果已经有了就不用创建了。

1
mkdir cert

然后把刚才解压出来的证书上传到这个cert文件夹中,注意证书是两个文件。.key.pem

接着找到主配置文件。

1
2
cd /usr/local/nginx/conf
vi nginx.conf

找到http这一块,添加一行include /usr/local/nginx/conf.d/*.conf;

进入/usr/local/nginx/conf.d目录,创建一个配置文件。

1
2
cd ../conf.d/
vi blogs.conf

在里面写一些配置。

server_name代表要监听的域名,下面两行是两个整数文件的位置。剩下的都是从主配置文件里复制过来的,笔者也暂时没了解是做什么的。location里配置了一个代理,把这个域名的443端口的请求转发到本地的某个端口上。比如可以写http://localhost:8080。这个根据你的实际情况而定。

万事俱备了。找到nginx文件。

1
2
3
4
5
cd /usr/local/nginx/sbin
# 先检查一下配置文件
./nginx -t
# 重启
./nginx -s reload

现在浏览器输入域名,就可以访问了,而且是https的协议。

参考资料,阿里博客园