Internet Security Research Group utvecklade ursprungligen ett ACME-protokoll (Automated Certificate Management Environment) för sin publika certifikatutfärdare, Let's Encrypt. ACME är det som driver hela Let's Encrypts affärsmodell, vilket gör att de kan utfärda 90-dagars domänvaliderade certifikat. SSL certifikat, som kan förnyas och ersättas utan webbplatsägarens ingripande.
Målet är att upprätta en HTTPS en server som automatiskt hämtar betrodda certifikat utan någon mänsklig inblandning.
Översikt
IETF utvecklade en automatiserad certifikathanteringsmiljö (ACME) för automatisk certifikathantering. ACME-protokollet tillhandahåller ett effektivt sätt att validera att en certifikatbegärare är auktoriserad för den begärda domänen och installerar automatiskt certifikat.
Denna validering utförs genom att begära att begäraren placerar en slumpmässig sträng (tillhandahållen av CA eller certifikathanteraren) på servern för verifiering via HTTP eller i en textpost för serverns DNS-post (Domain Name System). Klientprogram, som Certbot, kan automatiskt utföra alla åtgärder som behövs för att begära ett certifikat – vilket minimerar det manuella arbetet. Let's Encrypt och flera andra publika certifikatutfärdare stöder automatiserad hantering av publika certifikat med hjälp av ACME-protokollet. Publika certifikatutfärdare kan dock inte utföra ACME-validering för certifikat installerade på system inom organisationsnätverk. Externa enheter kan inte skapa HTTP- eller DNS-anslutningar till interna system. Certifikatshanteraren kan skapa interna HTTP- och DNS-anslutningar och användas för ACME-baserad certifikathantering på interna nätverk. En mängd olika certifikatutfärdare, certifikathanterare och klienter över en bred uppsättning TLS-servrar och operativsystem stöder ACME-protokollet, vilket ger det en fördel. En nackdel med ACME är att det inte finns någon primär metod för att utlösa ett certifikatersättningssvar som svar på en certifikathändelse (t.ex. kompromettering av certifikatutfärdaren).
ACME definierar ett utökningsbart ramverk för att automatisera utfärdande och valideringsprocessen för dessa certifikat. Servrarna tillåts hämta certifikat utan någon mänsklig inblandning.
ACME-protokollmodell
ACME använder HTTPS som transport för JavaScript Object Notation (JSON) Web Signature (JWS)-objekt. Dessa kallas även REST. API.
ACME-servrar körs på certifikatutfärdare (CA) och svarar på klientens åtgärder om de är auktoriserade. Klienten använder ACME-protokollet för att begära certifikathantering åtgärder. ACME-klienter representeras av "kontonyckelpar". En privat nyckel används för att signera alla meddelanden till servern, och ACME-servern använder offentlig åtkomst för att verifiera meddelandenas äkthet och säkerställa integritet.
Hur ACME-protokollet fungerar
Installera
En ACME-server måste konfigureras korrekt innan den kan ta emot förfrågningar och installera certifikat. Stegen för att konfigurera ACME-servrar är:
- Konfigurera en CA: ACME kommer att installeras i en CA, så vi måste välja en CA på den domän där vi vill att ACME ska vara tillgänglig.
- Ange domänen där ACME ska installeras
- Välj vilken CA den ska installeras på
- Tillstånd
- Klienten kontaktar CA och genererar ett auktoriserat nyckelpar
- CA utfärdar DNS- eller HTTPS-utmaningar som klienten svarar på och löser för att bevisa auktoritet och kontroll.
- CA skickar också en nonce, ett slumpmässigt nummer, som signeras med klientens privata nyckel och skickas tillbaka för verifiering till CA.
Detta avslutar installationen av ACME. Efter installationen börjar automatiseringen fungera. ACME tar några steg:
- Utfärdande/förnyelse av certifikatACME har behörighet att utfärda eller förnya certifikat till behöriga användare. Först genererar klienten (eller agenten) en certifikatsigneringsförfrågan (CSR) som skickas till CA:n. CSR:n signeras av agenten, vilket CA:n kan bekräfta är äkta och kommer från agenten. CA:n utfärdar, efter verifiering, certifikatet för domänen och returnerar det till agenten.

- ÅterkallandePrecis som i den tidigare processen signerar agenten en återkallningsbegäran som skickas till CA. CA bekräftar återigen begärans äkthet och återkallar sedan certifikatet, publicerar på CRL, OCSP etc., för PKI-infrastruktur.

ACME-protokollfunktioner
ACME använder olika webbadresser och resurser för olika hanteringsfunktioner som kan tillhandahållas. Några funktioner inkluderar:
- Ny Nonce
- Ny registrering
- Ny ansökan
- Ny auktorisering
- Återkalla certifikat
- Nyckelbyte
Fördelar
ACME erbjuder ett automatiserat sätt att snabbt utfärda och återkalla certifikat, utan mänskliga fel. Utöver dessa finns det några fördelar att hålla utkik efter…
- ACME är gratis, vilket låter alla domänägare få ett pålitligt certifikat utan kostnad.
- Som tidigare nämnts automatiserar ACME certifikatets livscykel utan mänskliga fel.
- ACME kan användas av vem som helst, vilket stöder enhetliga protokoll för alla funktioner istället för separata API:er.
- De stöds av öppen källkod, vilket bidrar till att påverka hela samhället och utveckla mer effektfulla projekt, vilket förbättrar säkerheten.
- Vid en kompromiss kan ACME snabbt åtgärda problemet, ersätta de gamla certifikaten med nya och byta till en ny CA.
Slutsats
ACME-ramverket erbjuder ett effektivt sätt att hantera SSL/TLS-certifikat, vilket minskar behovet av manuella åtgärder och minimerar mänskliga fel. Stora fördelar erbjuds ACME-domänägare tack vare möjligheten att utfärda och klippa certifikat snabbt och kostnadsfritt. Krypteringskonsulttjänster kan hjälpa till att implementera och genomföra ACME-baserade certifikathanteringslösningar, vilket säkerställer sömlös och säker hantering av certifikatens livscykel.
