Certbot DNS plugin supporting multiple providers, using github.com/go-acme/lego
Project description
certbot-dns-multi
DNS plugin for Certbot which integrates with the 117+ DNS providers from the lego ACME client.
At the last check, the supported providers are:
Akamai EdgeDNS, Alibaba Cloud DNS, all-inkl, Amazon Lightsail, Amazon Route 53, ArvanCloud, Aurora DNS, Autodns, Azure (deprecated), Azure DNS, Bindman, Bluecat, Brandit, Bunny, Checkdomain, Civo, Cloud.ru, CloudDNS, Cloudflare, ClouDNS, CloudXNS, ConoHa, Constellix, CPanel/WHM, Derak Cloud, deSEC.io, Designate DNSaaS for Openstack, Digital Ocean, DNS Made Easy, dnsHome.de, DNSimple, DNSPod (deprecated), Domain Offensive (do.de), Domeneshop, DreamHost, Duck DNS, Dyn, Dynu, EasyDNS, Efficient IP, Epik, Exoscale, External program, freemyip.com, G-Core, Gandi Live DNS (v5), Gandi, Glesys, Go Daddy, Google Cloud, Google Domains, Hetzner, Hosting.de, Hosttech, HTTP request, http.net, Hurricane Electric DNS, HyperOne, IBM Cloud (SoftLayer), IIJ DNS Platform Service, Infoblox, Infomaniak, Internet Initiative Japan, Internet.bs, INWX, Ionos, IPv64, iwantmyname, Joker, Joohoi's ACME-DNS, Liara, Linode (v4), Liquid Web, Loopia, LuaDNS, Mail-in-a-Box, Manual, Metaname, MyDNS.jp, MythicBeasts, Name.com, Namecheap, Namesilo, NearlyFreeSpeech.NET, Netcup, Netlify, Nicmanager, NIFCloud, Njalla, Nodion, NS1, Open Telekom Cloud, Oracle Cloud, OVH, plesk.com, Porkbun, PowerDNS, Rackspace, RcodeZero, reg.ru, RFC2136, RimuHosting, Sakura Cloud, Scaleway, Selectel, Servercow, Shellrent, Simply.com, Sonic, Stackpath, Tencent Cloud DNS, TransIP, UKFast SafeDNS, Ultradns, Variomedia, VegaDNS, Vercel, Versio.[nl/eu/uk], VinylDNS, VK Cloud, Vscale, Vultr, Webnames, Websupport, WEDOS, Yandex 360, Yandex Cloud, Yandex PDD, Zone.ee, Zonomi
Installation
via snap
Using the certbot snap is the easiest way to use this plugin. See here for instructions on installing Certbot via snap.
sudo snap install certbot-dns-multi
sudo snap set certbot trust-plugin-with-root=ok
sudo snap connect certbot:plugin certbot-dns-multi
via pip
Compiled wheels are available for most x86_64/amd64 Linux distributions. On other platforms, pip will try to compile the plugin, which requires Go 1.19 or newer to be installed on your server.
| How did you install Certbot? | How to install the plugin |
|---|---|
From snap |
Don't use pip! Use the snap instructions above. |
Using the official Certbot pip instructions |
sudo /opt/certbot/bin/pip install certbot-dns-multi |
From apt, yum, dnf or any other distro package manager. (Requires Certbot 1.12.0 or newer.) |
pip install certbot-dns-multi |
via docker
Docker images for linux/amd64 and linux/arm64 are available from ghcr.io/alexzorin/certbot-dns-multi.
e.g.
docker run --rm -it -v /etc/letsencrypt:/etc/letsencrypt \
ghcr.io/alexzorin/certbot-dns-multi certonly \
-a dns-multi --dns-multi-credentials /etc/letsencrypt/dns-multi.ini \
-d "*.example.com" -d "example.com" --dry-run
Usage
certbot-dns-multi is controlled via a credentials file.
-
Head to https://go-acme.github.io/lego/dns/ and find your DNS provider in the list. In this example, we'll use
cloudflare. -
Create
/etc/letsencrypt/dns-multi.iniand enter the name of your provider, all lowercase, as below:dns_multi_provider = cloudflare
-
Following the instructions on https://go-acme.github.io/lego/dns/cloudflare/, we add the required configuration items:
dns_multi_provider = cloudflare CLOUDFLARE_DNS_API_TOKEN="1234567890abcdefghijklmnopqrstuvwxyz"
-
Save the file and secure it:
chmod 0600 /etc/letsencrypt/dns-multi.ini
-
Try issue a certificate now:
certbot certonly -a dns-multi \ --dns-multi-credentials=/etc/letsencrypt/dns-multi.ini \ -d "*.example.com" \ --dry-run
-
🥳, or if not, ask on the community forums for help.
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 Distributions
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_multi-4.30.1.tar.gz.
File metadata
- Download URL: certbot_dns_multi-4.30.1.tar.gz
- Upload date:
- Size: 77.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
09cebd61e9cba1e8a32c1e176811ba0d057ccc9fdc41d88106969377c2d915e5
|
|
| MD5 |
2ab179805e721c6e619f51e33bcbc014
|
|
| BLAKE2b-256 |
93a8f21d56dca6a7ecfbb1386386334df1b153eab30a72b5464d832b139af758
|
Provenance
The following attestation bundles were made for certbot_dns_multi-4.30.1.tar.gz:
Publisher:
build-and-publish.yml on alexzorin/certbot-dns-multi
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
certbot_dns_multi-4.30.1.tar.gz -
Subject digest:
09cebd61e9cba1e8a32c1e176811ba0d057ccc9fdc41d88106969377c2d915e5 - Sigstore transparency entry: 773603726
- Sigstore integration time:
-
Permalink:
alexzorin/certbot-dns-multi@ac1d9effb7bcc2a2d971ef11f9361126df410af1 -
Branch / Tag:
refs/tags/4.30.1 - Owner: https://github.com/alexzorin
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build-and-publish.yml@ac1d9effb7bcc2a2d971ef11f9361126df410af1 -
Trigger Event:
push
-
Statement type:
File details
Details for the file certbot_dns_multi-4.30.1-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.
File metadata
- Download URL: certbot_dns_multi-4.30.1-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
- Upload date:
- Size: 33.9 MB
- Tags: CPython 3.12, manylinux: glibc 2.28+ x86-64, manylinux: glibc 2.5+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e731056135e2e380e3f0c574868220274e1b9a40e0c12654bb3fc6fe2b6050a3
|
|
| MD5 |
d2114aa18d6b90f6edec4cf1f3497db7
|
|
| BLAKE2b-256 |
c6da8c76c3e69cdc25f3337a8d1c446355d765e5697c48df1dfe833a7605dd86
|
Provenance
The following attestation bundles were made for certbot_dns_multi-4.30.1-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl:
Publisher:
build-and-publish.yml on alexzorin/certbot-dns-multi
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
certbot_dns_multi-4.30.1-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl -
Subject digest:
e731056135e2e380e3f0c574868220274e1b9a40e0c12654bb3fc6fe2b6050a3 - Sigstore transparency entry: 773603729
- Sigstore integration time:
-
Permalink:
alexzorin/certbot-dns-multi@ac1d9effb7bcc2a2d971ef11f9361126df410af1 -
Branch / Tag:
refs/tags/4.30.1 - Owner: https://github.com/alexzorin
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build-and-publish.yml@ac1d9effb7bcc2a2d971ef11f9361126df410af1 -
Trigger Event:
push
-
Statement type:
File details
Details for the file certbot_dns_multi-4.30.1-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.
File metadata
- Download URL: certbot_dns_multi-4.30.1-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
- Upload date:
- Size: 33.8 MB
- Tags: CPython 3.11, manylinux: glibc 2.28+ x86-64, manylinux: glibc 2.5+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7465b8da528d34b8056ebf76e3578bcafb8e2d2b8c3fa95d9c9d050fc011e64b
|
|
| MD5 |
7b06a5b6ab8dc913d5dcb9e5ae089410
|
|
| BLAKE2b-256 |
86a90a81eac761e7063782b6c0d3d60171cabfa0dafee0587546b97cb8dee4c1
|
Provenance
The following attestation bundles were made for certbot_dns_multi-4.30.1-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl:
Publisher:
build-and-publish.yml on alexzorin/certbot-dns-multi
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
certbot_dns_multi-4.30.1-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl -
Subject digest:
7465b8da528d34b8056ebf76e3578bcafb8e2d2b8c3fa95d9c9d050fc011e64b - Sigstore transparency entry: 773603742
- Sigstore integration time:
-
Permalink:
alexzorin/certbot-dns-multi@ac1d9effb7bcc2a2d971ef11f9361126df410af1 -
Branch / Tag:
refs/tags/4.30.1 - Owner: https://github.com/alexzorin
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build-and-publish.yml@ac1d9effb7bcc2a2d971ef11f9361126df410af1 -
Trigger Event:
push
-
Statement type:
File details
Details for the file certbot_dns_multi-4.30.1-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.
File metadata
- Download URL: certbot_dns_multi-4.30.1-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
- Upload date:
- Size: 33.8 MB
- Tags: CPython 3.10, manylinux: glibc 2.28+ x86-64, manylinux: glibc 2.5+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4d8a7f28a7885d224d2975a5bb37f561b40411df90c4eb68a043e0f8baf0f777
|
|
| MD5 |
d013d67f82b20a89614a0ad92bf95137
|
|
| BLAKE2b-256 |
4f82d01d0f1fb883c54235b267723ec380fedb89be158d93a7abe1287cd77c16
|
Provenance
The following attestation bundles were made for certbot_dns_multi-4.30.1-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl:
Publisher:
build-and-publish.yml on alexzorin/certbot-dns-multi
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
certbot_dns_multi-4.30.1-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl -
Subject digest:
4d8a7f28a7885d224d2975a5bb37f561b40411df90c4eb68a043e0f8baf0f777 - Sigstore transparency entry: 773603734
- Sigstore integration time:
-
Permalink:
alexzorin/certbot-dns-multi@ac1d9effb7bcc2a2d971ef11f9361126df410af1 -
Branch / Tag:
refs/tags/4.30.1 - Owner: https://github.com/alexzorin
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build-and-publish.yml@ac1d9effb7bcc2a2d971ef11f9361126df410af1 -
Trigger Event:
push
-
Statement type:
File details
Details for the file certbot_dns_multi-4.30.1-cp39-cp39-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.
File metadata
- Download URL: certbot_dns_multi-4.30.1-cp39-cp39-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
- Upload date:
- Size: 33.8 MB
- Tags: CPython 3.9, manylinux: glibc 2.28+ x86-64, manylinux: glibc 2.5+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5a649c991ce81b9aab84dab5c34b668652e320be3473c34142b1767a1ed571b4
|
|
| MD5 |
456fea54e0477ee5c8b5be06f106b542
|
|
| BLAKE2b-256 |
ab9b4a8d8a799b021119cfaec8e3f5ca4ea9c69657b56cd804920d7f8a6887ba
|
Provenance
The following attestation bundles were made for certbot_dns_multi-4.30.1-cp39-cp39-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl:
Publisher:
build-and-publish.yml on alexzorin/certbot-dns-multi
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
certbot_dns_multi-4.30.1-cp39-cp39-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl -
Subject digest:
5a649c991ce81b9aab84dab5c34b668652e320be3473c34142b1767a1ed571b4 - Sigstore transparency entry: 773603738
- Sigstore integration time:
-
Permalink:
alexzorin/certbot-dns-multi@ac1d9effb7bcc2a2d971ef11f9361126df410af1 -
Branch / Tag:
refs/tags/4.30.1 - Owner: https://github.com/alexzorin
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build-and-publish.yml@ac1d9effb7bcc2a2d971ef11f9361126df410af1 -
Trigger Event:
push
-
Statement type: