Skip to main content

Certbot DNS-STACKIT Authenticator Plugin

License GitHub Release Python Version Downloads Code Size Contributors

The Certbot DNS-STACKIT Authenticator Plugin facilitates the procurement of SSL/TLS certificates from Let's Encrypt utilizing the DNS-01 challenge methodology in conjunction with STACKIT as the designated DNS service provider. This document elucidates the procedural steps for the installation and operational utilization of this plugin.

Installation

To initialize the Certbot DNS-STACKIT Authenticator Plugin, deploy the following pip command:

pip install certbot-dns-stackit

Usage

Upon successful integration of the plugin, it becomes viable to employ it with Certbot for the retrieval of SSL/TLS certificates. The subsequent section delineates the pertinent arguments and their respective examples:

Arguments

Argument Example Value Description
--authenticator dns-stackit Engages the STACKIT authenticator mechanism. This must be configured as dns-stackit. (Mandatory)
--dns-stackit-project-id '8a4c68b1-586a-4534-aa0c-9f8c12334a76' Sets the STACKIT project id if the service account authentication is used. (Recommended)
--dns-stackit-service-account ./service-account.pem Denotes the directory path to the STACKIT service account file. (Recommended)
--dns-stackit-credentials ./credentials.ini Denotes the directory path to the credentials file for STACKIT DNS. This document must encapsulate the dns_stackit_auth_token and dns_stackit_project_id variables.
--dns-stackit-propagation-seconds 900 Configures the delay prior to initiating the DNS record query. A 900-second interval (equivalent to 15 minutes) is recommended. (Default: 900)
Either the --dns-stackit-credentials flag or the --dns-stackit-service-account and --dns-stackit-project-id flags are mandatory.

Example

Below is a structured example detailing the application of Certbot in conjunction with the DNS-STACKIT Authenticator Plugin to retrieve a certificate:

certbot certonly \
  --authenticator dns-stackit \
  --dns-stackit-credentials ./credentials.ini \
  --dns-stackit-propagation-seconds 900 \
  --server https://acme-v02.api.letsencrypt.org/directory \
  --agree-tos \
  --rsa-key-size 4096 \
  -d 'example.runs.onstackit.cloud' \
  -d '*.example.runs.onstackit.cloud'

For this example, example.runs.onstackit.cloud represents the designated domain (zone) for certificate procurement.

Example of credentials.ini

To operationalize the plugin, it's imperative to curate a credentials.ini file encompassing your STACKIT DNS credentials:

dns_stackit_auth_token = "your_token_here"
dns_stackit_project_id = "your_project_id_here"

It's crucial to replace "your_token_here" and "your_project_id_here" placeholders with the genuine STACKIT authentication token and project ID. The token's associated service account necessitates project membership privileges for record set creation.

Authentication via STACKIT service account

The service account allows the user to use a long lived authentication which generates short lived tokens. To setup a service account refer to the service account documentation. It's important to also set the --dns-stackit-project-id flag to the corresponding STACKIT project when using a service account.

Test Procedures

  • Unit Testing:

    make test
    
  • Linting:

    make lint
    

Contribute

See CONTRIBUTING.md

Metadata

Release files for certbot-dns-stackit 0.1.9

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for certbot-dns-stackit 0.1.9
File Size Uploaded
certbot_dns_stackit-0.1.9.tar.gz 16.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for certbot-dns-stackit 0.1.9
File Interpreter ABI Platform
certbot_dns_stackit-0.1.9-py3-none-any.whl Python 3 none any Details

Total release size: 31.7 kB

Release files / certbot_dns_stackit-0.1.9.tar.gz

Download URL certbot_dns_stackit-0.1.9.tar.gz
Size 16.4 kB
Tags Source
SHA-256 checksum
How to use checksums
399a4e9dbe6c222face8a5b552b35b290f99fc110374f53cf87ad71818493651
BLAKE2b-256 checksum
How to use checksums
8ad685543826d4945c6a11f51f9955cfc08027d82ef311ed239193dee75cd357
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.8

Release files / certbot_dns_stackit-0.1.9-py3-none-any.whl

Download URL certbot_dns_stackit-0.1.9-py3-none-any.whl
Size 15.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
11a54e97cd211589fd91622066625a1bf6dfdc58c1de782e370dc347a6f76b56
BLAKE2b-256 checksum
How to use checksums
64f13e196553d86ddb025212c0f2bb3fe9c0dac5eed706e2c652e70e4b446d29
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.8

Release history Release notifications | RSS feed

This release

0.1.9 This release

2 release files

0.1.8

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page