Skip to main content

Constellix DNS Authenticator plugin for Certbot

Project description

certbot-dns-constellix Documentation

The certbot-dns-constellix plugin is used to automate the process of a dns-01 challenge in Certbot to allow the requesting and renewal of SSL certificates through the Constellix DNS API.

This is done through the process of adding and removing TXT records to the appropriate domain in your Constellix DNS account.

There are two different methods of installing, configuring and using the plugin depending on if you're using certbot installed through snapd or through your operating system's package manager.

Certbot Installed using Snapd

If you installed certbot using snapd, do the following to install and configure the plugin:

Installation

Run the following commands to install the plugin with snapd.

sudo snap install certbot-dns-constellix
sudo snap set certbot trust-plugin-with-root=ok
sudo snap connect certbot:plugin certbot-dns-constellix

Verify that the plugin is installed by running certbot plugins. You should see the dns-constellix plugin in the list.

Configuration

The plugin requires an API key and secret key for the Constellix DNS API. The key will need to have permissions to add and remove records on the domain you want to issue certificates for.

These will need to be added to a file, eg. constellix.ini in the following format:

dns_constellix_apikey=5fb4e76f-ac91-43e5-f982458bc595
dns_constellix_secretkey=47d99fd0-32e7-4e07-85b46d08e70b
dns_constellix_endpoint=https://api.dns.constellix.com/v1

Caution

You should secure this file from any unauthorised access. Anyone with access to these credentials and this file will be able to add and remove records from your domain. You should configure the file to not be readable by any other users on the system

Usage

Once the plugin is installed and configured it can be used by specifying the plugin in the certbot command and the location of the credentials file.

certbot certonly \
    --authenticator=dns-constellix \
    --dns-constellix-credentials=~./constellix.ini \
    -d example.com

For more options please check the certbot documentation.

Certbot Installed using OS Package Manager/Python

If you installed certbot using your operating system's package manager (apt, yum, etc.) or directly with Python, you can install it using these instructions.

Installation

Run the following commands to install the plugin using pip.

sudo python3 -m pip install certbot-dns-constellix

Verify that the plugin is installed by running certbot plugins. You should see the dns-constellix plugin in the list.

Configuration

The plugin requires an API key and secret key for the Constellix DNS API. The key will need to have permissions to add and remove records on the domain you want to issue certificates for.

These will need to be added to a file, eg. constellix.ini in the following format:

certbot-dns-constellix:dns_constellix_apikey=5fb4e76f-ac91-43e5-f982458bc595
certbot-dns-constellix:dns_constellix_secretkey=47d99fd0-32e7-4e07-85b46d08e70b
certbot-dns-constellix:dns_constellix_endpoint=https://api.dns.constellix.com/v1

The extra certbot-dns-constellix: is required due to how older versions of Certbot load plugins.

Caution

You should secure this file from any unauthorised access. Anyone with access to these credentials and this file will be able to add and remove records from your domain. You should configure the file to not be readable by any other users on the system

Usage

Once the plugin is installed and configured it can be used by specifying the plugin in the certbot command and the location of the credentials file.

certbot certonly \
    --authenticator=certbot-dns-constellix:dns-constellix \
    --certbot-dns-constellix:dns-constellix-credentials=~./constellix.ini \
    -d example.com

The extra certbot-dns-constellix: is required due to how older versions of Certbot load plugins.

For more options please check the certbot documentation.

License

Copyright 2020 Constellix, a division of Tiggee LLC.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License.

You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

See the License for the specific language governing permissions and limitations under the License.

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_constellix-0.3.0.tar.gz (9.4 kB view details)

Uploaded Source

Built Distribution

certbot_dns_constellix-0.3.0-py2.py3-none-any.whl (9.9 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file certbot_dns_constellix-0.3.0.tar.gz.

File metadata

File hashes

Hashes for certbot_dns_constellix-0.3.0.tar.gz
Algorithm Hash digest
SHA256 fefb5ab3237ec3ac03b222d1696c6c688c041094809e724d7bcc8e41de125dc3
MD5 f6604e6d5207997e6be00a61caa4e3fc
BLAKE2b-256 efa4bb29ecb94e4d8163438e51f200b25b0f2ef47ca9ddf88d9a49872deb63c4

See more details on using hashes here.

File details

Details for the file certbot_dns_constellix-0.3.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for certbot_dns_constellix-0.3.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 4628794f412701647beb968336efdde1d0e259a5760376384dccbbae38edd0c8
MD5 09485432be8f13604ecaa8200bf02916
BLAKE2b-256 c5996de822dc0613b6b1c3c0023a8bb73f70b9f549aa5e2d9ee93674a5952d91

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