- Vad är SSL/TLS-certifikat
- Det traditionella problemet med certifikathantering
- Vad är ACME och varför skapades det
- Hur ACME-klienter på Linux implementerar certifikatautomation
- Var SSL/TLS-certifikat lagras på Linux
- ACME-valideringsmetoder på Linux
- Populära ACME-klienter på Linux och deras skillnader
- Certbot vs acme.sh på Linux: En praktisk jämförelse
- ACME-klienter på Linux utöver webbplatser: API:er och interna tjänster
- Säkerhetsöverväganden vid användning av ACME-klienter på Linux
- Utmaningar med att hantera ACME på företagsnivå
- Varför företag behöver centraliserad ACME-hantering
- Hur krypteringskonsulting kan hjälpa
- Slutsats
Varje gång du besöker en webbplats och ser hänglåset i webbläsarfältet, en SSL/TLS-certifikat gör i tysthet sitt jobb, autentiserar servern och krypterar din anslutning så att lösenord, betalningsuppgifter och personuppgifter förblir privata. Ta bort certifikatet, och anslutningen återgår till vanlig HTTP, där vem som helst i samma nätverk kan läsa din trafik i klartext.
I åratal var det en verkligt smärtsam process att få och underhålla dessa certifikat. Administratörer var tvungna att generera kryptografiska nycklar, skicka in en begäran om certifikatsignering med en certifikatutfärdare, bevisa att de ägde domänen, ladda ner det signerade certifikatet, konfigurera det på servern och kom sedan ihåg att göra om alltihop innan det löpte ut.
Missar man den deadline börjar webbläsarna visa varningar om certifikatfel. Tjänsterna slutar fungera och användare lämnar webbplatsen.
ACME, den Automatisk certifikathanteringsmiljö protokollet, byggdes för att åtgärda just detta. Istället för att en person begär och förnyar certifikat, hanterar en lättviktig programvaruagent på servern hela processen automatiskt och kommunicerar direkt med certifikatutfärdaren utan någon mänsklig inblandning.
Kör den agenten i stor skala över dussintals eller hundratals Linux-servrar, och en ny uppsättning problem uppstår: ingen central insyn, inkonsekventa konfigurationer och ingen tidig varning när något går fel. Det är där CertSecure Manager passar in och lägger till det styrningslager som enskilda ACME-klienter aldrig var utformade för att tillhandahålla.
I den här bloggen går vi igenom vad SSL/TLS-certifikat är, varför de går ut, hur ACME-protokollet fungerar, vilka Linux-klienter man ska välja och vad som krävs för att hantera dem. certifikatautomatisering i företagsskala.
Vad är SSL/TLS-certifikat
Tänk på en SSL/TLS-certifikat som en verifierad identitetsbricka för en webbplats, utfärdad av en betrodd tredje part. Den gör två saker: den krypterar trafiken mellan en besökares webbläsare och servern, och den bevisar att servern är den den utger sig för att vara.
Den kryptografiska mekanismen bakom detta bygger på ett nyckelpar, en offentlig nyckel som vem som helst kan använda för att kryptera data som skickas till servern, och en privat nyckel som endast servern innehar och använder för att dekryptera den. Även om någon avlyssnar trafiken under överföring kan de inte läsa den utan den privata nyckeln.
Vem utfärdar SSL/TLS-certifikat
Certifikatutfärdare (CA) är de organisationer som webbläsare och operativsystem redan litar på för att garantera webbplatser. Välkända offentliga certifikatutfärdare inkluderar bland annat Let's Encrypt, DigiCert och GlobalSign.
Företag driver ofta sina egna privata certifikatutfärdare med hjälp av Microsoft Active Directory Certificate Services eller alternativ med öppen källkod. Innan ett certifikat utfärdas måste certifikatutfärdaren verifiera att den som begär det faktiskt kontrollerar domänen i fråga. När den kontrollen är godkänd signerar certifikatutfärdaren certifikatet digitalt, och varje webbläsare som litar på den certifikatutfärdaren kommer automatiskt att lita på webbplatsen.
Varför löper certifikat ut
Certifikat är inte permanenta av sig själva. Korta giltighetsperioder begränsar den skada en stulen privat nyckel kan orsaka, tvingar fram regelbundna kontroller av att domänen förblir under samma ägare och säkerställer att föråldrade kryptografiska standarder utfasas.
CA/Browser Forum har föreskrivit successivt kortare giltighetsperioder: 200-dagarscertifikat (gäller från och med mars 2026), 100-dagarscertifikat senast 2027 och 47-dagarscertifikat senast 2029. I takt med att förnyelser blir allt vanligare blir manuella processer helt ohållbara, vilket är just därför ACME finns.
Det traditionella problemet med certifikathantering
Innan automatiseringen kom innebar förnyelse av ett certifikat att generera en Certifikatsigneringsbegäran, skicka in den till en CA, slutföra domänvalidering manuellt, ladda ner den signerade filen, driftsätta den på rätt server och uppdatera webbserverkonfigurationen, allt spårat mot en deadline som de flesta team hanterade i ett delat kalkylblad eller, värre, från minnet.
För en enda webbplats var detta hanterbart. För en organisation som körde femtio servrar i tre miljöer var det en katastrof som väntade på att hända. Missade förnyelser orsakade verkliga avbrott, och dessa avbrott var ofta det första tecknet på att någon kom ihåg att ett certifikat var på väg att löpa ut. Komplexiteten i den processen var det som drev skapandet av ACME. Du kan läsa mer om riskerna med vanliga SSL-felkonfigurationer och hur de skapar verklig säkerhetsexponering.
Vad är ACME och varför skapades det
ACME (Automatisk certifikathanteringsmiljö) är en öppen standard, publicerad som RFC 8555, som definierar hur en server kan bevisa att den kontrollerar en domän och begära ett certifikat från en CA helt utan mänsklig inblandning.
Servern kör en ACME-klient, klienten slutför en kryptografisk utmaning som ställts in av CA:n, och när CA:n är nöjd utfärdar den certifikatet och skickar tillbaka det. Samma process hanterar förnyelser automatiskt. Idag stöds ACME av dussintals CA:er och har blivit de facto-standarden för certifikatautomation i Linux-miljöer världen över.
ACME blev allmänt antaget till stor del på grund av Låt oss kryptera, den kostnadsfria offentlig CA lanserad av Internet Security Research Group. Let's Encrypt argumenterade för att HTTPS borde vara gratis och automatiskt, och de använde ACME som mekanism för att leverera det.
Hur ACME-klienter på Linux implementerar certifikatautomation
ACME-protokollet definierar reglerna, men det är ACME-klienten, programvara som körs direkt på Linux-servern, som kör dem, hanterar certifikatförfrågningar, domänvalidering, installation och förnyelse.
Linux passar naturligt för den här typen av automatisering. Dess kommandoradsverktyg, cron-schemaläggning och inbyggda integration med webbservrar som Apache och ... nginx innebär att ACME-klienter kan integreras i befintlig infrastruktur med minimal konfiguration. I de flesta fall kan klienten också uppdatera webbserverkonfigurationen själv när ett nytt certifikat utfärdas, vilket gör hela processen smidig.
Hur ACME-klienter hanterar förnyelse automatiskt
ACME-klienter på Linux körs vanligtvis som schemalagda bakgrundsuppgifter och kontrollerar certifikatets utgångsdatum med jämna mellanrum. När ett certifikat passerar förnyelsegränsen (vanligtvis 30 dagar innan utgångsdatum för Let's Encrypt-certifikat) kontaktar klienten certifikatutfärdaren, slutför domänvalideringsutmaningen, tar emot det förnyade certifikatet, ersätter de gamla filerna och signalerar till webbservern att ladda om.
Hela processen tar några sekunder och sker utan någon administratörsåtgärd. Det är därför team som har gått över till ACME-baserad automatisering sällan tänker på certifikatförnyelser längre, förrän något bryter automatiseringen, vilket leder oss till varför övervakning fortfarande spelar roll.
Var SSL/TLS-certifikat lagras på Linux
Varje ACME-klient följer sina egna katalogkonventioner. Certbot lagrar live-certifikat under /etc/letsencrypt/live/<domain>/, med fyra standardfiler: cert.pem (lövintyget), privkey.pem (den privata nyckeln), chain.pem (mellanliggande CA-certifikat), och fullchain.pem (bladet plus hela kedjan).
Historiska och versionerade kopior finns kvar /etc/letsencrypt/archive/<domain>/acme.sh har som standard ~/.acme.sh/ /. De flesta produktionsdistributioner flyttar dock certifikat till systemkataloger som /etc/ssl/ eller /var/lib/acme/ för en renare behörighetshantering. När ett certifikat förnyas uppdaterar båda verktygen filerna på plats, så att program som refererar till dessa sökvägar fortsätter att fungera utan några konfigurationsändringar.
ACME-valideringsmetoder på Linux
Innan en CA kan utfärda ett certifikat behöver de bevis på att du faktiskt kontrollerar domänen. ACME standardiserar den bevisprocessen i tre distinkta utmaningstyper, som var och en är anpassad till olika miljöer.
HTTP-01-validering
ACME-klienten placerar en liten token-fil på en välkänd URL på webbservern. CA hämtar den URL:en via HTTP för att bekräfta att filen finns där och beviljar sedan domänkontroll.
Detta är den vanligaste metoden och fungerar direkt med Apache och Nginx på alla offentligt tillgängliga servrar. Den enda begränsningen är att det kräver att servern är nåbar på port 80, vilket utesluter det för interna tjänster och jokerteckenscertifikat.
DNS-01-validering
Istället för en fil på webbservern skapar ACME-klienten en _acme-challenge TXT-post i domänens DNS-zon. CA kontrollerar posten för att bekräfta domänägarskap.
DNS-01 är metoden som ska användas för jokerteckencertifikat, för servrar bakom en brandvägg och för alla tjänster som inte är direkt nåbara via HTTP. Nackdelen är att det kräver antingen API-åtkomst till din DNS-leverantör eller en manuell DNS-uppdatering.
TLS-ALPN-01-validering
TLS-ALPN-01 utför valideringshandskakningen direkt över TLS på port 443, med hjälp av ett speciellt ALPN-tillägg. Det används mindre vanligt än de andra två metoderna men är användbart i miljöer där HTTP är helt blockerat och DNS API-åtkomst inte är tillgänglig.
Populära ACME-klienter på Linux och deras skillnader
Flera mogna ACME-klienter finns tillgängliga för Linux, och rätt val beror på din miljö.
Certbot, som underhålls av Electronic Frontier Foundation, är det mest använda alternativet. Det integreras direkt med Apache och Nginx, hanterar certifikatinstallation och automatisk omladdning av webbservern, och är den bästa vägen för alla som hanterar en traditionell Linux-webbserver.
Om du driver en offentlig webbplats och bara behöver certifikat för att fungera är Certbot rätt utgångspunkt.
acme.sh har en annan metod. Skrivet helt i POSIX-shell, körs det på vilken Linuxdistribution som helst utan några extra beroenden alls.
Den stöder ett mycket bredare utbud av DNS-leverantörer än Certbot, integreras naturligt med Ansible, Docker och andra automatiseringsverktyg, och ger operatörer mer detaljerad kontroll över certifikatlagring och distributionshooks. Det är det föredragna valet för skriptmiljöer, interna tjänster och molnbaserade arbetsbelastningar.
Lego är en Go-baserad klient byggd för dynamisk infrastruktur. Den är vanligtvis inbäddad i containerorkestreringspipelines och CI/CD-system där certifikat måste begäras och förnyas på begäran allt eftersom tjänsterna roterar upp och ner.
Vissa plattformar, inklusive vissa Kubernetes ingångskontroller och lastbalanserare, levereras också med inbyggt ACME-stöd, vilket kan förenkla den initiala installationen men erbjuder vanligtvis mindre insyn och kontroll än en dedikerad klient.
Certbot vs acme.sh på Linux: En praktisk jämförelse
Både Certbot och acme.sh implementerar ACMEv2, stöder wildcard-certifikat och automatiserar hela certifikatlivscykeln. Det som skiljer dem åt är i filosofi och passform.
| Leverans | Certbot | acme.sh |
|---|---|---|
| Genomförande | Python-baserad | POSIX-shellskript |
| beroenden | Kräver Python 3.4 eller senare | Valfritt Linux-skal, inga extrafunktioner behövs |
| ACME-version | ACMEv2 | ACMEv2 |
| Wildcard-certifikat | Stöds via DNS-01 | Stöds via DNS-01 |
| Apache/NGINX-integration | Automatisk installation och omladdning | Endast utfärdande, manuella distributionskrokar |
| DNS-leverantörssupport | Begränsade inbyggda leverantörer | 150+ leverantörer stöds |
| TLS-ALPN-01-validering | Stöds inte | Som stöds |
| Förnyelse | Helautomatiserad via systemd-timer | Helt automatiserad via cron |
| Bästa passform | Publika webbservrar, snabb installation | Skripterade pipelines, interna tjänster, containrar |
| Centraliserad förvaltning | Endast per server | Endast per server |
I praktiken vinner Certbot på enkelhet. Om du hanterar Apache eller Nginx på en handfull publika servrar installeras Certbot på några minuter och körs av sig själv. acme.sh vinner på flexibilitet: dess shell-native design innebär att den passar överallt där Linux körs, dess DNS-leverantörstäckning är oöverträffad och dess distributionshooks låter dig utlösa vilken åtgärd som helst efter förnyelse som helst. Inget av verktygen byggdes dock med centraliserad styrning i åtanke. Båda lagrar certifikat lokalt på servern och fungerar oberoende, vilket är mycket viktigt när man hanterar certifikat över dussintals eller hundratals system.
ACME-klienter på Linux utöver webbplatser: API:er och interna tjänster
De flesta associerar SSL/TLS-certifikat med publika webbplatser, men i en modern Linux-miljö är certifikat lika viktiga för intern trafik. REST API:er, mikrotjänster, meddelandemäklare och interna verktyg behöver alla krypterade, autentiserade anslutningar för att förhindra dataavlyssning och lateral förflyttning av angripare som har fått fotfäste i nätverket.
Attackytan som skapas av ohanterade interna certifikat är betydande och ofta förbisedd. ACME-klienter hanterar intern certifikatutfärdande och förnyelse med samma automatiseringsmodell som offentliga webbplatser, vilket ger konsekventa kryptering över hela infrastrukturen en praktisk verklighet.
Säkerhetsöverväganden vid användning av ACME-klienter på Linux
Automatisering minskar mänskliga fel, men det eliminerar inte behovet av god säkerhetshygien. Några områden förtjänar särskild uppmärksamhet när man kör ACME-klienter på Linux i produktion.
- Skydd av privat nyckel: Det är det viktigaste steget. ACME-klienter genererar privata nycklar direkt på Linux-servern, och dessa filer kräver restriktiva behörigheter. Bred läsåtkomst till en privat nyckelfil är en kritisk sårbarhet; alla som kan läsa den kan utge sig för att vara din server. Se vår guide om bästa praxis för att skydda SSL/TLS-certifikat för en fullständig checklista.
- Minst privilegium för ACME-processen: Klienten behöver bara tillräckligt med åtkomst för att skriva certifikatfiler och ladda om webbservern, inget mer. Att köra den med förhöjda behörigheter ökar din attackyta i onödan.
- Förnyelseövervakning: Förnyelser sker automatiskt tills de inte längre är det. En DNS-ändring, en ny brandväggsregel eller ett felkonfigurerat utmaningssvar kan alla orsaka tysta fel, vilket ger dig ett certifikat som löper ut och ingen varning. Logga förnyelseresultat och avisera om fel. Vårt inlägg om hur du kontrollerar SSL-certifikatets giltighet täcker övervakningssidan i detalj.
- CA och policyanpassning: I reglerade miljöer har din organisation sannolikt en lista över godkända CA-leverantörer, en obligatorisk nyckelalgoritm och en minsta nyckellängd. ACME-klienter tillämpar inte dessa policyer på egen hand; de kommer att använda vilken CA du pekar dem på och vilka standardvärden de än levereras med. Utan centraliserad konfigurationshantering glider konfigurationer mellan servrar över tid.
Utmaningar med att hantera ACME på företagsnivå
ACME-klienter på Linux fungerar utmärkt på en enda server eller en liten flotta. Sprickorna börjar synas när man arbetar i stor skala över flera team, miljöer och plattformar.
- Ingen global synlighet: Varje server hanterar sina egna certifikat isolerat. Det finns ingen central inventering, ingen enhetlig instrumentpanel och inget enkelt sätt att svara på frågan "vilka certifikat löper ut inom de närmaste 30 dagarna i alla våra system?". Ett team som kör Certbot på 40 Nginx-servrar och acme.sh på containervärdar har ingen enda plats att leta. Föräldralösa certifikat, de certifikat som inte längre är knutna till aktiva tjänster, lever i tysthet som skuggcertifikat, vilket skapar efterlevnadsrisk och onödiga risker.
- Inkonsekventa konfigurationer: Företagssäkerhetspolicyer kräver vanligtvis specifika certifikatutfärdare, nyckelalgoritmer och förnyelsefönster. Med fristående ACME-klienter konfigureras varje server oberoende. Ett team använder RSA-2048 från Let's Encrypt, ett annat använder ECDSA från en helt annan certifikatutfärdare, och er efterlevnadsgranskning måste stämma av dem manuellt.
- Misslyckanden med samordning av driftsättning: Att förnya ett certifikat är bara halva jobbet. Det förnyade certifikatet måste laddas om av varje tjänst som använder det: webbservern, lastbalanseraren, Tomcat-instansen och det interna API:et. ACME-klienter hanterar sina egna reload-hooks, men i distribuerade miljöer är det vanligt att ett certifikat uppdateras på disk och tyst inte laddas om någonstans nedströms, vilket ger upphov till oväntade TLS-fel som är frustrerande att diagnostisera.
- Inga företagsintegrationer: ACME-klienter är automatiseringsverktyg, inte driftsplattformar. De skickar inte aviseringar till din SIEM, öppnar inte ärenden i ServiceNow eller integrerar med din övervakningsstack. Ett förnyelsefel på en produktionsserver förblir osynligt tills något går sönder.
Varför företag behöver centraliserad ACME-hantering
Lösningen på dessa utmaningar är inte att ersätta ACME-klienter; de är riktigt bra på vad de gör. Den saknade delen är ett centraliserat hanteringslager som ger dig insyn och kontroll över hela flottan utan att ändra hur enskilda klienter arbetar.
Ett centraliserat lager ger säkerhetsteam en enda inventering av alla certifikat som utfärdats via ACME, oavsett vilken server eller klient som producerade dem. Utgående certifikat är synliga veckor i förväg snarare än att upptäckas under ett avbrott. Policytillämpningen blir enhetlig: godkända certifikatutfärdare, obligatoriska nyckellängder och tröskelvärden för förnyelse gäller överallt, inte bara för servrar som har konfigurerats noggrant.
När ett certifikat behöver återkallas på grund av en nyckelkomprometterad kod kan varje beroende tjänst identifieras och uppdateras på ett samordnat sätt istället för att spåras manuellt. När en förnyelse misslyckas utlöses en varning omedelbart snarare än att en produktionsincident är det första tecknet på att något gick fel.
Hur krypteringskonsulting kan hjälpa
CertSecure-hanterare är Encryption Consultings plattform för hantering av certifikatlivscykel, specialbyggd för att hantera exakt de skal- och styrningsutmaningar som beskrivs ovan.
Den placeras bredvid dina befintliga ACME-klienter snarare än att ersätta dem. Certbot och acme.sh fortsätter att göra det de gör, medan CertSecure Manager spårar varje certifikat de utfärdar, upprätthåller dina kryptografiska policyer och ger dig en enhetlig bild av hela livscykeln i din Linux-infrastruktur.
CertSecure Manager integreras med publika certifikatutfärdare som Let's Encrypt och med sin egen anpassade ACME-slutpunkt, så utfärdande och förnyelse förblir helt automatiserade. Det minskar också certifikatrelaterade avbrott genom att tillhandahålla konfigurerbara 30-dagars eller längre förvarningar.
På utplaceringssidan, Ansible Playbooks hanterar konsekvent ACME-klientkonfiguration, certifikatdistribution och tjänsteomladdningar över Apache, Nginx, Tomcat och IIS i både lokala och hybridmolnmiljöer, allt utan manuell åtgärd.
Allt eftersom din miljö växer kan CertSecure Manager skalas med. Den tillhandahåller en enhetlig certifikatinventering, tillämpar kryptografiska standarder i alla team och ger insyn i livscykelhändelser. Dess operativa integrationer för aviseringar, ärendehantering och revisionsloggning förvandlar certifikathantering från en reaktiv brandbekämpningsövning till en kontrollerad, granskningsbar process.
Slutsats
ACME har verkligen förändrat hur hantering av SSL/TLS-certifikat fungerar på Linux. Det som tidigare var en manuell, deadline-driven syssla är nu en automatiserad bakgrundsprocess som de flesta team sällan tänker på.
De bästa ACME-klienterna på Linux, inklusive Certbot, acme.sh och liknande verktyg, hanterar utfärdande- och förnyelseloopen tillförlitligt över Apache, Nginx, Tomcat och praktiskt taget alla andra Linux-baserade plattformar. Med giltighetsperioder som närmar sig 47 dagar är automatisering inte längre valfritt; det är avgörande.
Den lucka som kvarstår är styrning. Enskilda ACME-klienter var inte utformade för att ge företagsteam insyn i en maskinpark, genomdriva konsekventa policyer eller integrera med de övervaknings- och varningssystem som produktionsinfrastrukturen är beroende av.
CertSecure-hanterare fyller det tomrummet, och CBOM-säkerhet, PKI-som-en-tjänstoch HSM-som-en-tjänst utöka plattformen till en komplett kryptografisk säkerhetsstack för företag.
Om du vill stärka din certifikatautomatisering, skärpa styrningen eller bara ligga steget före övergången till kortare giltighetsperioder för certifikat, kontakta KrypteringskonsultingVi hjälper organisationer i varje steg av den resan, från den första ACME-distributionen till företagsomfattande hantering av certifikatlivscykeln.
- Vad är SSL/TLS-certifikat
- Det traditionella problemet med certifikathantering
- Vad är ACME och varför skapades det
- Hur ACME-klienter på Linux implementerar certifikatautomation
- Var SSL/TLS-certifikat lagras på Linux
- ACME-valideringsmetoder på Linux
- Populära ACME-klienter på Linux och deras skillnader
- Certbot vs acme.sh på Linux: En praktisk jämförelse
- ACME-klienter på Linux utöver webbplatser: API:er och interna tjänster
- Säkerhetsöverväganden vid användning av ACME-klienter på Linux
- Utmaningar med att hantera ACME på företagsnivå
- Varför företag behöver centraliserad ACME-hantering
- Hur krypteringskonsulting kan hjälpa
- Slutsats
