Text size
Ausprobiert & getestet6 Min. Lesezeit

HTTPS auf Autopilot mit Zertifikatsmanager

Die Lebensdauer der Zertifikate wird immer kürzer. Automatisierung ist nicht mehr optional.

HTTPS on autopilot with cert-manager
KI-generierte Illustration

Verfallene Zertifikate haben einige der peinlichsten Ausfälle in der Technologiegeschichte verursacht. Große Unternehmen, beliebte Apps, sogar Sicherheitsanbieter sind gefallen, weil jemand vergessen hat, ein Zertifikat zu erneuern. Es ist immer die gleiche Geschichte: eine Kalender-Erinnerung, die an jemanden ging, der gegangen ist, ein manueller Prozess, an den sich niemand erinnert hat.

Und das Problem wird immer schwieriger zu ignorieren, weil die Lebensdauer von Zertifikaten schnell abnimmt.

Wie TLS-Zertifikate einfach funktionieren

Wenn Sie mich besuchen https://shop.example.com, der Server sendet eine Zertifikat Das heißt "Ich bin shop.example.com", signiert von einem Zertifizierungsstelle (CA) Ihr Browser vertraut. Der Browser überprüft die Signatur, den Namen und das Verfallsdatum. Wenn alles in Ordnung ist, stellt es eine verschlüsselte Verbindung her.

Die Zertifikate verfallen absichtlich. Wenn ein privater Schlüssel gestohlen wird, ist ein Ablaufdatum ein Begrenzungszeitraum für den Missbrauch. Und kurze Lebenszeiten zwingen zur Automatisierung, was das gesamte System agiler macht.

Die Lebenszeiten schrumpfen .

Das CA/Browser Forum, das die Regeln für öffentliche Zertifikate festlegt, hat einen Zeitplan zur Verkürzung der maximalen Zertifikatsdauer von 398 Tagen genehmigt:

  • Ab März 2026: höchstens 200 Tage
  • Ab März 2027: höchstens 100 Tage
  • Ab März 2029: Höchstbetrag 47 Tage

Die Zeit, für die die Validierung der Domäne wiederverwendet werden kann, schrumpft ebenfalls. Let's Encrypt, das immer 90-Tage-Zertifikate ausgegeben hat, hat auch begonnen, viel kürzer lebende Zertifikate anzubieten.

Was dies in der Praxis bedeutet: Die manuelle Zertifikatsverlängerung stirbt. Nach 47 Tagen wird die manuelle Erneuerung von nur einer Handvoll Zertifikaten zu einem ständigen Ärger und zu einem Ausfall, der nur darauf wartet.

Wenn ein Mensch sich daran erinnern muss, ein Zertifikat zu erneuern, wird das Zertifikat schließlich ablaufen.

Wir verschlüsseln und ACME

Wir verschlüsseln. ist eine kostenlose, automatisierte CA, die das Web verändert hat: Sie erteilt Zertifikate über die ACME-Protokoll, mit dem Software die Kontrolle über eine Domain nachweisen und ein Zertifikat ohne menschliche Beteiligung erhalten kann.

Zwei häufige Möglichkeiten, Kontrolle zu beweisen:

  • HTTP-01: die CA bittet um eine Datei unter http://yourdomain/.well-known/acme-challenge/...- Ich weiß . Einfach, aber braucht Port 80 erreichbar und unterstützt keine Wildcards.
  • DNS-01: Sie erstellen einen TXT-Eintrag in DNS. Arbeitet für Wildcard-Zertifikate und interne Dienste, die nicht öffentlich zugänglich sind. Benötigt API-Zugriff auf Ihren DNS-Provider.

Es gibt auch andere ACME-Zertifizierungsstellen (ZeroSSL, Google Trust Services und viele kommerzielle Zertifizierungsstelle), und private Zertifizierungen können ACME für interne Zertifikate sprechen.

Einrichtung des Cert-Managers

