Head Pic: 【オリジナル】"log5" / Illustration by "凪白みと" [pixiv]

我发现Google真是一个优秀的搜索引擎。

发现问题

因为一开始我抓的是泛域名的野卡证书,所以就只能用dns-01验证,而certbot的交互式操作不能做到自动续费,好像就只能重抓证书了。

但是后来发现因为我域名的dns是cloudflare,好像有个插件可以来搞。

使用certbot-dns-cloudflare插件

这玩意就是certbot用来给cloudflare的dns-01验证续费/新签的,也有类似的插件对于其他dns商。

正常就是pip install certbot-dns-cloudflare就可以正常使用了,但是我不知为何我这certbot死也装不上,于是就只能用脚本的certbot-auto。

但是这样的话并不能用上面的方法安装插件。

多亏了Google,让我搜到一个和我类似经历的人和他的解决方案(见这里):

Use this command: certbot-auto --version If it needs to upgrade it will do, then use this command to install the plugin: /opt/eff.org/certbot/venv/bin/pip install certbot-dns-cloudflare and try again, certbot-auto plugins

这样就愉快的安装好了。

配置

需要使用cloudflare的全局API,自己去它的网站上抓一个下来,然后创建一个配置文件:

echo > /etc/letsencrypt/cloudflare.ini
emacs /etc/letsencrypt/cloudflare.ini
# 写入如下内容:
dns_cloudflare_email = [email protected] 
dns_cloudflare_api_key = your_cloudflare_api

续期(命)

因为不小心直接把原来的certbot删掉了,所以证书直接没了,然后就重新抓了一个,用下面的命令

./certbot-auto certonly \
   --server "https://acme-v02.api.letsencrypt.org/directory" \
   --dns-cloudflare \
   --dns-cloudflare-credentials /etc/letsencrypt/cloudflare.ini \
   -d 4o5.xyz -d *.4o5.xyz

这里的\表示显示断点,实际不应输入。

续费的话应该把certonly换成renew就行了。

最后修改:2020-03-01 14:45:27