Skip to main content

Certbot DNS plugin

This plugin uses certbot's dns-01 challenge to create and delete TXT records on a Wedos domain server, thanks to the API interface called WAPI provided by Wedos. With this plugin, you can issue wildcard SSL/TLS certificates.

Installation

Prerequisites

The following software is required to use this plugin.

Name Install Version
python Link >= 3.10.0
pip Link >= 24.1
certbot Link >= 3.0.0

Note that in theory, even older versions should work, but it has not been tested.

WAPI

You will also need to have WAPI activated for communication between Wedos and the plugin. To activate WAPI, you can read the article from Wedos, available at this link WAPI activation and settings.

CAUTION: Please note that the IP address of the server where running Certbot must be whitelisted in WAPI, otherwise it will not work.

Installation methods

sudo snap install certbot-dns-wedos
sudo snap set certbot trust-plugin-with-root=ok
sudo snap connect certbot:plugin certbot-dns-wedos

With pip

sudo pip install certbot-dns-wedos

From source

git clone https://github.com/clazzor/certbot-dns-wedos.git
sudo pip install ./certbot-dns-wedos

After installation, the cloned repository can be deleted.

rm -r certbot-dns-wedos

Setup

Arguments

Name Required Description
--dns-wedos-propagation-seconds ❌ Seconds to wait for DNS propagation before verifying the DNS record with ACME server.
--dns-wedos-credentials ✅ The complete path to the INI file for credentials containing data for authorization.

The default value of propagation-seconds is 450. If there is a problem with validation, increase the number. The lower limit is 300.

Command example

The basic structure of the command is the same as with all other certbot plugins, we define which plugin to use, propagation-seconds, credentials file and domains, like this:

certbot certonly \
--authenticator dns-wedos \
--dns-wedos-propagation-seconds 450 \
--dns-wedos-credentials /path/to/the/file.ini \
-d example.com -d *.example.com

Credentials file

Name Required Description
dns_wedos_user ✅ The user (email) for WAPI.
dns_wedos_auth ✅ The auth (password) for WAPI.
dns_wedos_ttl ❌ The TTL for the DNS record. (default: 300)

This is what the credentials file for the wedos plugin should look like.

dns_wedos_user=user@example.com
dns_wedos_auth=examplepassword
  • Values are written after an equals sign =. For values with spaces, such as hello world, a space can be used.
  • For the ini file you should apply permission: chmod 600 file.ini for security reasons.

Reloading certificates on services

Usually services like haproxy, nginx, apache and more need to reload to retrieve a new certificate. The --deploy-hook is used for this purpose.

Example

certbot certonly \
--authenticator dns-wedos \
--dns-wedos-propagation-seconds 450 \
--dns-wedos-credentials /path/to/the/file.ini \
-d example.com -d *.example.com \
--deploy-hook "COMMAND_TO_RELOAD_SERVICE"

Nginx

--deploy-hook "systemctl reload nginx"

Apache

--deploy-hook "systemctl reload apache2"

HAProxy

HAProxy requires the certificate and private key to be joined into a single .pem file:

--deploy-hook "cat /etc/letsencrypt/live/example.com/fullchain.pem /etc/letsencrypt/live/example.com/privkey.pem > /etc/haproxy/certs/combined.pem && systemctl reload haproxy"

Errors

If an error occurs, Certbot will display the type of error that has occurred.

  • If you get this error "Certbot failed to authenticate some domains (authenticator: dns-wedos)", increase the value in the --dns-wedos-propagation-seconds argument.
  • Standard HTTP error codes are returned in case of communication issues with the WAPI endpoint.
  • If it is an error related to communication between the plugin and WAPI, you will receive a WAPI return code.

Used Modules/Libraries

The following modules and libraries are used by this plugin (useful for debugging purposes):

Name License
certbot Apache 2.0
datetime PSF
hashlib PSF
json PSF
logging PSF
typing PSF
pytz MIT
requests Apache 2.0
setuptools MIT
tldextract BSD 3-Clause

Metadata

Release files for certbot-dns-wedos 2.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for certbot-dns-wedos 2.5
File Size Uploaded
certbot_dns_wedos-2.5.tar.gz 11.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for certbot-dns-wedos 2.5
File Interpreter ABI Platform
certbot_dns_wedos-2.5-py3-none-any.whl Python 3 none any Details

Total release size: 23.0 kB

Release files / certbot_dns_wedos-2.5.tar.gz

Download URL certbot_dns_wedos-2.5.tar.gz
Size 11.3 kB
Tags Source
SHA-256 checksum
How to use checksums
dfebde97fec00a30f609ee343db60ec5058ae8ad06b8a3a1f9a085c6654e0109
BLAKE2b-256 checksum
How to use checksums
39d1464e3061ffb690d5d969f23d393d26a5bcd928a3c0d9330c4397fbc7ac8a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 21, 2026.

Transparency log

Release files / certbot_dns_wedos-2.5-py3-none-any.whl

Download URL certbot_dns_wedos-2.5-py3-none-any.whl
Size 11.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
26428fea4392bbe77d14a38314453abc46ea152587f2a2e803d6d11dfa1836a9
BLAKE2b-256 checksum
How to use checksums
a50e6c82865a4d3cb52f7f8023520c80b4f6c657ac2fa7d14ca5165fc9a40777
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 21, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

2.5 This release

2 release files

2.4

2 release files

2.3

2 release files

2.2

2 release files

2.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page