This is an "auth hook" for Certbot that enables you to perform DNS-01 authorization via Vultr's DNS service.
All it requires is that you have your Vultr API key, and that you have set your domain up as a zone in Vultr.
These instructions assume you are on a shell as the root user.
- Make sure you have 
pythonandpython-requestsinstalled, in addition to Certbot. - Download 
vultr-dns.pysomewhere onto your server. In this example, we will use/etc/letsencrypt/vultr-dns.pyas the location. chmod 0700 /etc/letsencrypt/vultr-dns.py && chown root:root /etc/letsencrypt/vultr-dns.py- Modify the configuration section of 
/etc/letsencrypt/vultr-dns.py: 
# Configure here
VULTR_API_KEY = "put your api key here"
VULTR_BIND_DELAY = 30- Try issue a certificate now. With the default configuration, there will be a 30 second delay per domain on the certificate.
 
certbot certonly --manual \
--manual-auth-hook "/etc/letsencrypt/vultr-dns.py create" \
--manual-cleanup-hook "/etc/letsencrypt/vultr-dns.py delete" \
-d "*.my.domain.example.com" -d "*.example.com" \
--preferred-challenges dns-01- If this succeeds, so should automatic renewal.