PowerAdmin DNS Authenticator plugin for Certbot
Project description
certbot-dns-poweradmin
PowerAdmin DNS Authenticator plugin for Certbot
This plugin automates the process of completing a dns-01 challenge by creating, and subsequently removing, TXT records using the PowerAdmin API.
Installation
pip install certbot-dns-poweradmin
PowerAdmin Configuration
Your PowerAdmin installation needs to have the API enabled. The plugin supports both API v1 and v2.
You'll need an API key with permissions to:
- List zones
- Create DNS records
- Delete DNS records
Usage
- Create a credential file (e.g.,
/etc/letsencrypt/poweradmin.ini):
dns_poweradmin_api_url = https://poweradmin.example.com
dns_poweradmin_api_key = your-api-key-here
dns_poweradmin_api_version = v2
The api_version is optional and defaults to v2. Set it to v1 if your PowerAdmin installation uses the older API.
- Secure the credential file:
chmod 600 /etc/letsencrypt/poweradmin.ini
- Run certbot:
certbot certonly \
--authenticator dns-poweradmin \
--dns-poweradmin-credentials /etc/letsencrypt/poweradmin.ini \
-d example.com
Arguments
| Argument | Description |
|---|---|
--dns-poweradmin-credentials |
Path to credentials INI file (required) |
--dns-poweradmin-propagation-seconds |
Seconds to wait for DNS propagation (default: 120) |
Examples
Get a certificate for a single domain:
certbot certonly \
--authenticator dns-poweradmin \
--dns-poweradmin-credentials /etc/letsencrypt/poweradmin.ini \
-d example.com
Get a wildcard certificate:
certbot certonly \
--authenticator dns-poweradmin \
--dns-poweradmin-credentials /etc/letsencrypt/poweradmin.ini \
-d example.com \
-d "*.example.com"
With custom propagation time:
certbot certonly \
--authenticator dns-poweradmin \
--dns-poweradmin-credentials /etc/letsencrypt/poweradmin.ini \
--dns-poweradmin-propagation-seconds 300 \
-d example.com
Docker
FROM certbot/certbot
RUN pip install certbot-dns-poweradmin
Build and run:
docker build -t certbot/dns-poweradmin .
docker run --rm \
-v /etc/letsencrypt:/etc/letsencrypt \
-v /var/lib/letsencrypt:/var/lib/letsencrypt \
certbot/dns-poweradmin certonly \
--authenticator dns-poweradmin \
--dns-poweradmin-credentials /etc/letsencrypt/poweradmin.ini \
-d example.com
Troubleshooting
Plugin not found by certbot
If certbot plugins doesn't show dns-poweradmin, ensure both certbot and the plugin are installed in the same Python environment:
# Check where certbot is installed
which certbot
# If using system certbot but plugin in venv, either:
# Option 1: Install certbot in the same venv
pip install certbot certbot-dns-poweradmin
# Option 2: Use certbot from the venv
python -m certbot plugins
Virtual environment usage
When using a virtual environment, install both certbot and the plugin together:
python3 -m venv certbot-env
source certbot-env/bin/activate
pip install certbot certbot-dns-poweradmin
# Run certbot from the venv
certbot plugins # should show dns-poweradmin
API connection issues
- Verify your API URL is correct and accessible
- Check that your API key has the required permissions
License
Apache License 2.0
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file certbot_dns_poweradmin-0.1.1.tar.gz.
File metadata
- Download URL: certbot_dns_poweradmin-0.1.1.tar.gz
- Upload date:
- Size: 39.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
160f9404acdbfe062f2103da37d92bc99fa7a01c37fb36b153a1feaad5a4e0ad
|
|
| MD5 |
7908bb5e37f69abd90a8a9a21e0c7c82
|
|
| BLAKE2b-256 |
71e9fe58b1c899846c4fb5ae263e5787c62b53a209882f8182283760695a0cfb
|
File details
Details for the file certbot_dns_poweradmin-0.1.1-py3-none-any.whl.
File metadata
- Download URL: certbot_dns_poweradmin-0.1.1-py3-none-any.whl
- Upload date:
- Size: 14.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d26d1fa06a7e9e592fafdcc8e85a4f4371b52fb1d5c5eff146b0191b7b793f99
|
|
| MD5 |
e49685122efff88aed33d9766e68a01e
|
|
| BLAKE2b-256 |
620cc57ab0095bfb07cf11cf2f1ab27e7a5881a37941ee1d07d573d4d0c2237c
|