-
-
Notifications
You must be signed in to change notification settings - Fork 717
Examples for DNS 01 hooks
Felicson edited this page Mar 14, 2018
·
98 revisions
Here are some examples on how to implement DNS-01 challenge hooks:
- Google Cloud (bash script) - DNS & HTTPS load balancers
- CloudFlare (Python script)
- AWS Route 53 (ruby script) - Updated with multiple hosted zone support, less dependencies, and checks on DNS propagation
- AWS Route 53 (python script) - Automatically identifies correct Route 53 zone(s), no need to supply the Zone Id
- AWS Route 53 (python3 script)
- AWS Route 53 (bash script employing cli53) - Automatically identifies correct Route 53 zone(s), no need to supply the Zone Id
- Godaddy DNS (python3 script)
- nsupdate (bash script)
- letsencrypt_acme_dns-01_challenge_hook (bash script) - hook script using nsupdate to publish challenge in bind, verifies the published challenge has propagated to all name servers (GNU userland only)
- inwx-acme (bash script)
-
lexicon - (bash script) - Setup instructions - Supports the following DNS Providers:
- AWS Route 53
- Cloudflare
- CloudXNS
- DigitalOcean
- DNSimple
- DNSMadeEasy
- DNSPark
- DNSPod
- EasyDNS
- Gandi
- LuaDNS
- Memset
- NameSilo
- NS1
- Pointhq
- Rage4
- TransIP
- Vultr
- DNSMadeEasy (Python script)
- Mythic Beasts (Bash and Perl scripts)
- pdns-acme for use with PDNS Manager(Bash script)
- email-notify-hook (bash script) - semi-automated email notifier for use with DNS providers that do not provide an API or dynamic DNS support
- manual-dns-hook (ruby) - interactive hook for DNS providers that do not provide an API or dynamic DNS support
- Namecheap (bash script)
- PowerDNS (bash script)
- PowerDNS API (bash script)
- OVH API (python) - How-To (in french)
- TransIP API(php)
- Certzure (Java) - hook for Azure DNS
- iwantmyname (Ruby) - hook for iwantmyname
- dehydrated-all-inkl-hook (bash script) - hook for ALL-INKL
- Memset DNS API (python) - hook for MEMSET
- Manual update (bash script) - hook for updating DNS zone by hand (non-automated way)
- Advanced manual update (bash script) - hook for updating DNS zone by hand (non-automated way)
- dnspython-hook (python) - uses the dnspython API
- Azure DNS (bash script) - uses Azure CLI to manage the DNS records
- Reg.ru DNS (ruby script) - uses REG.API 2 for Ruby
- Vultr DNS - Bash hook script using curl and jq to manage DNS records
- ClouDNS - Bash hook script using curl and jq to manage DNS records at ClouDNS
- ClouDNS - Bash hook script using curl and jq to manage DNS records at ClouDNS, with tools, sub-user support, chain-hook support and clouddomain support
- linode-hook (shell script) - Shell hook script using curl and jq to manage DNS records on Linode
- Servercow (bash script) - Bash script with curl to create challenge responses
- FreeIPA hook(python script) - Python script to manage FreeIPA DNS records.
- Hetzner Online - Domain Robot (python script) - Hook for updating DNS records at Hetzner
- Loopia API (bash script) - bash script to update DNS records on Loopia for root and wildcard certificates.
- PDD Yandex API for golang - PDD Yandex DNS manage.