宽带的 80、443 端口被禁了,更新免费的 SSL 证书( Let ’ s Encrypt 的免费证书)就成问题了。后来找到相关的文章,说是可以通过 DNS 验证并更新,指向以下官方网址:
User Guide -> Getting certificates (and choosing plugins) -> dns-plugins https://certbot.eff.org/docs/using.html#dns-plugins
找 DNSPod 的插件时,发现 github 上居然有不同的版本(名称却是一样的),因此走了弯路(浪费了一个下午)。最后按照这个的说明,成功更新了证书。
DNSPOD DNS Authenticator plugin for Certbot https://github.com/SkyLothar/certbot-dns-dnspod/blob/master/README.rst
简单来说,就是
1 )去 DNSPod.cn 申请 api 授权
2 )安装插件:pip install certbot-dns-dnspod
3 )生成插件配置文件,例如保存到文件/etc/cetbot-dns-dnspod-credentials.ini
。重点是双引号不可缺,token 的格式是 id 和 token 以逗号分隔
certbot_dns_dnspod:dns_dnspod_email = "DNSPod 账户的 Email"
certbot_dns_dnspod:dns_dnspod_api_token = "api_id,api_token"
4 )配置文件设置权限(只是为了安全,此步可不做):sudo chmod 600 /etc/cetbot-dns-dnspod-credentials.ini
5 )更新证书。xxx.com 需要替换为相关域名。
certbot certonly -a certbot-dns-dnspod:dns-dnspod \
--certbot-dns-dnspod:dns-dnspod-credentials /etc/cetbot-dns-dnspod-credentials.ini \
-d xxx.com
证书更新成功后,会发现 certbot 的配置文件(/etc/letsencrypt/renewal/xxx.com.conf )也更新了。
2
huaxianyan 2019-08-24 18:57:57 +08:00
|
3
fox0001 OP |