Skip to main content

Domain registrar agnostic authenticator plugin for certbot

Project description

certbot-dns-local

Domain registrar agnostic authenticator plugin for certbot

An authenticator plugin for certbot to support Let's Encrypt DNS challenges (dns-01) for domains managed by any registrar.

Why use this authenticator plugin?

  • There is no other authenticator plugin for your domain registrar.
  • Some domain registrars do not support fine-grained API permissions. Storing domain registrar credentials in a file on a web server might pose a security risk to all your domains.
  • Migrating from one domain registrar to another does not require a new authenticator plugin.

Installation

  1. Optionally install the netfilter_queue library. On Debian-based systems, run:

    apt install libnetfilter-queue-dev
    

    The library enables support for DNS challenge authentication if UDP port 53 is already occupied.

  2. Plugin installation:

    • If you are using certbot from your distribution repository or from the Python Package Index:
      pip install certbot-dns-local
      
    • If you are using certbot-auto, clone the repository, cd into the folder and run:
      /opt/eff.org/certbot/venv/bin/pip install certbot-dns-local
      
  3. Set up a DNS NS record for _acme-challenge.yourdomain.com pointing to the server which certbot is running on.
    For example:

    _acme-challenge.yourdomain.com. 300 IN NS yourdomain.com.
    

    Such a record has to be created for each subdomain which you want to obtain a certificate for.

Usage

A new certificate can be requested as follows:

certbot certonly -a certbot-dns-local:dns-local -d yourdomain.com -d '*.yourdomain.com'

Renewals will automatically be performed using the same authenticator by certbot.

Behind the curtain

Behind the curtain, the plugin will open a UDP server on port 53 in order to serve the DNS validations. In case binding to port 53 fails because it is already occupied by another application, it will fall back to packet interception using the netfilter_queue library.

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-local-0.1.1.tar.gz (5.7 kB view details)

Uploaded Source

Built Distribution

certbot_dns_local-0.1.1-py3-none-any.whl (11.2 kB view details)

Uploaded Python 3

File details

Details for the file certbot-dns-local-0.1.1.tar.gz.

File metadata

  • Download URL: certbot-dns-local-0.1.1.tar.gz
  • Upload date:
  • Size: 5.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.8.2

File hashes

Hashes for certbot-dns-local-0.1.1.tar.gz
Algorithm Hash digest
SHA256 abc37b008842e7ee2c7f9fe88c2e8da200081772791e6a05c74e7a90e63c1dc5
MD5 6c39a832d2799610ea5daaca29a8d999
BLAKE2b-256 76d89910347b044a43730434ee6c9db4fb44fc39fe1f3d5c952a9511999b2c33

See more details on using hashes here.

File details

Details for the file certbot_dns_local-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: certbot_dns_local-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 11.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.8.2

File hashes

Hashes for certbot_dns_local-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ccd4c98e2bc79b344760fe86715a872df59b62ad9bb7fec4b11fd41ee93407f7
MD5 58a3ff7634e4623280c7914e5cec0be3
BLAKE2b-256 ed4b813920eb9b5aad33b9679a5715eb612df290a188dbe80f2f6277ffbab2c6

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