Automatically generate/renew Let's Encrypt certificates with Certbot on NameSilo DNS https://github.com/ethauvin/namesilo-letsencrypt
Find a file
2020-03-14 20:48:33 -07:00
.idea Updated copyright. 2020-03-14 20:48:33 -07:00
.editorconfig Initial commit. 2019-04-29 20:14:29 -07:00
.gitattributes Initial commit. 2019-04-29 20:14:29 -07:00
.gitignore Updated copyright. 2020-03-14 20:48:33 -07:00
authenticator.py Updated copyright. 2020-03-14 20:48:33 -07:00
cleanup.py Updated copyright. 2020-03-14 20:48:33 -07:00
config.py Added configurable wait period. 2020-03-03 18:48:47 -08:00
LICENSE.txt Updated copyright. 2020-03-14 20:48:33 -07:00
README.md Updated wait time to 20 minutes. 2020-03-03 18:53:35 -08:00

NameSilo Let's Encrypt

License (3-Clause BSD) Python 3.8

Python scripts (hook) to automate obtaining Let's Encrypt certificates, using Certbot DNS-01 challenge validation for domains DNS hosted on NameSilo.

Setup

The scripts use the untangle library, if not already installed on your system:

pip install untangle

Download the latest release archive and expand it in the desired directory.

Configuration

Add your NameSilo API key to the top of the config.py file:

# Get your API Key from: https://www.namesilo.com/account_api.php
apikey = "YOUR_API_KEY"

Alternatively, the API key can be set in the NAMESILO_API environment variable.

Using with Certbot

To issue or renew a certificate using the hook scripts, try something like:

certbot certonly --manual --email you@example.com \
--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 20 minutes before completing, just to be safe.