配置Let_sEncryptSSL证书
安装snapd
# Ubuntu ,Ubuntu 16.04 LTS(Xenial Xerus)或更高版本已预装,无需再安装
sudo apt install snapd
# Debian
sudo apt install snapd
# Fedora
sudo dnf install snapd
# CentOS
sudo yum install snapd
安装Certbot
sudo snap install --classic certbot
sudo ln -s /snap/bin/certbot /usr/bin/certbot
查看 certbot 版本, ACME v2 要在 certbot 0.20.0
以后的版本支持
certbot --version
申请证书
# Nginx
sudo certbot --nginx -d example.com
# Apache
sudo certbot --apache -d example.com
使用Certbot自动更新SSL证书
Let's Encrypt 的 SSL 证书会在 3 个月到期即 90 天,因此你可能需要手动续订,但 Certbot 软件包附带了一个 cron 任务和 systemd 计时器,它将在证书过期之前进行自动续订。
除非更改配置,否则无需再次手动运行Certbot。可以通过运行命令 sudo certbot renew --dry-run
来测试证书的自动续订。
-
消息
Simulating renewal of an existing certificate for example.com
说明Certbot可以自动更新证书。 -
消息
Failed to renew certificate example.com with error: Some challenges have failed.
说明自动续定失败。 -
在测试自动续订时看到以下错误提示,Let's Encrypt 的服务器验证被阻止这可能是防火墙,应用防火墙或者Nginx的配置错误而导致Let's Encrypt的服务器的验证失败。
Hint: The Certificate Authority failed to verify the temporary nginx configuration changes made by Certbot.
Ensure the listed domains point to this nginx server and that it is accessible from the internet.