certbot(Lets encrypt)从源代码编译安装到 Nginx

certbot(Lets encrypt)从源代码编译安装到 Nginx

我使用第三方模块从源代码编译 Nginx。删除旧 Nginx 并安装新编译的版本。一切正常,但是当您删除旧 Nginx 时,certbot 脚本将自动被删除。

Nginx 编译并安装后。当尝试通过命令“sudo apt install python3-certbot-nginx”安装 nginx certbot 时。它尝试使用 certbot 从存储库安装 Nginx。帮我解决这个问题。

如何在已编译的 Nginx 上设置 certbot,而无需从存储库安装 Nginx?

答案1

为什么不采用 DNS 验证路线呢?
在 Ubuntu 上安装 Certbot

sudo add-apt-repository ppa:certbot / certbot
sudo apt-get 更新
sudo apt-get 安装 certbot

使用 DNS 验证生成证书 -
sudo certbot certonly --manual --preferred-challenges dns

答案2

感谢 Ritesh 的指导,但 DNS 验证需要额外配置。谷歌搜索了一下,解决了这个问题。

当证书已经存在时,要从先前版本的 python-certbot 成功更新从源代码编译的 Nginx 服务器上的 SSL 证书。

安装常规的非 Python 版本的 certbot 脚本。

sudo 添加 apt 存储库 ppa:certbot/certbot

sudo apt-get 更新

sudo apt-get 安装 certbot

创建 shell 脚本:

触摸/etc/nginx/SSLrenewNginx.sh

回显“------------------------------************-------------------------------”>> /etc/nginx/sslrenew.log 日期“+%H:%M:%S %d/%m/%y”>> /etc/nginx/sslrenew.log sudo certbot renew >> /etc/nginx/sslrenew.log

运行 crontab 编辑器:

crontab -e

并添加行(例如,每 3 个月更新一次证书)

1 4 10 */3 * /etc/nginx/SSLrenewNginx.sh

完全的!

*如果您每 90 天更新证书一次以上,则不会造成任何问题。

相关内容