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.

How to use

1. Install

First, install certbot and the plugin using pip:

pip install certbot certbot-dns-cpanel

2. Configure

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

3. Run

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

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

To create a wildcard certificate *.exemple.com and install it on an apache server, the installer plugin must be specified with the --installer option. You will need to install the apache plugin if it's not already present on your system.

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

The certbot documentation has some additionnal informations about combining authenticator and installer plugins: https://certbot.eff.org/docs/using.html#getting-certificates-and-choosing-plugins

Docker

A docker image based on the certbot/certbot is provided for your convenience:

docker run \
-v /path/to/credentials.ini:/tmp/credentials.ini \
badjware/certbot-dns-cpanel certonly \
--authenticator certbot-dns-cpanel:cpanel \
--certbot-dns-cpanel:panel-credentials /tmp/credentials.ini \
-d exemple.com \
-d www.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.0.tar.gz (4.3 kB view details)

Uploaded Source

Built Distribution

certbot_dns_cpanel-0.2.0-py2.py3-none-any.whl (4.9 kB view details)

Uploaded Python 2 Python 3

File details

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

File metadata

File hashes

Hashes for certbot-dns-cpanel-0.2.0.tar.gz
Algorithm Hash digest
SHA256 7963cf7c09290c599708dad4cb2f2db2f1cb0d9daad3b884b7339437878370e1
MD5 ca6a197af4660a451191385ea1281acf
BLAKE2b-256 92b80015a1979fc63c795d08c22a82b0663e1b52eef111f89bdab20cbe8abb36

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for certbot_dns_cpanel-0.2.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 1473b80bb15920ec40968ca919cba75a42efcc8ea9ef9c6ebd9d82a1c1213bb5
MD5 0bd7b1fe4fea1f27a74a390215f1c007
BLAKE2b-256 d90d4698445e562743b0545572f1d91cb0bb088a3532ad69037b568526e1dda4

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