# OPNsense Certificate Management: PKI & ACME Automation

TL;DR / Management Summary Ein korrektes Zertifikats-Management ist die Basis für sicheres VPN (Artikel 567) und verschlüsseltes Web-Management. OPNsense bietet einen integrierten Trust Store, der sowohl als lokale Zertifizierungsstelle (CA) fungieren kann als auch externe Zertifikate (z.B. von Let’s Encrypt) via ACME-Client verwaltet. Ein Senior Admin automatisiert den Zertifikats-Lifecycle, um “Expired Certificate” Warnungen und damit verbundene Downtimes der VPN-Infrastruktur zu vermeiden.


# 1. Einführung & Trust-Struktur

Die Hierarchie der Sicherheit.

In OPNsense unterteilen wir in:

  1. Authorities (CAs): Die Wurzel des Vertrauens. Kann intern erstellt oder importiert werden.
  2. Certificates: Die eigentlichen End-Zertifikate für Server oder User.
  3. Revocation (CRL): Listen für gesperrte Zertifikate.

# 2. OPNsense als interne CA

Identität für das LAN.

Wenn Sie Zertifikate für interne Dienste (z.B. ein Proxmox-Cluster im LAN) benötigen:

  1. System -> Trust -> Authorities: Neue CA erstellen.
  2. System -> Trust -> Certificates: Zertifikat von dieser CA signieren lassen.
  3. Wichtig: Exportieren Sie das CA-Zertifikat und installieren Sie es auf allen Firmen-PCs (Artikel 490), damit diese den internen Zertifikaten vertrauen.

# 3. Deep Dive: ACME & Let’s Encrypt

Kostenlose Zertifikate vollautomatisch.

Das Plugin os-acme-client ist ein Pflicht-Install für jede Firewall.

  1. Accounts: Registrieren Sie sich bei Let’s Encrypt (mit Ihrer Email).
  2. Validation: Wählen Sie zwischen:
    • HTTP-01: Einfach, erfordert Port 80 am WAN.
    • DNS-01 (Empfohlen): OPNsense erstellt via API (Cloudflare, AWS) temporär einen TXT-Record. Kein offener Port nötig!
  3. Certificates: Definieren Sie Ihre Domain (z.B. vpn.firma.de).
  4. Automation: Verknüpfen Sie das Zertifikat mit dem Web-GUI oder HAProxy (Artikel 564).

# 4. Day-2 Operations: Zertifikats-Export

Zertifikate sicher verteilen.

# VPN User Zertifikate

Exportieren Sie Zertifikate für User immer im PKCS#12 (.p12) Format.


# 5. Troubleshooting & “War Stories”

Wenn das Vertrauen bricht.

# Top 3 Fehlerbilder

  1. Symptom: “Certificate Expired” Warnung, obwohl ACME aktiv ist.

    • Ursache: Die DNS-API Validierung schlug fehl (z.B. API-Key bei Cloudflare abgelaufen).
    • Lösung: Services -> ACME Client -> Log File prüfen.
  2. Symptom: VPN-Einwahl schlägt fehl nach Zertifikats-Tausch.

    • Ursache: Der VPN-Server nutzt noch das alte Zertifikat.
    • Fix: In den VPN-Settings das neue Zertifikat in der Dropdown-Liste auswählen.
  3. Symptom: “Self-signed certificate” Warnung im Browser trotz Let’s Encrypt.

    • Ursache: OPNsense nutzt für die eigene GUI noch das Standard-Zertifikat.
    • Lösung: System -> Settings -> Administration -> SSL Certificate auf das ACME-Zertifikat umstellen.

# “War Story”: Die “Stumme” Root-CA

Ein Admin erstellte eine interne Root-CA mit einer Gültigkeit von nur 1 Jahr. Das Ergebnis: Ein Jahr später fielen alle VPN-Verbindungen gleichzeitig aus. Da die Root-CA abgelaufen war, waren alle davon signierten User-Zertifikate sofort ungültig. Eine Erneuerung der Root-CA erforderte den manuellen Re-Import des neuen CA-Zertifikats auf 500 Home-Office Laptops. Lehre: Root-CAs sollten eine lange Gültigkeit haben (10-20 Jahre). Nutzen Sie für kurzlebige Zertifikate eine Intermediate CA.


# 6. Monitoring & Reporting

Ablaufdaten im Blick.

# Expiration Dashboard

Das Lobby-Dashboard Widget “Certificates” zeigt alle Zertifikate und deren Restlaufzeit.


# 7. Fazit & Empfehlung

Zertifikatsmanagement ist kein “Einmal-Setup”.


# Anhang: Cheatsheet

Aufgabe Pfad
CA erstellen System -> Trust -> Authorities
Let’s Encrypt Services -> ACME Client
Zertifikat löschen System -> Trust -> Certificates
CRL erstellen System -> Trust -> Revocation

# Referenzen