Skip to main content

certbot-dns-multi

certbot-dns-multi build status snap test status

DNS plugin for Certbot which integrates with the 117+ DNS providers from the lego ACME client.

At the last check, the supported providers are:

35.com/三五互联, Active24, Akamai EdgeDNS, Alibaba Cloud DNS, AlibabaCloud ESA, all-inkl, Alwaysdata, Amazon Lightsail, Amazon Route 53, Anexia CloudDNS, ArtFiles, ArvanCloud, Aurora DNS, Autodns, Axelname, Azion, Azure (deprecated), Azure DNS, Baidu Cloud, Beget.com, Binary Lane, Bindman, Bluecat, Bluecat v2, BookMyName, Brandit (deprecated), Bunny, Checkdomain, Civo, Cloud.ru, CloudDNS, Cloudflare, ClouDNS, CloudXNS (Deprecated), ConoHa v2, ConoHa v3, Constellix, Core-Networks, CPanel/WHM, DDnss (DynDNS Service), Derak Cloud, deSEC.io, Designate DNSaaS for Openstack, Digital Ocean, DirectAdmin, DNS Made Easy, DNSExit, dnsHome.de, DNSimple, DNSPod (deprecated), Domain Offensive (do.de), Domeneshop, DreamHost, Duck DNS, Dyn, DynDnsFree.de, Dynu, EasyDNS, EdgeCenter, Efficient IP, Epik, Exoscale, External program, F5 XC, freemyip.com, FusionLayer NameSurfer, G-Core, Gandi, Gandi Live DNS (v5), Gigahost.no, Glesys, Go Daddy, Google Cloud, Google Domains, Gravity, Hetzner, Hosting.de, Hosting.nl, Hostinger, Hosttech, HTTP request, http.net, Huawei Cloud, Hurricane Electric DNS, HyperOne, IBM Cloud (SoftLayer), IIJ DNS Platform Service, Infoblox, Infomaniak, Internet Initiative Japan, Internet.bs, INWX, Ionos, Ionos Cloud, IPv64, ISPConfig 3, ISPConfig 3 - Dynamic DNS (DDNS) Module, iwantmyname (Deprecated), JD Cloud, Joker, Joohoi's ACME-DNS, KeyHelp, Leaseweb, Liara, Lima-City, Linode (v4), Liquid Web, Loopia, LuaDNS, Mail-in-a-Box, ManageEngine CloudDNS, Manual, Metaname, Metaregistrar, mijn.host, Mittwald, myaddr.{tools,dev,io}, MyDNS.jp, MythicBeasts, Name.com, Namecheap, Namesilo, NearlyFreeSpeech.NET, Neodigit, Netcup, Netlify, Nicmanager, NIFCloud, Njalla, Nodion, NS1, Octenium, Open Telekom Cloud, Oracle Cloud, OVH, plesk.com, Porkbun, PowerDNS, Rackspace, Rain Yun/雨云, RcodeZero, reg.ru, Regfish, RFC2136, RimuHosting, RU CENTER, Sakura Cloud, Scaleway, Selectel, Selectel v2, SelfHost.(de|eu), Servercow, Shellrent, Simply.com, Sonic, Spaceship, Stackpath, Syse, Technitium, Tencent Cloud DNS, Tencent EdgeOne, Timeweb Cloud, TodayNIC/时代互联, TransIP, UKFast SafeDNS, Ultradns, United-Domains, Variomedia, VegaDNS, Vercel, Versio.[nl|eu|uk], VinylDNS, Virtualname, VK Cloud, Volcano Engine/火山引擎, Vscale, Vultr, webnames.ca, webnames.ru, Websupport, WEDOS, West.cn/西部数码, Yandex 360, Yandex Cloud, Yandex PDD, Zone.ee, ZoneEdit, 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

We previously published armhf snaps, but new snap releases are now published only for amd64 and arm64.

via pip

Compiled wheels are available for most x86_64/amd64 Linux distributions for Python 3.11+. On other platforms, pip will try to compile the plugin, which requires Go 1.24 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.

  1. Head to https://go-acme.github.io/lego/dns/ and find your DNS provider in the list. In this example, we'll use cloudflare.

  2. Create /etc/letsencrypt/dns-multi.ini and enter the name of your provider, all lowercase, as below:

    dns_multi_provider = cloudflare
    
  3. 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"
    
  4. Save the file and secure it:

    chmod 0600 /etc/letsencrypt/dns-multi.ini
    
  5. Try issue a certificate now:

    certbot certonly -a dns-multi \
    --dns-multi-credentials=/etc/letsencrypt/dns-multi.ini \
    -d "*.example.com" \
    --dry-run
    
  6. 🥳, or if not, ask on the community forums for help.

Metadata

Release files for certbot-dns-multi 5.6.0

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-multi 5.6.0
File Size Uploaded Provenance Actions
certbot_dns_multi-5.6.0.tar.gz 114.7 kB With provenance Details for certbot_dns_multi-5.6.0.tar.gz

Built distributions (wheels)

