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

Uploaded Source

Built Distributions

certbot_dns_multi-4.18.0.dev1-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.dev1-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl (43.3 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.dev1-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.dev1-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.dev1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl (43.2 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.dev1-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.dev1.tar.gz.

File metadata

File hashes

Hashes for certbot_dns_multi-4.18.0.dev1.tar.gz
Algorithm Hash digest
SHA256 107f679fa3df5c14092beda0e7ec7fbfae28341020a298356a4d4ff362a4ffb2
MD5 89a18838fe0cd84397aaf4488c2016f4
BLAKE2b-256 f06b15759dbfc8ce8595038e8124c9397be10385a90e843a6c9146ce28ab58c8

See more details on using hashes here.

File details

Details for the file certbot_dns_multi-4.18.0.dev1-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.dev1-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d764c700ee4dd45a38447e9f90cfa74a6e2090101face15d86d59c3031cc0d10
MD5 6dbad78bdedbe23d42780d6f80655f17
BLAKE2b-256 914dfb09c39bba786e157c9b86ac700b65f09635edf4eb91e66ee197281ddd6f

See more details on using hashes here.

File details

Details for the file certbot_dns_multi-4.18.0.dev1-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.dev1-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 56761d3752b9567a260eda377e4eb36656e94564c61cf2584d0ef16bc539b7df
MD5 038b50593cd421fb7d76740b84646bab
BLAKE2b-256 292a0afc9f885924e041a1c4c8294e921f84cad8878de5883ae9c0638ceda435

See more details on using hashes here.

File details

Details for the file certbot_dns_multi-4.18.0.dev1-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.dev1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c5763fa546b4fbfcb6dbea38f93b9a5e6b48ef05210b9e3ab8c0db3a0f0b72eb
MD5 9a62d9615e917aba63fb3a16db285814
BLAKE2b-256 748af792b366a5633f04d22b222af8d004827fc1f98ac80aa67f1486aa296258

See more details on using hashes here.

File details

Details for the file certbot_dns_multi-4.18.0.dev1-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.dev1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0dce6c9c703ef3bf0b734dcb295ccac2a7f931e0d5c6bbc738ceae0ec8623c0e
MD5 4acf2deb851e63fc57a24451811d9483
BLAKE2b-256 1b3e5bd1d3ea7cb37b3b60bd7077e46b198307a6bcab82141d4f0f2533ad08d7

See more details on using hashes here.

File details

Details for the file certbot_dns_multi-4.18.0.dev1-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.dev1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 2d325ae6c34e083ad7c32f6a7014712e6ead97835731194e89782daea5373a6f
MD5 12202c971d7df4780228ead1b8275628
BLAKE2b-256 cde3cc4d9cddcc14abc13482ff8c7904c470e8b3b477d7d6d454e44addf9a04b

See more details on using hashes here.

File details

Details for the file certbot_dns_multi-4.18.0.dev1-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.dev1-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1955bcbdd3d61c7f3bbe76d1099c3663089c3e5bc343697835848a9fde9ba6e0
MD5 1cfcbdb994a9a6ecf25ea4590ff8ee9b
BLAKE2b-256 98b941e2c37e948ba273a85b09cc93fb203bd44868a9aa38d585dc46d5395e74

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