PowerDNS DNS Authenticator plugin for Certbot.
This plugin is built from the ground up and follows the development style and life-cycle
of other certbot-dns-*
plugins found in the Official Certbot Repository.
- PowerDNS Authoritative Server API
- PowerDNS-Admin API
NOTE: This package is not currently published on PyPi. Waiting for Pull Request to be accepted upstream. In the meantime, please build and install manually.
$ git clone https://github.com/tmuncks/certbot-dns-powerdns.git
$ cd certbot-dns-powerdns
$ python3 -m build
$ sudo pip3 install certbot
$ sudo pip3 install ./dist/certbot_dns_powerdns-<version>-py2.py3-none-any.whl
Verify:
$ certbot plugins
* dns-powerdns
Description: Obtain certificates using a DNS TXT record (if you are using
PowerDNS for DNS.)
Interfaces: Authenticator, Plugin
Entry point: dns-powerdns = certbot_dns_powerdns.dns_powerdns:Authenticator
...
...
The credentials file e.g. ~/pdns-credentials.ini
should look like this:
dns_powerdns_api_url = https://api.mypowerdns.example.org
dns_powerdns_api_key = AbCbASsd!@34
certbot ... \
--authenticator dns-powerdns \
--dns-powerdns-credentials /etc/letsencrypt/pdns-credentials.ini \
certonly
This follows the upstream nomenclature: certbot-dns-<dns-provider>
.
Create a virtualenv, install the plugin (editable
mode),
spawn the environment and run the test:
virtualenv -p python3 .venv
. .venv/bin/activate
pip install -e .
docker-compose up -d
./test/run_certonly.sh test/pdns-credentials.ini
Copyright (c) 2019 DT Pan-Net s.r.o
Copyright (c) 2021 Thomas M. Steenholdt