SSL Automatisering
Kubernetes med cert-manager
cert-manager er allerede den klient, klyngen bruger. Opsætningen handler om at pege den på en CA, der udsteder certifikater, I kan stå inde for over for kunder og revision.
Klyngen henter selv, men den henter fra en gratis udsteder
Et certifikat i Kubernetes er en Secret, som Ingress refererer, og som pods monterer. Den del kører allerede. Det, der som regel mangler, er en kommerciel CA med organisationsvalidering og en aftale bag, uden at klyngen skal hente certifikaterne et andet sted fra end den plejer.
Hvad den genererede opsætning gør
Guiden skriver en ClusterIssuer med FairSSL som ACME-server og med externalAccountBinding. HMAC-nøglen lægges i en Secret, og Certificate-objekterne henviser til issueren på samme måde som før.
- Opretter en Secret med EAB HMAC-nøglen i cert-manager-namespacet.
- Opretter en ClusterIssuer, der peger på FairSSL ACME-serveren.
- Certificate-objektet navngiver den Secret, certifikatet skal ligge i.
- cert-manager fornyer og udskifter Secreten på plads.
Hvor certifikatet ender
I en TLS Secret med det navn, du sætter i secretName. Ingress refererer den Secret, og cert-manager skriver det fornyede certifikat ind i den samme Secret, så manifesterne ikke skal ændres. Certificate-objektet står som Ready, når det er på plads.
Det her skal du vide på forhånd
Brug cert-manager v1.21 eller nyere med feature gate ACMEUseARI slået til, hvis du vil have ARI. Når issueren er en ClusterIssuer, skal EAB-Secreten ligge i cert-manager-namespacet og ikke i applikationens eget. Vælger du en http01-solver, skal ingress controlleren stadig kunne nås på port 80 udefra: det er kun dns01 med AutoDNS, der fjerner det krav.
Vejledninger til den her platform
Understøttede versioner
Guiden i kontrolpanelet er skrevet til disse versioner. Kører du en ældre version end den, der står her, så spørg os, før du bestiller.
| Platform | Versioner | Kører på | ACME-klient |
|---|---|---|---|
| Kubernetes | VersionerGuiden sætter ingen versionsgrænse | Kører påKubernetes-clusteret | ACME-klientcert-manager, ARI fra v1.21 med feature gate ACMEUseARI |
Validering uden at åbne noget ind til serveren
En ACME-klient, der validerer over HTTP, kræver port 80 åben ind til serveren. En klient, der validerer over DNS, kræver en API-nøgle til din DNS-udbyder, og den nøgle ligger så på serveren med skriveadgang til din zone. Interne servere og appliances kan sjældent nogen af delene.
Den ene CNAME du opretter per domæne
_dnsauth.<domain> CNAME <hash>.autodns.fairssl.dk
Du opretter den én gang per registreret domæne. FairSSL skriver CA’ens valideringsrecord i vores egen zone, og du rører ikke din DNS igen ved fornyelse.
Én record per domæne
Wildcards, SAN-navne og nye underdomæner på det samme registrerede domæne bruger den samme CNAME viderestilling.
Ingen DNS-nøgler på serveren
Klienten får aldrig adgang til din DNS-zone. En kompromitteret server kan derfor ikke ændre dine DNS-records.
Udgående HTTPS, ingen indgående regel
Serveren skal kunne kalde fairssl.dk over HTTPS. Der skal ikke åbnes en indgående regel i firewallen, og serveren behøver ikke en offentlig adresse.
Hvad der bliver overvåget, når klienten kører
En automatisering, der går i stå uden at sige det, er værre end en fornyelse i kalenderen. Vi måler derfor både certifikatet og den klient, der skal forny det.
Fornyelsesvindue hver time
Vi spørger CA’en via ARI, hvornår certifikatet bør fornyes, og tjekker hver time. Svarer CA’en ikke, falder vi tilbage til 21 og 7 dage før udløb.
Klienten holder op med at melde sig
Halveres en klients check-in-frekvens, sender vi en advarsel. Et certifikat kan være gyldigt længe efter, at den klient, der skulle forny det, er holdt op med at køre.
Om installationen lykkedes
Windows-klienten melder resultatet af installationen tilbage. Et certifikat, der er udstedt, men ikke bundet til sitet, tæller som en fejl.
E-mailalarmer per profil
Alarmer sættes op per profil, så drift og udvikling kan få besked på hver sin adresse.
Overvågnings-API
Status kan hentes som JSON eller læses direkte af PRTG og Prometheus, så certifikaterne står i det overvågningssystem, I allerede kigger på.
Certifikater uden automatisering
Certifikater, der ikke kører automatisk, får udløbsmail 28 dage og 7 dage før udløb.
Hvad automatiseringen koster
Gebyret betales per hovedcertifikat, per år, oveni prisen på selve certifikatet.
Kortere levetid betyder flere udstedelser om året. Antallet af udstedelser ændrer ikke prisen: du betaler for certifikatet under administration, ikke per fornyelse.
- Op til 25 servere, der bruger certifikatet, er med i gebyret. Hver server får sit eget genudstedte certifikat.
- Genudstedelser koster ikke ekstra.
- Ændringer i SAN-navnene på certifikatet koster ikke ekstra.
- Flere ACME-klienter, der bruger det samme certifikat, koster ikke ekstra.
Et certifikat mere prissættes for sig: certifikatets egen pris plus gebyret for et år.
Regneeksempel og prisdetaljer →Fra bestilling til et certifikat, der fornyer sig selv
Trin tre er det, der ikke findes i en generisk ACME-vejledning: opsætningen bliver skrevet til din platform.
- 1
Bestil certifikatet i kontrolpanelet og slå automatisering til på det.
- 2
Opret CNAME viderestillingen for domænet. Én gang per registreret domæne.
- 3
Vælg din platform i guiden. Portalen skriver opsætningskommandoen med kontonøgle og domæner sat ind, og du kopierer den med én knap.
- 4
Kør kommandoen på serveren. Klienten henter certifikatet, installerer det og fornyer det derefter selv.
Klienten til Windows pakker vi selv og bygger dagligt. Linux og macOS bruger stock lego, som den genererede kommando kalder. Hent Windows-klienten
Kom i gang i kontrolpanelet →Support på mail og telefon er gratis før, under og efter installationen. Fjerninstallation er et tilkøb til fast pris.
Find din platform
Guiden i kontrolpanelet skriver opsætningen til den platform, du vælger, med kontonøgle og domæner sat ind. Du kopierer den med én knap og kører den på serveren.
Windows
Simple-ACME i FairSSL-udgaven henter certifikatet, installerer det i certifikatlageret og binder det til sitet eller tjenesten.
IIS 8+, IIS 6-7.5, Exchange, RDS, ADFS, WAP, SQL Server, PRTG, Dynamics NAV/BC, Tomcat
Se opsætningen →Linux
Stock lego med FairSSL som ACME-server. Den genererede kommando skriver certifikatet og reloader tjenesten bagefter.
nginx, Apache, HAProxy, Traefik, Caddy, Postfix, lego
Se opsætningen →macOS
Lego, med den samme opsætning som på Linux.
lego
Appliances
FortiGate 7.6.3 og F5 BIG-IP 21.1.0 og nyere taler ACME selv. Ældre versioner og de øvrige bokse henter certifikatet gennem en agent eller en enrollment-URL.
FortiGate, FortiMail, FortiWeb, NetScaler ADC, F5 BIG-IP, Kemp LoadMaster, Cisco ASA, Cisco FDM, Kubernetes cert-manager
Se opsætningen →Det her er ikke med
Guiden skriver ikke en opsætning til pfSense, Synology, Palo Alto eller Sophos. Kører du en af dem, så spørg os før du køber, så vi kan se på, hvad der kan lade sig gøre.
Certifikater på mange servere og appliances
Et offentligt SSL-certifikat kan højst være gyldigt i 199 dage nu, 99 dage senest 15-03-2027 og 46 dage senest 15-03-2029. Hvert certifikat skal dermed skiftes mindst to gange om året nu og mindst otte gange om året fra 2029, på hver server, firewall og load balancer, det bruges på. sslbrain fra FairSSL kører som en appliance i jeres eget netværk og fornyer og installerer certifikaterne fra ét sted, også på udstyr uden agent.
Sådan fornyer og installerer sslbrain certifikater automatisk(åbner sslbrain.com i en ny fane)