Table of built distributions (wheels) for certbot-dns-multi 5.6.0
File Actions
certbot_dns_multi-5.6.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.14 CPython 3.14 Linux glibc 2.17+ ARM64, Linux glibc 2.28+ ARM64 Details for certbot_dns_multi-5.6.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
certbot_dns_multi-5.6.0-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.5+ x86-64, Linux glibc 2.28+ x86-64 Details for certbot_dns_multi-5.6.0-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
certbot_dns_multi-5.6.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ ARM64, Linux glibc 2.28+ ARM64 Details for certbot_dns_multi-5.6.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
certbot_dns_multi-5.6.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ x86-64, Linux glibc 2.5+ x86-64 Details for certbot_dns_multi-5.6.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
certbot_dns_multi-5.6.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ ARM64, Linux glibc 2.28+ ARM64 Details for certbot_dns_multi-5.6.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
certbot_dns_multi-5.6.0-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ x86-64, Linux glibc 2.5+ x86-64 Details for certbot_dns_multi-5.6.0-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
certbot_dns_multi-5.6.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ ARM64, Linux glibc 2.17+ ARM64 Details for certbot_dns_multi-5.6.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
certbot_dns_multi-5.6.0-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ x86-64, Linux glibc 2.5+ x86-64 Details for certbot_dns_multi-5.6.0-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Total release size: 288.0 MB

Release files / certbot_dns_multi-5.6.0.tar.gz

Download URL certbot_dns_multi-5.6.0.tar.gz
Size 114.7 kB
Tags Source
SHA-256 checksum
How to use checksums
0167f4bd6e00dbcbac47ae03f8ed1d7017c14b1067d2a06fee29917e67676b72
BLAKE2b-256 checksum
How to use checksums
ca6cee2cf1f9a38b9c00a75cee8023a10e38bfc810761318bd1e22eca3f7a85b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Oct 28, 2026.

Transparency log

Release files / certbot_dns_multi-5.6.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL certbot_dns_multi-5.6.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 34.5 MB
Tags CPython 3.14 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
e6e64fc2364cfb8d297dae01273bc8a6e20db2fd0d4aacac76538d68ca0b4e25
BLAKE2b-256 checksum
How to use checksums
cee2bc0e84c1ee86dbc82ad8112748cdf9facc22f87a7a15fbc9a16cfa1c0aaf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Oct 28, 2026.

Transparency log

Release files / certbot_dns_multi-5.6.0-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL certbot_dns_multi-5.6.0-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 37.5 MB
Tags CPython 3.14 Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
9cb0bcbcf5539a00fc002b18ed8a725c514e01277db60849e1fe6805702541a3
BLAKE2b-256 checksum
How to use checksums
617e76747bbb6895aa7797840f75a3f7b1df22290472b6a33054363c04bcb830
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Oct 28, 2026.

Transparency log

Release files / certbot_dns_multi-5.6.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL certbot_dns_multi-5.6.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 34.5 MB
Tags CPython 3.13 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
a59e588fa02c720e5f40cbd3cd1d9a36e9a89f230302292609d01a6faff40477
BLAKE2b-256 checksum
How to use checksums
e63a89beef436a1cebe43d34611b7c23ad28e23e7d70ff2401db831387996d4f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Oct 28, 2026.

Transparency log

Release files / certbot_dns_multi-5.6.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL certbot_dns_multi-5.6.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 37.5 MB
Tags CPython 3.13 Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
f5bddbe4ed83f9c4ada7917f2de34cc9940df7a8630b47b09fc944ba4117eddb
BLAKE2b-256 checksum
How to use checksums
6c18d3a7fb340018118843c7907dece9f95f9271dbe7c9c94c26b6e778d8e59b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Oct 28, 2026.

Transparency log

Release files / certbot_dns_multi-5.6.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL certbot_dns_multi-5.6.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 34.5 MB
Tags CPython 3.12 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
fd6dc42a101e2fc2dcacfb1332ab5b2c116b62caa13859db14e8529f6114d4f8
BLAKE2b-256 checksum
How to use checksums
c0b36a2dd68882fba61e7447930de008654d27da27d2f8edad042c423afe0d96
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Oct 28, 2026.

Transparency log

Release files / certbot_dns_multi-5.6.0-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL certbot_dns_multi-5.6.0-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 37.5 MB
Tags CPython 3.12 Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
325130fac1f5b4a35736f0c79be17f2289f6f552f5f76a031a4731a5205d7bf3
BLAKE2b-256 checksum
How to use checksums
c779786de11c038aba97e7cd9227bd1875cdfa0c59b37c1c183089c615775823
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Oct 28, 2026.

Transparency log

Release files / certbot_dns_multi-5.6.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL certbot_dns_multi-5.6.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 34.5 MB
Tags CPython 3.11 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
65068c9a93c0f9bbd36065449654b40b1228f204e47a59ca6827532f48ea1a3b
BLAKE2b-256 checksum
How to use checksums
3be0ab3e8c06f33e1ea346168bf8456ec77e9a5879ced15d0e252726af410dfe
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Oct 28, 2026.

Transparency log

Release files / certbot_dns_multi-5.6.0-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL certbot_dns_multi-5.6.0-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 37.5 MB
Tags CPython 3.11 Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
3dc1690ef293e7763a7c9bc978a47557dff2a841293534ab5bfe0b5a5ddb0a93
BLAKE2b-256 checksum
How to use checksums
ff30bbcaaa4cbf520bd59b8591f8658391d9ab3bec0e3f524ddfd9c9273db434
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Oct 28, 2026.

Transparency log

Security for certbot-dns-multi 5.6.0

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.

Full provenance

All 9 files in this release have been uploaded with provenance metadata.

Select from 9 files

Attestation for certbot_dns_multi-5.6.0.tar.gz

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 Oct 28, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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