SSL-certifikat får vara giltiga i högst 199 dagar. Från 2027-02-24 blir gränsen 99 dagar. Läs mer →

ACME-validering: HTTP-01, DNS-01 och TLS-ALPN-01

ACME-protokollet (RFC 8555) definierar tre metoder för att bevisa domänkontroll. Guiden förklarar när du ska använda vilken metod, vad som påverkar säkerheten och hur CNAME-vidarebefordran och FairSSL AutoDNS gör konfigurationen enklare.

Tre valideringsmetoder

När du beställer ett certifikat via ACME måste CA:n verifiera att du kontrollerar domänen. Det sker via en av tre challenge-typer. CA:n skickar en challenge, din ACME-klient besvarar den, och CA:n verifierar svaret.

Metod Vad som bevisas Port Wildcard Bakom brandvägg
HTTP-01 HTTP-åtkomst till domänen 80 (TCP) Nej Nej
DNS-01 Kontroll över DNS-zonen Ingen Ja Ja
TLS-ALPN-01 TLS-kontroll över domänen 443 (TCP) Nej Nej

HTTP-01: fil på port 80

CA:n ger din ACME-klient ett token. Klienten lägger en fil med token-värdet under http://ert-doman/.well-known/acme-challenge/TOKEN. CA:n hämtar filen via HTTP (port 80) och verifierar innehållet.

Så fungerar det

  1. 1 ACME-klienten begär ett certifikat för www.example.se
  2. 2 CA:n returnerar ett token (slumpmässig sträng)
  3. 3 Klienten lägger filen under /.well-known/acme-challenge/
  4. 4 CA:n hämtar http://www.example.se/.well-known/acme-challenge/TOKEN
  5. 5 Stämmer innehållet utfärdas certifikatet.

Viktiga begränsningar

Inga omdirigeringar. CA:n följer inte omdirigeringar från HTTP till HTTPS under valideringen. Om IIS eller Nginx omdirigerar all trafik från port 80 till 443 misslyckas valideringen. Undanta sökvägen /.well-known/acme-challenge/ från omdirigeringsreglerna.

Alla SAN-namn måste svara. Har certifikatet 5 domännamn (SAN) måste alla 5 besvara HTTP-01 från samma server. Pekar ett av namnen någon annanstans misslyckas hela valideringen.

Lastbalanserare. Bakom en lastbalanserare måste filen finnas på alla backend-servrar, eller så måste lastbalanseraren skicka /.well-known/acme-challenge/ till den server som kör ACME-klienten.

HTTP-01 är den enklaste metoden när en enda server svarar för domänen och port 80 är öppen. I alla andra fall rekommenderar vi DNS-01.

DNS-01: TXT-post i DNS

DNS-01 är den mest flexibla valideringsmetoden. ACME-klienten skapar en TXT-post _acme-challenge.ert-doman i er DNS-zon. CA:n slår upp posten via DNS och verifierar innehållet. Inga portar behöver öppnas, och servern behöver inte exponeras mot internet.

Så fungerar DNS-01

  1. 1 ACME-klienten begär ett certifikat och tar emot ett token från CA:n
  2. 2 Klienten beräknar en SHA-256-hash av token och kontonyckeln (account key)
  3. 3 Klienten skapar TXT-posten: _acme-challenge.example.se TXT "hashat-token-värde"
  4. 4 CA:n slår upp posten i DNS (från flera geografiska platser via MPIC)
  5. 5 Stämmer TXT-posten utfärdas certifikatet, och klienten tar bort TXT-posten.

Exempel: DNS-01-uppslag

# Kontrollera om TXT-posten har skapats korrekt
nslookup -type=TXT _acme-challenge.example.se
_acme-challenge.example.se  text = "gfj9Xq...Rg85nM"

# På Linux och macOS
dig TXT _acme-challenge.example.se +short
"gfj9Xq...Rg85nM"

TTL och propagering

TXT-posten måste ha nått CA:ns DNS-resolvrar innan valideringen kan genomföras. Med kort TTL syns nya värden snabbare, och gamla värden försvinner snabbare efter valideringen.

Rekommendation: Sätt TTL för _acme-challenge-poster till högst 60 sekunder. De flesta ACME-klienter väntar 30 sekunder efter att posten har skapats (kan ändras). När certifikat från 15 mars 2029 bara är giltiga i 47 dagar sker valideringen oftare, och en kort TTL ger snabb propagering varje gång.

CNAME-vidarebefordran i DNS (FairSSL AutoDNS)

Utan vidarebefordran kräver DNS-01 att ACME-klienten har full åtkomst till ert DNS-API. Det innebär API-nycklar till er primära DNS-leverantör på varje server som ska förnya certifikat. Om en server komprometteras kan angriparen ändra alla DNS-poster för er domän.

CNAME-vidarebefordran tar bort den risken. Ni skapar en CNAME-post som pekar _acme-challenge mot en separat zon som bara används för certifikatvalidering. Servern har bara åtkomst till den zonen, inte till er primära DNS. Med FairSSL AutoDNS behöver ni inte ens driva den zonen själva, eftersom FairSSL gör det åt er.

