Skip to main content

Contabo DNS Authenticator plugin for Certbot

Project description

Certbot Contabo authenticator plugin

This is a Certbot plugin to automate DNS-01 challenges for domains whose DNS is managed by Contabo. It works by interacting with the Contabo web interface through web scraping, as Contabo does not currently offer an official API for DNS management.

Important

  • Web Scraping: This plugin relies on web scraping Contabo's website. If Contabo changes its website structure, this plugin may break until it's updated. The plugin is designed based on their current interface, which has been relatively stable for years.

Installation

You can install the plugin using pip:

pip install certbot-dns-contabo

Usage

Create a credentials file like this, for example using nano /etc/letsencrypt/contabo.ini:

dns_contabo_email = your-contabo-email@example.com
dns_contabo_password = your-contabo-password
dns_contabo_2fa_secret = your-contabo-2fa-secret (optional, only if you have 2FA enabled; see below on how to get this!)

Since this file contains sensitive credentials, protect it by restricting its permissions:

sudo chmod 600  /etc/letsencrypt/contabo.ini

(Replace /etc/letsencrypt/contabo.ini if you saved it in a different location.)

To request a certificate, use Certbot with the dns-contabo authenticator.

Example for example.com and *.example.com (wildcard):

sudo certbot certonly \
  --authenticator dns-contabo \
  --dns-contabo-credentials /etc/letsencrypt/contabo.ini \
  -d example.com \
  -d "*.example.com" 

Disclaimer

I am not affiliated with Contabo in any way. This plugin can stop working at any time if Contabo changes their website, which could even lead to stuff breaking on your Contabo account.

Getting the 2FA secret

If you have 2FA enabled on your Contabo account, you need to provide the 2FA secret in the credentials file. You can get the secret my navigating to your Contabo account settings (https://my.contabo.com/account/details), and scrolling down to "2-Faktor-Authentifizierung neu setzen" (at least in German, the English version should be similar).

This will show you a QR code and a secret key. Save the secret key in your credentials file as dns_contabo_2fa_secret.

Very important: You will have to add the new 2FA-QR-code in your authenticator app again!

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_contabo-0.2.0.tar.gz (8.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

certbot_dns_contabo-0.2.0-py3-none-any.whl (8.6 kB view details)

Uploaded Python 3

File details

Details for the file certbot_dns_contabo-0.2.0.tar.gz.

File metadata

  • Download URL: certbot_dns_contabo-0.2.0.tar.gz
  • Upload date:
  • Size: 8.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.8.10

File hashes

Hashes for certbot_dns_contabo-0.2.0.tar.gz
Algorithm Hash digest
SHA256 c9b90f99978fe02a8fcaa75ceb020e735e4ef6cdb2c39e2e17f5c7e71a1b37a3
MD5 8f0411905f8b74d377a79ca1a5d3d35c
BLAKE2b-256 68df3619b191dc3abf82daedcaaec6f65acc2b1e96e01c65585da997b0278192

See more details on using hashes here.

File details

Details for the file certbot_dns_contabo-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for certbot_dns_contabo-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 22ba369ba2ea6d0aefbee118518132177063ee4da390eaf0d59c4889cdb43b0a
MD5 50d0f74e569154278cb394810d747c26
BLAKE2b-256 a47e4cbefcf421cc6caa42d06a28f5b38e276608e5edb170afb7c59840f07db8

See more details on using hashes here.

Supported by

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