无法选择合适的插件:nginx插件不工作; 处理/etc/letsencrypt/renewal/api.shunhinggaoke.com.conf

无法选择合适的插件:nginx插件不工作; 处理/etc/letsencrypt/renewal/api.shunhinggaoke.com.conf,nginx,certbot,Nginx,Certbot,证书未到期更新,但模拟干运行更新 无法选择合适的插件:nginx插件不工作;现有配置可能存在问题。 错误是:NoInstallationError() 试图从/etc/letsencrypt/renewal/api.shunhinggaoke.com.conf续订证书(api.shunhinggaoke.com)时产生意外错误:nginx插件不工作;现有配置可能存在问题。 错误为:NoInstallationError()。跳过 所有续订尝试均失败。无法续订以下证书: /etc/letsencr

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


**试运行:模拟“certbot续订”接近证书到期 **(以下测试证书尚未保存。)

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

**(以上测试证书尚未保存。)
1个续订失败,0个解析失败

我刚刚遇到您的问题,不知道您是否仍然存在此问题。你需要发布更多细节。您甚至没有指出在哪个平台上出现问题。我假设它在Linux机器上。如果是,您是从命令行还是从cron脚本运行
certbot renew--dry run
命令

上面的问题表明了一个环境问题,很可能是路径问题,我假设您只有在通过cron运行脚本时才会遇到这个问题。我还假设您使用
crontab-e
sudo crontab-e
命令将其添加到crontab中

通常建议的解决方案是在crontab文件本身中设置路径,然后重试。这意味着,不要执行
(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/letsencrypt/letsencrypt.log中,并且受读保护。做一个

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

看看你能得到什么。如果运行正常,您应该在运行结束时获得
无续订失败
。脚本每分钟运行一次,因此在获取日志后将其关闭

路径提示的向上投票