Skip to content
certbot manual auth hook for DNS-01 with namecheap
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


certbot manual auth hook for DNS-01 with namecheap


current limitations

  • SLD/TLD extraction is extremely naive and does not support multipart tlds
  • no cleanup hook, just an auth hook
  • none of the api calls are paginated yet but this probably doesn't matter bc the hook works based on an env var
  • no error checking or handling of any sort
  • was going to be a more robust wrapper of certbot that loops over all your domains, but heck it
  • lol everything is hardcoded so make sure to put in your own username / api key

example usage if you've got existing certs

edit existing renewal conf, e.g. /etc/letsencrypt/renewal/ and make sure authenticator = manual, pref_challs = dns-01,, manual_auth_hook = /path/to/auth, manual_public_ip_logging_ok = True

account = 1234567890abcdef1234567890abcdef
authenticator = manual
server =
pref_challs = dns-01,
manual_auth_hook = /home/trwnh/bin/https
manual_public_ip_logging_ok = True

example usage if you're making a new cert

sudo certbot certonly \
     --preferred-challenges=dns \
     --manual \
     --manual-auth-hook=/path/to/auth \
     --agree-tos \


you should be able to run certbot renew after that and the settings will be remembered? idk


pay me for emotional damages caused by namecheap's api:

interact with me elsewhere:

You can’t perform that action at this time.