Skip to content

Certbot DNS-plugin (certbot-dns-gigahost) ​

certbot-dns-gigahost er en plugin for Certbot som fullfører Let's Encrypt DNS-01-utfordringer via Gigahost DNS-API, slik at du kan få wildcard-sertifikater (*.example.com) for soner hos Gigahost. Den legger til en TXT-post på _acme-challenge.<domain>, venter på at den propagerer, og fjerner den etter valideringen.

Kilde / pakke: pypi.org/project/certbot-dns-gigahost

Installasjon ​

bash
pip install certbot-dns-gigahost

Påloggingsfil ​

Pluginen autentiserer med en API-nøkkel. Opprett en under API-nøkler med lese- og skrivetilgang til DNS for sonene du vil ha sertifikater for, og opprett deretter ~/.secrets/certbot/gigahost.ini:

ini
dns_gigahost_api_token = flux_live_xxxxxxxxxxxxxxxxxxxxxxxx

Alle som kan lese filen, kan bruke nøkkelen, så lås den ned. Certbot advarer ved hver kjøring så lenge andre brukere kan lese den:

bash
chmod 600 ~/.secrets/certbot/gigahost.ini

Plugin-argumenter ​

ArgumentPåkrevdStandardBeskrivelse
--dns-gigahost-credentialsjaingenSti til .ini-filen.
--dns-gigahost-propagation-secondsnei120Hvor lenge det skal ventes på DNS-propagering før Let's Encrypt blir bedt om å validere.

Utsted et vanlig sertifikat ​

bash
certbot certonly \
  --authenticator dns-gigahost \
  --dns-gigahost-credentials ~/.secrets/certbot/gigahost.ini \
  -d example.com \
  -d www.example.com

Utsted et wildcard-sertifikat ​

bash
certbot certonly \
  --authenticator dns-gigahost \
  --dns-gigahost-credentials ~/.secrets/certbot/gigahost.ini \
  -d example.com \
  -d "*.example.com"

Docker ​

bash
docker run --rm \
  -v /etc/letsencrypt:/etc/letsencrypt \
  -v /var/lib/letsencrypt:/var/lib/letsencrypt \
  -v $(pwd)/secrets:/secrets:ro \
  certbot/certbot:latest \
  certonly \
  --non-interactive --agree-tos --email [email protected] \
  --authenticator dns-gigahost \
  --dns-gigahost-credentials /secrets/gigahost.ini \
  -d example.com \
  -d "*.example.com"

Det offisielle Certbot-imaget har ikke pluginen. Installer den i containeren med pip install certbot-dns-gigahost, eller bruk et image som har den.

Fornyelser ​

Fornying trenger ingen flagg; Certbot lagrer plugin-valget i /etc/letsencrypt/renewal/<domain>.conf:

bash
certbot renew

Ta en testkjøring før du setter opp en tidsplan:

bash
certbot renew --dry-run

Feilsøking ​

  • Unable to determine zone for...: sjekk at foreldresonen finnes på kontoen din (GET /dns/zones).
  • Valideringen tidsavbrytes: øk --dns-gigahost-propagation-seconds til 300 eller 600 hvis resolverne dine er trege til å plukke opp den nye TXT-posten.
  • 401 Unauthorized: API-nøkkelen i påloggingsfilen er feil eller er slettet. Eldre versjoner av pluginen logget inn med e-postadresse og passord, som API-et ikke lenger godtar; oppgrader med pip install -U certbot-dns-gigahost og bytt filen til dns_gigahost_api_token.
  • 403 Forbidden: API-nøkkelen har ikke skrivetilgang til DNS for denne sonen.

Gigahost Docs

This site is currently in development.
Enter the password to continue.