Let\’s Encrypt商家支持泛域名SSL证书之后确实能给用户带来不小的福利,最主要的居然还是免费的且大部分软件商还是支持较好的。相比之前只能单域名使用确实比较麻烦,对于多个二级域名的还需要单独重新申请管理比较麻烦,而如今我们直接申请泛域名证书之后就可以不用这么麻烦。
蜗牛在前面\”Let\’s Encrypt泛域名SSL证书申请 配合DNSPOD API快速获取\”文章中有介绍到如果域名使用的DNSPOD解析可以快速申请泛域名SSL证书。有用户提到自己使用的是其他DNS如何快速申请,这个蜗牛后面找时间再分享。每次写个教程确实麻烦。
在这篇文章中,需要分享的是我们申请到Let\’s Encrypt SSL泛域名证书之后如何安装到网站中,今天先测试看看Nginx Web环境网站安装证书的办法。与我们常见的稍微有点类似,只是个别文件有所不同。
注意问题:根据官方提供的文档安装要求,不能直接引用生成的证书文件,最好的办法是采用installcert拷贝到需要的位置。具体参考:https://github.com/Neilpang/acme.sh#3-install-the-issued-cert-to-apachenginx-etc,以及留言处网友贴的方法。后面我再整理出来。
第一、找到我们证书文件
证书文件在\”/root/.acme.sh/\”对于网站域名目录中。建议我们不要将证书拷贝出来单独存放,因为这个安装证书脚本自带自动续约功能,所以拷贝出去之后不可以自动续约。这里需要注意两个文件:fullchain.cer和laobuluo.com.key(这里应该是各位自己的域名)。
第二、修改和添加脚本
/usr/local/nginx/conf/vhost/
这个需要看我们安装哪个WEB环境,比如安装的LNMP是在上面目录中看到站点的.CONF配置文件,然后添加脚本。
listen 443 ssl http2;
ssl_certificate /root/.acme.sh/laobuluo.com/fullchain.cer;
ssl_certificate_key /root/.acme.sh/laobuluo.com/laobuluo.com.key;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers EECDH+CHACHA20:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;
ssl_prefer_server_ciphers on;
ssl_session_timeout 10m;
ssl_session_cache builtin:1000 shared:SSL:10m;
ssl_buffer_size 1400;
add_header Strict-Transport-Security max-age=15768000;
ssl_stapling on;
ssl_stapling_verify on;
这里需要注意修改自己证书2个文件的路径和文件名。与我们以前不同的是,ssl_certificate文件是fullchain.cer,以前是域名前缀的。
第三、跳转和后续问题
这里蜗牛只是介绍到证书的安装上去,如果我们需要强制跳转需要就加上301跳转。最后我们重启NGINX就可以生效。