Skip to main content

certbot plugin to allow acme dns-01 authentication of a name managed in cPanel.

Project description

certbot-dns-cpanel

Plugin to allow acme dns-01 authentication of a name managed in cPanel. Useful for automating and creating a Let's Encrypt certificate (wildcard or not) for a service with a name managed by cPanel, but installed on a server not managed in cPanel.

Named Arguments

Argument Description
--certbot-dns-cpanel:cpanel-credentials <file> cPanel credentials INI file (required)
--certbot-dns-cpanel:cpanel-propagation-seconds <seconds> The number of seconds to wait for DNS to propagate before asking the ACME server to verify the DNS record (Default: 30)

Install

pip install certbot-dns-cpanel

Credentials

Download the file credentials.ini.exemple and rename it to credentials.ini. Edit it to set your cPanel url, username and password.

# The url cPanel url
# include the scheme and the port number (usually 2083 for https)
certbot_dns_cpanel:cpanel_url = https://cpanel.exemple.com:2083

# The cPanel username
certbot_dns_cpanel:cpanel_username = user

# The cPanel password
certbot_dns_cpanel:cpanel_password = hunter2

Exemple

You can now run certbot using the plugin and feeding the credentials file.
For exemple, to get a wildcard certificate for *.exemple.com and exemple.com:

certbot certonly \
--authenticator certbot-dns-cpanel:cpanel \
--certbot-dns-cpanel:cpanel-credentials /path/to/credentials.ini \
-d 'exemple.com' \
-d '*.exemple.com'

You can also specify a installer plugin with the --installer option.

certbot run \
--authenticator certbot-dns-cpanel:cpanel \
--installer apache \
--certbot-dns-cpanel:cpanel-credentials /path/to/credentials.ini \
-d 'exemple.com' \
-d '*.exemple.com'

Docker

A docker image badjware/certbot-dns-cpanel, based on certbot/certbot is provided for your convenience:

docker run -it \
-v /path/to/credentials.ini:/tmp/credentials.ini \
badjware/certbot-dns-cpanel \
certonly \
--authenticator certbot-dns-cpanel:cpanel \
--certbot-dns-cpanel:cpanel-credentials /tmp/credentials.ini \
-d 'exemple.com' \
-d '*.exemple.com'

Additional documentation

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

certbot-dns-cpanel-0.2.2.tar.gz (4.5 kB view details)

Uploaded Source

Built Distribution

certbot_dns_cpanel-0.2.2-py2.py3-none-any.whl (8.5 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file certbot-dns-cpanel-0.2.2.tar.gz.

File metadata

  • Download URL: certbot-dns-cpanel-0.2.2.tar.gz
  • Upload date:
  • Size: 4.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.44.1 CPython/3.8.2

File hashes

Hashes for certbot-dns-cpanel-0.2.2.tar.gz
Algorithm Hash digest
SHA256 12b4f9863e572a3e02affb9a3f0a6ca663d8b88664237c785fea0662eee21471
MD5 451349c8b984991fb56edf14afc92734
BLAKE2b-256 093a89bfdf1908b195bbca42bd9f82e8df7870e9a32451ff92a36526c8f4d636

See more details on using hashes here.

File details

Details for the file certbot_dns_cpanel-0.2.2-py2.py3-none-any.whl.

File metadata

  • Download URL: certbot_dns_cpanel-0.2.2-py2.py3-none-any.whl
  • Upload date:
  • Size: 8.5 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.44.1 CPython/3.8.2

File hashes

Hashes for certbot_dns_cpanel-0.2.2-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 be418293c50f8ea417a0dec7a93e8cccd847d0f34283c3fcf80b5de2b4ebc4ed
MD5 ff3480f23eafdbe371e9fb054dace868
BLAKE2b-256 c87b130c158ff800992da345ddb927b532e7ec3765f92effb1f543accccd0f71

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page