Så fungerar det

CA:n följer CNAME-kedjan automatiskt. Den slår upp _acme-challenge.ert-doman, hittar CNAME-posten, följer den till valideringszonen och läser TXT-posten där. Utöver den permanenta CNAME-posten används inte er primära DNS-zon.

Exempel: CNAME-vidarebefordran

1. Skapa CNAME-posten (görs en gång i er DNS)

_dnsauth.example.se  CNAME  ditt-unika-id.autodns.fairssl.dk.

2. Vid validering skapar FairSSL TXT-posten

ditt-unika-id.autodns.fairssl.dk  TXT  "valideringstoken"

3. CA:n följer kedjan

# CA:n slår upp: _acme-challenge.example.se
# → CNAME → ditt-unika-id.autodns.fairssl.dk
# → TXT "hashat-token" ✓

Fördelar med vidarebefordran

  • Inga nycklar till DNS-API:et på servern
  • En komprometterad server kan inte ändra er DNS
  • Fungerar med alla DNS-leverantörer (även de som saknar API)
  • CNAME-posten skapas en gång, resten sker automatiskt

FairSSL AutoDNS

FairSSL AutoDNS är CNAME-vidarebefordran som en tjänst som FairSSL driver. Ni skapar en CNAME-post, och FairSSL hanterar alla TXT-poster automatiskt vid varje validering. Inga skript, inga API-nycklar och ingen manuell konfiguration.

acme-dns: ett alternativ som ni driver själva

acme-dns är ett projekt med öppen källkod där ni kör er egen valideringszon. Simple-acme, Lego och Certbot har inbyggt stöd för acme-dns. Ni ansvarar då själva för drift och övervakning av DNS-servern.

TLS-ALPN-01: certifikat på port 443

TLS-ALPN-01 (RFC 8737) är den nyaste valideringsmetoden. ACME-klienten visar upp ett självsignerat certifikat med ett särskilt ALPN-tillägg på port 443. CA:n upprättar en TLS-anslutning och verifierar certifikatet.

Metoden togs fram som ersättning för den ursprungliga TLS-SNI-metoden, som drogs tillbaka 2018 på grund av säkerhetsproblem i delade webbhotellsmiljöer.

Används sällan i praktiken. TLS-ALPN-01 kräver att ACME-klienten tillfälligt tar över port 443. Oftast måste webbservern då stoppas under valideringen, vilket ger driftstopp. I simple-acme används selfhosting-läget, som binder port 443 direkt. Metoden används främst på servrar där port 80 är blockerad av en policy men port 443 är öppen. I andra fall är DNS-01 oftast ett bättre val.

Vilken metod ska jag använda?

1.

En webbserver, port 80 öppen

Använd HTTP-01 om servern redan är tillgänglig från internet på port 80. Det är den enklaste konfigurationen. Alla SAN-namn i certifikatet måste peka på servern, och regler som omdirigerar HTTP till HTTPS måste undanta /.well-known/acme-challenge/. En omdirigering på den sökvägen får valideringen att misslyckas.

2.

Bakom brandvägg eller lastbalanserare, eller wildcardcertifikat

Använd DNS-01. Inga portar behöver öppnas, och metoden fungerar oavsett brandväggskonfiguration. Med FairSSL AutoDNS behöver ni inte ens åtkomst till ett DNS-API.

3.

Flera servrar eller webbfarm

Använd DNS-01. HTTP-01 kräver att varje server kan leverera challenge-filen, vilket är besvärligt i en webbfarm. DNS-01 med CNAME-vidarebefordran körs från en central server.

4.

Nätverksutrustning (brandväggar, lastbalanserare)

Använd DNS-01 från en befintlig server. Nätverksenheter kan inte köra ACME-klienter, så en central server sköter valideringen och installerar certifikaten via API eller skript. Under ACME-klienter finns förslag på hur det kan byggas upp.

5.

Port 80 blockerad, port 443 öppen, ingen DNS-åtkomst

Använd TLS-ALPN-01. Situationen är ovanlig, men metoden är det enda alternativet när HTTP inte går att nå och CNAME-vidarebefordran inte är möjlig.

Felsökning av valideringsproblem

DNS-01: "Timeout waiting for DNS propagation"

CA:n ser ännu inte TXT-posten. Kontrollera manuellt med nslookup -type=TXT _acme-challenge.ert-doman 8.8.8.8 (använd en extern DNS-resolver, inte er lokala). Vanliga orsaker: för hög TTL på befintliga poster, en DNS-leverantör med långsam propagering eller en felaktig zonfil. Öka DnsPropagationDelay i klientens konfiguration.

DNS-01: "Incorrect TXT record" (CNAME-vidarebefordran)

CNAME-posten pekar fel. Kontrollera med nslookup -type=CNAME _acme-challenge.ert-doman. Svaret ska vara rätt mål. En CNAME-post kan inte finnas tillsammans med andra poster på samma namn. Har ni redan en TXT-post på _acme-challenge tar ni bort den innan ni skapar CNAME-posten.

HTTP-01: "Invalid response from [domän]"

