无法选择合适的插件:nginx插件不工作;

tvmytwxo  于 2023-10-17  发布在  Nginx
关注(0)|答案(2)|浏览(137)

处理/etc/letsencrypt/renewal/API.shunhinggaoke.com.conf

证书未到期更新,但模拟更新进行试运行无法选择适当的插件:nginx插件不工作;则现有配置可能存在问题。错误为:NoInstallationError()尝试api.shunhinggaoke.com从/etc/letsencrypt/renewal/API.shunhinggaoke.com.conf续订证书(www.example.com)时产生意外错误:nginx插件不工作;则现有配置可能存在问题。错误为:System. out. println().正在跳过。所有续订尝试均失败。以下证书无法续期:/etc/letsencrypt/live/api.shunhinggaoke.com/fullchain.pem(失败)

DRY RUN:模拟certbot renew接近证书到期(以下测试证书尚未保存)

所有续订尝试均失败。以下证书无法续期:/etc/letsencrypt/live/api.shunhinggaoke.com/fullchain.pem(failure)**DRY RUN:模拟“certbot续订”接近证书到期

**(以上测试证书尚未保存)

1个续订失败,0个解析失败

ev7lccsx

ev7lccsx1#

检查certbot-nginx插件是否已安装。
apt-get install python3-certbot-nginx解决了我的Debian中的类似问题。

rdlzhqv9

rdlzhqv92#

我刚刚看到你的问题,不知道你是否还有这个问题。你需要发布更多的细节。你甚至没有指出你在哪个平台上有问题。我假设它是在一台Linux机器上。如果是,您是从命令行还是从cron脚本运行certbot renew --dry-run命令?
上面的问题表明是一个环境问题,很可能是一个PATH问题,我假设你只有在通过cron运行脚本时才会遇到这个问题。我还假设您使用crontab -esudo crontab -e命令将其添加到crontab。
通常建议的解决方案是在crontab文件本身中设置PATH,然后重试。这意味着,不要执行(sudo) crontab -e,但要确保在/etc/crontab文件中设置了系统crontab,或者在certbot的crontab文件中设置了它。
在Ubuntu 16.04上,它是/etc/crond.d/certbot,看起来像这样:

#lots of commented lines preceding ...
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
0 */12 * * * root test -x /usr/bin/certbot -a \! -d /run/systemd/system && perl -e'sleep int(rand(43200))' && certbot -q renew

一天两班。您可以通过添加另一行来测试它,如下所示:

* * * * * root /usr/bin/certbot renew --quiet --dry-run

然后查看你的certbot日志它可能在/var/log/letslogt/letslogt. log中,并且受到读保护。做

sudo tail -f  /var/log/letsencrypt/letsencrypt.log

看看你能得到什么如果运行正常,你应该在运行结束时得到no renewal failures。脚本每分钟运行一次,所以在您获得日志后将其关闭。

相关问题