Nginx 安装SSL证书

因为http每次访问,浏览器都会提示不安全。比较烦人,也不想让别人访问我的博客的时候都提示不安全,所以这次记录一下Nginx安装SSL的过程

购买证书

直接在阿里云上购买的CA证书,个人免费一年。我就不详细介绍了,在阿里云官网上都能找到~

安装证书

因为我使用的是nginx搭建的网站,所以这里只说nginx的方法,别的技术可以在相关文档上搜索。
首先下载证书,包含两个文件一个是domain.pem另一个是domain.key。这两个都需要上传至服务器。
修改/etc/nginx/nginx.conf文件
添加如下内容,如果已经有的只做修改就可以了

1
2
3
4
5
6
7
8
listen    443  ssl;
server_name domain.com;
ssl_certificate domin.pem;
ssl_certificate_key domin.key;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_prefer_server_ciphers on;

这里吧监听端口改为443 并且加上ssl,不加ssl可能无法启动nginx。

domain.com修改为自己的域名

domain.pem和domain.key改为绝对路径,比如说pem放在我的个人文件夹下,就是/home/jhsy/domain.pem

ssl_ciphers这个改为证书提供的算法

再写一个80端口重定向到443

1
2
3
4
5
server {
listen 80;
server_name domin.com;
rewrite ^(.*)$ https://${server_name}$1 permanent;
}

语法检查

使用nginx -t进行语法检查,我经常在写配置的时候粗心少写或者多写一些东西导致无法正常启动,所以最好在配置完成之后进行语法检查,免得出现一些小错误焦头烂额也找不到答案

重启nginx

最后的最后,重启Nginx然后试着用https访问就可以啦~