Auf Kubernetes, Zertifizierungsmanager (ein CNCF-Projekt) ist die Standardmethode zur Automatisierung von Zertifikaten. Es fordert Zertifikate an, speichert sie in Kubernetes-Geheimnissen und erneuert sie lange bevor sie ablaufen.

Installieren Sie es:

helm install cert-manager oci://quay.io/jetstack/charts/cert-manager \
  --namespace cert-manager --create-namespace \
  --set crds.enabled=true

Erstellen Sie eine Emittent (hier Let's Encrypt mit DNS-01 auf Route 53, mit der Workload-Identität):

apiVersion: cert-manager.io/v1
kind: ClusterIssuer
metadata:
  name: letsencrypt
spec:
  acme:
    server: https://acme-v02.api.letsencrypt.org/directory
    email: platform@example.com
    privateKeySecretRef:
      name: letsencrypt-account-key
    solvers:
    - dns01:
        route53:
          region: eu-central-1

Anfordern Sie eine Bescheinigung:

apiVersion: cert-manager.io/v1
kind: Certificate
metadata:
  name: example-com
  namespace: infra
spec:
  secretName: example-com-tls
  issuerRef:
    name: letsencrypt
    kind: ClusterIssuer
  dnsNames:
  - example.com
  - "*.example.com"

Der Cert-Manager erstellt das Geheimnis und erneuert es automatisch (standardmäßig, wenn zwei Drittel der Lebensdauer abgelaufen sind). Verweise auf das Geheimnis von deinem Gateway oder Ingress und du bist fertig.

Es ist auch mit Gateway-API direkt: Annotation eines Gateways, und der Zertifikatsmanager erstellt Zertifikate für seine Zuhörer.

Tipp: Test gegen Let's Encrypt's Aufstellung Der Server zuerst. Der Produktionsserver hat Geschwindigkeitslimits, und eine falsche Konfiguration kann Sie für eine Weile ausschließen.

Über Kubernetes hinaus

  • Cloud-Zertifikatsmanager (AWS Certificate Manager, Google Certificate Manager und Azure Key Vault Zertifikate) Automatisieren von Zertifikaten für ihre Lastbalancer und CDNs.
  • - Das ist Caddy. und Verkehr Zertifikate automatisch erwerben und erneuern, integriert.
  • - Ich weiß. und Akme.sh für traditionelle Server.
  • Interner Zertifikat: Der Zertifikatsmanager kann als privater CA (Vault, step-ca, Cloud private CA) für mTLS und interne Dienste fungieren oder sich mit diesem verbinden.

Die Überwachungsbescheinigungen

Automatisierung kann stillschweigend versagen: DNS-Zugriffsrechte verfallen, die Geschwindigkeitsgrenzen werden erreicht, ein Webhook bricht. Die Verfallsdauer sollte immer überwacht werden:

  • Risikopositionen für den Zertifizierungsmanager Prometheus-Metriken Wie zum Beispiel certmanager_certificate_expiration_timestamp_seconds- Ich weiß . Warnen Sie, wenn eine Bescheinigung weniger als zwei Wochen hat.
  • Blackbox-Exporteur oder ein externes Betriebszeitinstrument kann das tatsächlich an jedem öffentlichen Endpunkt bereitgestellte Zertifikat überprüfen.
  • Transparenz der Zertifikate Logs zeigen jedes öffentliche Zertifikat, das für Ihre Domains ausgestellt wurde, nützlich, um unerwartete zu erkennen.

Also, wo fange ich an?

Schreiben Sie alle Zertifikate auf, die Sie heute von Hand erneuern. Sie können sie in den Certi-Manager, einen Cloud-Zertifikatsmanager oder einen Server mit integriertem ACME verschieben. Hinzufügen von Verfallswarnungen. Wenn die 47-Tage-Zertifikate ankommen, merken Sie es nicht einmal.

Meine Meinung: Zertifikate sollten sich selbst erneuern, wie Ihr Handy seine Uhr aktualisiert. Je kürzer sie werden, desto mehr ist das wahr.

Desly