用于Certbot的ACMEDNS DNS身份验证程序插件
certbot-dns-acmedns的Python项目详细描述
certbot域名系统
Certbot的ACME-DNS DNS身份验证程序插件。在
这个插件是从头开始构建的,遵循开发风格和生命周期
中找到的其他certbot-dns-*
插件
Official Certbot Repository。在
安装
pip install --upgrade certbot
pip install certbot-dns-acmedns
验证:
^{pr2}$配置
(certbot)凭据文件,例如acmedns-credentials.ini
应该如下所示:
# cat acmedns-credentials.ini
certbot_dns_acmedns:dns_acmedns_api_url = http://acmedns-server/
certbot_dns_acmedns:dns_acmedns_registration_file = /etc/certbot/acme-registration.json
此插件不进行ACME-DNS注册,您有责任
当然/etc/certbot/acme-registration.json
(在上面的例子中)包含
注册数据格式如下:
# cat /etc/certbot/acme-registration.json
{
"something.acme.com": {
"username": "6e14735c-2c6a-447e-b63d-a23ac4438bd7",
"password": "dd6gnYS-IxrQfDLbdPRX3hrFhS_SLrwbS0kSl_i8",
"fulldomain": "3b750a0e-c627-423f-9966-4799c6a9533b.auth.example.org",
"subdomain": "3b750a0e-c627-423f-9966-4799c6a9533b",
"allowfrom": []
}
}
此格式与其他工具中使用的格式相同,例如。 cert-manager ACME-DNS plugin
使用
certbot ... \
--authenticator certbot-dns-acmedns:dns-acmedns \
--certbot-dns-acmedns:dns-acmedns-credentials /etc/certbot/acmedns-credentials.ini \
certonly
常见问题解答
为什么插件的名字这么长?
这遵循上游命名法:certbot-dns-<dns-provider>
。在
为什么我必须在名称中使用:
分隔符?为什么配置文件参数如此怪异?
这是Certbot接口对third party插件的限制。在
有关详细信息,请阅读讨论:
- https://github.com/certbot/certbot/issues/6504#issuecomment-473462138
- https://github.com/certbot/certbot/issues/6040
- https://github.com/certbot/certbot/issues/4351
- https://github.com/certbot/certbot/pull/6372
发展
创建一个virtualenv,安装插件(editable
模式),
生成环境并运行测试:
准备支持环境:
docker-compose up -d
如果希望与一起查看后端服务器日志,也可以省略-d
客户。在
运行certbot客户端
docker build -t certbot_acmedns_client -f test/Dockerfile test/
docker run -it --rm --network certbot-dns-acmedns_default --dns "10.151.40.100" -v $PWD:/certbot-dns-acmedns certbot_acmedns_client sh -c 'pip3 install -e /certbot-dns-acmedns && /certbot-dns-acmedns/test/e2e_test.sh'
许可证
版权所有(c)2020DT Pan-Net s.r.o
- 项目
标签: