certbot:错误:参数 --renew-hook:预期一个参数

certbot:错误:参数 --renew-hook:预期一个参数

我在 Nginx 上通过 let's encrypt 更新证书时遇到问题。我收到以下错误。我遗漏了什么?

[root] #  /usr/local/letsencrypt/certbot-auto renew --quiet --renew-hook --dry-run
usage: 
  certbot-auto [SUBCOMMAND] [options] [-d DOMAIN] [-d DOMAIN] ...

Certbot can obtain and install HTTPS/TLS/SSL certificates.  By default,
it will attempt to use a webserver both for obtaining and installing the
certificate. 
certbot: error: argument --renew-hook: expected one argument

答案1

嗯,错误信息很容易解释:

certbot:错误:参数 --renew-hook:预期一个参数

您使用了参数,但没有指定参数,在本例中是需要调用的脚本。

引用文档

renew 命令包括在证书续订之前或之后运行命令或脚本的钩子。例如,如果您使用独立插件获得了一个证书,则可能需要在续订之前停止 Web 服务器,以便独立服务器可以绑定到必要的端口,然后在插件完成后重新启动它。

[...]

--pre-hook--post-hook hooks在每次续订尝试之前和之后运行。如果您希望钩子仅在成功续订后运行,请使用--renew-hook以下命令:

certbot renew --renew-hook /path/to/renew-hook-script

因此,如果您不需要额外的脚本,只需省略此参数。

答案2

这是由于 certbot 中的错误造成的。您需要按照以下 URL 中所述对其进行修补。这将在新版本中得到纠正。

https://bugzilla.redhat.com/show_bug.cgi?id=1444814

相关内容