CA:n kan inte hämta challenge-filen. Möjliga orsaker: en brandvägg blockerar port 80, domänen pekar på fel IP-adress (ofta efter en DNS-ändring) eller webbservern returnerar en felsida i stället för challenge-filen. Testa lokalt: curl -v http://ert-doman/.well-known/acme-challenge/test.

HTTP-01: Omdirigering på challenge-sökvägen

Webbservrar har ofta en global omdirigering från HTTP till HTTPS. Den fångar även anrop till /.well-known/acme-challenge/, och CA:n avvisar omdirigeringar på challenge-sökvägen. Se till att er omdirigeringsregel undantar den sökvägen. I IIS: lägg till ett villkor (condition) i URL Rewrite. I Nginx: placera blocket location /.well-known/acme-challenge/ före omdirigeringsregeln.

HTTP-01: Alla SAN-namn valideras inte

HTTP-01 validerar varje SAN-namn för sig. Om certifikatet innehåller ditt-doman.se och www.ditt-doman.se måste båda namnen svara på port 80 med challenge-filen. Omdirigerar www till apex-domänen (eller tvärtom) misslyckas valideringen för det namnet. Använd DNS-01 i stället om alla SAN-namn inte pekar på samma server.

En CAA-post blockerar utfärdandet

Ett felmeddelande som nämner "CAA" betyder att era CAA-poster inte tillåter den CA som utfärdar certifikatet. Certifikat via FairSSLs ACME-server utfärdas av DigiCert (digicert.com) och GlobalSign (globalsign.com), och det är de CA:erna era CAA-poster måste tillåta. Vi säljer även certifikat från Sectigo (sectigo.com), men de kan ännu inte utfärdas via vår ACME-server. Använd vår CAA Record Generator för att skapa korrekta poster. Har ni inga CAA-poster är alla CA:er tillåtna.

MPIC-fel: valideringen lyckas från en plats men inte från andra

Sedan mars 2025 verifierar CA:erna domänkontrollen från flera geografiska platser (MPIC). Om DNS eller HTTP svarar korrekt från en plats men inte från andra kan det bero på geo-DNS, en CDN-konfiguration som blockerar vissa regioner eller asymmetrisk routning. Se till att valideringssvaret går att nå från hela världen, inte bara från ert lokala nätverk.

Vanliga frågor om ACME-validering

Hitta svar på de vanligaste frågorna om SSL-certifikat och FairSSL.

Nej. Wildcardcertifikat kräver DNS-01-validering. Det står i RFC 8555 avsnitt 7.4. Skälet är att HTTP-01 bara bevisar kontroll över ett enskilt värdnamn, inte över hela domänen.
DNS-01 är valideringsmetoden i ACME-standarden, den tekniska mekanism där CA:n kontrollerar en TXT-post. FairSSL AutoDNS är en tjänst som sköter DNS-01 åt er: ni skapar en permanent CNAME-post, och FairSSL skapar och tar bort TXT-posterna automatiskt vid varje validering. Tekniskt är det DNS-01, men er server behöver ingen åtkomst till ert DNS-API.
Det beror på er DNS-leverantör och era TTL-inställningar. Hos större leverantörer som Cloudflare, Route 53 och Azure DNS syns ändringen normalt inom 10-30 sekunder. Äldre DNS-tjänster eller registrarer med långa TTL-värden kan behöva upp till 5 minuter. Simple-acme väntar 30 sekunder som standard (kan ändras med DnsPropagationDelay i settings.json). Vi rekommenderar en TTL på högst 60 sekunder för _acme-challenge-poster.
Ja, med CNAME-vidarebefordran. Skapa en CNAME-post som pekar _acme-challenge.ert-doman mot en valideringstjänst (t.ex. FairSSL AutoDNS eller acme-dns). Servern ändrar aldrig er DNS-zon direkt, så inte ens en komprometterad server kan ändra era DNS-poster.
CA:n avvisar certifikatbegäran med ett felmeddelande som nämner CAA. Kontrollera era CAA-poster med dig CAA ert-doman och se till att de CA:er som utfärdar via FairSSLs ACME-server (DigiCert och GlobalSign) är tillåtna. Använd vår CAA Record Generator för att skapa korrekta poster.
Ja, FairSSLs ACME-server stöder alla tre valideringstyper: HTTP-01, DNS-01 och TLS-ALPN-01. De flesta ACME-klienter stöder också TLS-ALPN-01, men metoden används sällan eftersom den kräver att klienten tillfälligt tar över port 443, vilket är opraktiskt på produktionsservrar.
MPIC är ett krav från CA/Browser Forum (SC-067) som gäller sedan mars 2025. CA:n verifierar domänkontrollen från flera geografiskt spridda punkter i stället för från en enda server. Syftet är att stoppa BGP-kapning, där en angripare tillfälligt styr om trafik för att klara domänvalideringen. MPIC kräver inga ändringar i er konfiguration, men gör valideringen säkrare.

Kom igång med SSL-automatisering

Skapa ett gratis konto och beställ ditt första certifikat. Ett DV-certifikat utfärdas på under 2 minuter.