Skip to main content

Certbot DNS plugin supporting multiple providers, using github.com/go-acme/lego

Project description

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:

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.

  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.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

certbot_dns_multi-4.16.1.dev0.tar.gz (55.1 kB view details)

Uploaded Source

Built Distributions

certbot_dns_multi-4.16.1.dev0-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl (38.7 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.28+ x86-64 manylinux: glibc 2.5+ x86-64

certbot_dns_multi-4.16.1.dev0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl (38.7 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.28+ x86-64 manylinux: glibc 2.5+ x86-64

certbot_dns_multi-4.16.1.dev0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl (38.7 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.28+ x86-64 manylinux: glibc 2.5+ x86-64

certbot_dns_multi-4.16.1.dev0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl (38.7 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.28+ x86-64 manylinux: glibc 2.5+ x86-64

certbot_dns_multi-4.16.1.dev0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl (38.7 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.28+ x86-64 manylinux: glibc 2.5+ x86-64

certbot_dns_multi-4.16.1.dev0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl (38.7 MB view details)

Uploaded CPython 3.7m manylinux: glibc 2.28+ x86-64 manylinux: glibc 2.5+ x86-64

File details

Details for the file certbot_dns_multi-4.16.1.dev0.tar.gz.

File metadata

File hashes

Hashes for certbot_dns_multi-4.16.1.dev0.tar.gz
Algorithm Hash digest
SHA256 0a530a65038ae5e990e51ce80000eefc296b3ade779799a9a6a7b1d488eab99a
MD5 aea68ac9aa4809d59026eecb8b9e9460
BLAKE2b-256 3105a4d602e036cb35ab2e04ea05f89db1f33a6df8ef3dc1aeb49d747c23ec3c

See more details on using hashes here.

File details

Details for the file certbot_dns_multi-4.16.1.dev0-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for certbot_dns_multi-4.16.1.dev0-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 27c721722bb21e3a770373e5cf7f99d2b26a66f75e596076acf1dbb175272fc1
MD5 bc533fc4a238abaef6f0a616f1d3b84e
BLAKE2b-256 7ddb2e7a9d307d3eb49b92d886bf21304c2b91b3888e5f91945a265f485e051b

See more details on using hashes here.

File details

Details for the file certbot_dns_multi-4.16.1.dev0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for certbot_dns_multi-4.16.1.dev0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 4fa8dc154baaaa6b83194a503c52620af07ee2ca3f9cc5c30213b8043b1a4500
MD5 7af63c647c099634bb0f8e79b058988a
BLAKE2b-256 e452a8d0ae9e49074bf18353b8968d8e25722dcacfaadc616bd24df11674aa28

See more details on using hashes here.

File details

Details for the file certbot_dns_multi-4.16.1.dev0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for certbot_dns_multi-4.16.1.dev0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ddcac8a732be1e7ddc4e5ac69ea52c4f6ba00fbef3f6b171328c45378e5568b1
MD5 812ab1a16e1f81d9f5d2008eecc728df
BLAKE2b-256 21b25fe843fa64c11b52b8b3f7090a7f290200ca029a005a675724e76726f307

See more details on using hashes here.

File details

Details for the file certbot_dns_multi-4.16.1.dev0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for certbot_dns_multi-4.16.1.dev0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 20afba98ee81dfce7a1babff96b563cf6425e1a6f9a06bd81a97ed684a883e38
MD5 ded4de5440829256e94f885694f0514e
BLAKE2b-256 bb1d2f43b67ddd10be290da8e3d7cae15fa8d4bc8dc6be5fb73f2c2bbfd44e55

See more details on using hashes here.

File details

Details for the file certbot_dns_multi-4.16.1.dev0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for certbot_dns_multi-4.16.1.dev0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e5c4bf61c508bdbdc965a1a56e3e89377ff38753ff984be4a2a10c38f1df560d
MD5 a6fb76e0eb260184e77ec33ac16afa59
BLAKE2b-256 5d27b48b56bca31982499b14ed80d8a8f80fe430e00c5856115e864d1cd1d8f7

See more details on using hashes here.

File details

Details for the file certbot_dns_multi-4.16.1.dev0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for certbot_dns_multi-4.16.1.dev0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d6bac457acd24059042d00cc6ffa5cfeea0b8bed0c8c8898eddfee59d0cc7830
MD5 13c2327902d7a02f54d5df5cd06fd8e9
BLAKE2b-256 fc841863f900c544730e10065915e5b7226fd9186aca72863a43bb13048bd7a4

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page