我如何弄清楚我的 certbot 是如何配置的?

我如何弄清楚我的 certbot 是如何配置的?

我需要更改服务器上的域,我一直使用 certbot 成功获取证书。但我需要将其切换到其他域。我最初没有设置它,所以我不知道它是如何完成的,也不知道如何查看当前配置。

我找到的每个答案都说我需要引用“webroot”目录,但我不确定具体是哪个。它还说,the requested nginx plugin does not appear to be installed如果最初不是这样做的,我认为我做得不对。

Ubuntu 16.4 + nginx

编辑:这是我的配置文件(替换了域和帐户)

\# renew_before_expiry = 30 days
version = 0.12.0
archive_dir = /etc/letsencrypt/archive/domain.com
cert = /etc/letsencrypt/live/domain.com/cert.pem
privkey = /etc/letsencrypt/live/domain.com/privkey.pem
chain = /etc/letsencrypt/live/domain.com/chain.pem
fullchain = /etc/letsencrypt/live/domain.com/fullchain.pem

\# Options used in the renewal process
[renewalparams]
authenticator = standalone
installer = None
account = d78fibhjdsfbgqa8734gfu9ig93

答案1

authenticator = standalone

这行代码基本上意味着 certbot 启动一个独立的网络服务器。为此,您必须先关闭常规网络服务器,然后运行 ​​certbot,然后重新启动网络服务器。

这可以通过

certbot -q renew --standalone --prehook "/usr/sbin/service nginx stop" --posthook "/usr/sbin/service nginx start"

这将停止 nginx,获取证书,然后重新启动 nginx。

另一种选择是安装python-certbot-nginx,让 certbot 自动找出 webroot。这是对缺失插件的引用(the requested nginx plugin does not appear to be installed)。

答案2

您需要安装 certbot nginx 插件。

sudo add-apt-repository ppa:certbot/certbot
sudo apt-get update
sudo apt-get install certbot python-certbot-nginx 

相关内容