# 安装nginx 
此步省略, 以nginx安装在'/usr/local/nginx-1.23.3'目录为例
# 1. 安装certbot
# 更新包列表
sudo dnf update
# 安装 EPEL 仓库: EPEL 仓库提供了许多有用的软件包,包括 certbot
sudo dnf install -y epel-release
# 安装 Certbot 和 Nginx 插件。
dnf install -y certbot python3-certbot-nginx

# 2. 自动配置
### --nginx-server-root 指定nginx配置文件目录
### --nginx-ctl 指定nginx可执行文件路径
certbot --nginx --nginx-server-root /usr/local/nginx-1.23.3/conf --nginx-ctl /usr/local/nginx-1.23.3/sbin/nginx

# 3. 检测证书
certbot certificates
### certbot renew --dry-run

# 4. 证书自动续约
## 证书续约命令: /usr/bin/certbot renew

## 4.1 编辑定时任务
crontab -e
## 4.2 配置12小时执行一次
0 */12 * * * root test -x /usr/bin/certbot && /usr/bin/certbot renew --quiet

执行完后nginx.conf会自动加上SSL相关配置

常见问题

执行certbot --nginx --nginx-server-root /usr/local/nginx-1.23.3/conf命令报错:

Saving debug log to /var/log/letsencrypt/letsencrypt.log
The nginx plugin is not working; there may be problems with your existing configuration.
The error was: NoInstallationError("Could not find a usable 'nginx' binary. Ensure nginx exists, the binary is executable, and your PATH is set correctly.")

解决方案:

certbot 命令中增加参数: --nginx-ctl /usr/local/nginx-1.23.3/sbin/nginx

YYGP
25 声望11 粉丝

写BUG