Vi har en API, der kan bruges sammen med ACME-protokollen til vores DNS-hotel service. Dette betyder, at når du bruger ACME.sh-scriptet til at få et certifikat, oprettes automatisk de nødvendige DNS TXT-records hos os. Disse records bruges til at bekræfte, at du har adgang til det domæne, du ønsker at generere et certifikat for. Når certifikatet er udstedt, fjernes de oprettede TXT-records automatisk.
Den officielle side med acme.sh findes her: https://github.com/acmesh-official/acme.sh. Her fremgår der information om hvordan acme.sh installeres, samt hvordan der rekvireres et certifikat.
Se nedenfor for en kort step-by-step guide.
Step-by-step guide
curl https://get.acme.sh | sh -s email=my@example.comeller
wget -O - https://get.acme.sh | sh -s email=my@example.comSæt miljøvariabler med dit DNS.services login:
export DnsServices_Username=my@example.com export DnsServices_Password=passwordGenerer et certifikat:
acme.sh --issue -d DOMÆNE --dns dns_dnsserviceseller
acme.sh --issue -d DOMÆNE -d SUB.DOMÆNE --dns dns_dnsservicesHvis du ønsker at benytte Let's Encrypt fremfor ZeroSSL (standard), så kan du angive følgende som en ekstra parameter:
--server letsencrypt
Der er flere installationsmuligheder samt flere kommandomuligheder på den officielle side.
Stor tak til Bjarke Bruun (https://github.com/bbruun) for udvikling, test og dokumentation af DNS.services modulet til acme.sh.
Et par hints med på vejen...
- det anbefales at sætte "--dns-sleep 120" for at undgå API throttling og dermed ingen udstedelse. Der er lidt forsinkelse fra DNS record oprettes på ns1, til de er ude på de resterende servere.
- ikke at lave/udstede alt for mange certifikater pr. 5 min for at undgå API throttling hos os, samt LetsEncrypt/ACME CA'ernes egen throttling af udstedelser pr tidsenhed, hvis man overskrider deres grænser.