Python scripts (hook) to automate obtaining Let's Encrypt certificates, using Certbot DNS-01 challenge validation for domains DNS hosted on NameSilo.
- For users of Fedora & RHEL, you can install this COPR package, packaged by @cyqsimon.
- Feel free to package this repo for other OSes; then please submit a PR to reference it here.
The scripts use the tldextract and untangle libraries, if not already installed on your system:
pip install tldextract untangle
Download the latest release archive and expand it in the desired directory.
Add your NameSilo API key
to the top of the config.py
file:
# Get your API Key from: https://www.namesilo.com/account/api-manager
apikey = "YOUR_API_KEY"
Alternatively, the API key can be set in the NAMESILO_API
environment variable.
To issue or renew a certificate using the hook scripts, try something like:
certbot certonly --manual --email [email protected] \ --agree-tos --manual-public-ip-logging-ok \ --preferred-challenges=dns \ --manual-auth-hook /path/to/authenticator.py \ --manual-cleanup-hook /path/to/cleanup.py \ -d *.example.com -d example.com
Please note that NameSilo DNS propagation takes up to 15 minutes. The scripts will wait 25 minutes before completing, just to be safe.