开始之前,你需要:
- 在你的Ubuntu16.04服务器下有个具备sudo权限的非root账户
- 你的服务器配置好了一个或多个域名
1.安装Let’s Encrypt客户端
我们要通过官方的最新文件源来确保安装最新版的客户端,因此在通过SSH远程链接你的服务器后,键入以下命令添加文件源:
sudo add-apt-repository ppa:certbot/certbot
确认安装后,update下Ubuntu的配置包:
sudo apt-get update
最后安装专门面向Nginx/Apache服务器的客户端,键入以下命令:
sudo apt-get install python-certbot-nginx
##Apache则为 sudo apt-get install python-certbot-apache
2.设置SSL证书
如果你只有一个域名需要配置SSL证书,可以直接运行一下命令来通过客户端自动完成配置功能(其中example.com假设为你的域名):
sudo certbot --nginx -d example.com
##Apache则为 sudo certbot --apache -d example.com
如果你有多个域名,或者子域名需要一并配置,可以将你的最核心的域名放在最前面,其他的陆续通过-d参与跟随在后方,如下命令:
sudo certbot --nginx -d example.com -d www.example.com -d m.example.com
##Apache则为 sudo certbot --apache -d example.com -d www.example.com -d m.example.com
等到流程跑完,你就可以在/etc/letsencrypt/live这个路径下找到你的证书,你也可以通过以下网址来确认你的证书是否生效,其中example.com为你配置的域名:
https://www.ssllabs.com/ssltest/analyze.html?d=example.com&latest
3.设置客户端自动更新证书
Let’s Encrypt只有90天有效期,但客户端支持提前30天自动更新,只需要键入以下命令:
sudo certbot renew --dry-run
如果没有任何报错,设置完成。