使用 let’s encrypt 实现 https

安装 Certbot

Certbot 其实就是维护 Let’s Encrypt 的 Package。

sudo add-apt-repository ppa:certbot/certbot
sudo apt-get update
# nginx 服务器
sudo apt-get install python-certbot-nginx
# apache 服务器
sudo apt-get install python-certbot-apache

签发 SSL 证书

# nginx 服务器
sudo certbot --nginx -d domian.com -d www.domain.com
# apache 服务器
sudo certbot --apache -d domian.com -d www.domain.com

1、签发证书需要签发服务器访问本地服务器,所以先要保证本地服务器不在内网或打开防火墙。
2、输入的 email 地址必需有效,会收到一封确定邮件,未经确认的签发可能不会生效。

自动更新证书

# 如果这个命令你没看到什么 error 的话,那就是没什么问题了。
sudo certbot renew --dry-run

因为 Let’s Encrypt 签发的 SSL 证书有效期只有 90 天,所有在过期之前,我们需要自动更新 SSL 证书,而如果你使用最新的 certbot 的话,Let’s Encrypt 会帮你添加自动更新的脚本到 /etc/cron.d 里,你只需要去检测一下这个命令是否生效就OK!