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.18.0.dev0.tar.gz (57.2 kB view details)

Uploaded Source

Built Distributions

certbot_dns_multi-4.18.0.dev0-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl (43.2 MB view details)

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

certbot_dns_multi-4.18.0.dev0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl (43.2 MB view details)

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

certbot_dns_multi-4.18.0.dev0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl (43.2 MB view details)

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

certbot_dns_multi-4.18.0.dev0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl (43.2 MB view details)

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

certbot_dns_multi-4.18.0.dev0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl (43.3 MB view details)

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

certbot_dns_multi-4.18.0.dev0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl (43.2 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.18.0.dev0.tar.gz.

File metadata

File hashes

Hashes for certbot_dns_multi-4.18.0.dev0.tar.gz
Algorithm Hash digest
SHA256 9d026be342caf0aa05e22cd8d89e3232f569af8e311db7893a49be189f6e0d58
MD5 958879d19abe9133b7d8b63ba8e29335
BLAKE2b-256 e92ce88a3c582392fc35666d6fea208fc2bb27b0969b3cb6d45d9f3b931ac1c1

See more details on using hashes here.

File details

Details for the file certbot_dns_multi-4.18.0.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.18.0.dev0-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 355755513a8e6f47f1933622d31fa12c6356e81d8b504b82de9acf605f1ddfaa
MD5 7d82adbf2d9267925e3e2afd8e01ec54
BLAKE2b-256 0f68786365b8c56b0a20ae3f7cc9dcf53b8d85b0163b0ae6cc1394fa26b49804

See more details on using hashes here.

File details

Details for the file certbot_dns_multi-4.18.0.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.18.0.dev0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9dd90a1dc45f174879690eba7870180896f1fde92018ad479857226fe18aeeca
MD5 87b3d56b38b5a25380dd12b95a62f9aa
BLAKE2b-256 9c1a665f4f226148a035e9985a47631cc2331a6252b90f7a7cc53fd06e3003e2

See more details on using hashes here.

File details

Details for the file certbot_dns_multi-4.18.0.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.18.0.dev0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 bc8b8258ea11a9e0e5f0344ed6a3cd3e14848b67cc3b53403e1bf91249cf7f1f
MD5 e6a7f8d15e83d6872b0ab9cbc418ebc4
BLAKE2b-256 17bd487ba6a74ec26b635117580b00ed30c3e6994452742275d12571120b48c8

See more details on using hashes here.

File details

Details for the file certbot_dns_multi-4.18.0.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.18.0.dev0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 5e626889469a2cbdbf7e7dc45e7635198b0b896c275da339f8dd3a7a0d830b4d
MD5 445b3cdd87efd447eb45d676ba57da44
BLAKE2b-256 de4ce30d2acbf3b01f10b02f83ad3b935abac5ec52790a55d092905983c6599d

See more details on using hashes here.

File details

Details for the file certbot_dns_multi-4.18.0.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.18.0.dev0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 6255275ac8151f0f22f8da7ffc3f90adcbc5fd39ba2cbebfa73c5f10e67d8807
MD5 2246e6095b53371ae16378f2636428b0
BLAKE2b-256 a400f62bd69438b232c1547fc782b8e8fb0930428c41e80b463753c97ba09c38

See more details on using hashes here.

File details

Details for the file certbot_dns_multi-4.18.0.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.18.0.dev0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 66d20deda53d2c7ab0c126b78f564b0fa318644da7b47a005ab0fa7014165054
MD5 b59e3fb531f2c6a2dd37171cd1c7794f
BLAKE2b-256 2415eec9aa08a977d76607149462b28a41f82be8d40af9cf55f48da633b5b084

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