Veröffentlicht:

Eigene CA im Homelab mit OPNSense – einfach erklärt

.

Eigene CA im Homelab mit OPNSense – einfach erklärt Foto von Marco Griep - Canva

Geschrieben von Marco Griep


Eigene CA im Homelab mit OPNSense – einfach erklärt

Wer ein Homelab betreibt – sei es zum Testen von Diensten, dem Hosten eigener Webanwendungen oder zum Experimentieren mit Netzwerkarchitekturen – kennt das Problem: Viele Dienste setzen auf HTTPS oder benötigen Zertifikate zur Authentifizierung. Doch ohne eine offizielle, vertrauenswürdige Zertifizierungsstelle (CA) enden viele Setups schnell in nervigen Zertifikatswarnungen.

Ich hoste z.B. mein Vaultwarden zu Hause selbst und greife nur per VPN auf meinen Tresor zu, Vaultwarden (Bitwarden) benötigt aber zwingend ein SSL Zertifikat.

Hier kommt OPNSense ins Spiel. Neben ihrer Rolle als leistungsfähige Firewall und Router-Plattform bietet OPNSense eine integrierte Public Key Infrastructure (PKI)-Verwaltung. Damit kann man in wenigen Minuten eine eigene Certificate Authority (CA) aufbauen, Zertifikate ausstellen und diese zentral verwalten – alles über das Webinterface.

Meiner Meinung nach ist die OPNSense die einfachste Methode um im Homelab eine Zertifizierungsstelle zu betreiben

In der Vergangenheit habe ich diverse PKI wie EJBCA oder OpenXPKI ausprobiert, diese bringen jedoch eine massive Kompexität mit und sind eigentlich viel zu aufwendig für ein HomeLab. Das einzig brauchbare das ich gefunden hatte war von Univention der UCS Server, auch dieser bringt eine eigene Lösung mit. Für meine Zwecke ist die OPNSense vollkommen ausreichen und bietet mir noch den Vorteile eine Firewall zu Hause zu haben mit der ich auch eine DMZ betreiben kann.

In diesem Artikel zeige ich dir Schritt für Schritt, wie du mit OPNSense deine eigene CA einrichtest, Zertifikate erzeugst und sie in Windows importierst, damit sie als vertrauenswürdig erkannt werden.


Warum eine eigene CA im Homelab sinnvoll ist

Viele Homelabs bestehen aus internen Diensten wie Proxmox, TrueNAS, Home Assistant oder Grafana. Diese laufen meist unter privaten IPs oder Domains wie grafana.lab.lan.

Da öffentliche CAs (z. B. Let’s Encrypt) keine Zertifikate für interne Domains ausstellen, ist eine eigene CA im Homelab notwendig.

Vorteile einer eigenen CA:

  • Ausstellung von Zertifikaten für interne Domains und IPs
  • Volle Kontrolle über Laufzeiten, Schlüssel und Signaturen
  • Kein Internetzugang für Zertifikatserstellung erforderlich
  • Einheitliche Vertrauenskette im gesamten Heimnetz
  • Einfache Integration in Windows, Linux und macOS

Und das Beste: Wenn du OPNSense ohnehin als Firewall nutzt, brauchst du keine zusätzliche Software – die Funktion ist schon eingebaut.


Schritt 1: Eine neue CA in OPNSense anlegen

Melde dich im OPNSense-Webinterface an (standardmäßig über https://192.168.1.1 oder deine eigene IP).

  1. Navigiere zu:
    System → Trust → Authorities
  2. Klicke auf Add (Hinzufügen).
  3. Im Formular wähle:
    • Method: Create an internal Certificate Authority
    • Descriptive Name: Home-CA
    • Key Type: RSA
    • Key Length: 4096 bit
    • Digest Algorithm: SHA256
    • Lifetime: 3650 Tage (10 Jahre)

OPNSense CA erstellen

  1. Unter „Distinguished Name“ trägst du ein:

    • Country Code: DE
    • State/Province: dein Bundesland
    • City: dein Ort
    • Organization: Home
    • Common Name: Home Root CA
  2. Save klicken.

Damit hast du in weniger als zwei Minuten deine eigene Root-CA angelegt. Diese CA ist nun die Grundlage, um Zertifikate für alle internen Systeme auszustellen.


Schritt 2: Ein neues Zertifikat oder CSR erstellen

Nun können wir ein Zertifikat für z. B. einen internen Server oder Dienst erstellen.

Variante A – Zertifikat direkt in OPNSense erstellen

Die einfachste Methode ist, das Zertifikat direkt in OPNSense zu erstellen. Alternativ könnt ihr auch auf dem Server, auf dem der Dienst läuft, einen Certificate Signing Request (CSR) generieren und diesen anschließend in OPNSense signieren lassen. Diese zweite Variante eignet sich vor allem für Umgebungen, in denen die Serveradministration und die Verwaltung der Zertifizierungsstelle (CA) getrennt sind – beispielsweise, wenn die CA von einer anderen Abteilung betreut wird.

  1. Gehe zu:
    System → Trust → Certificates
  2. Klicke auf Add.
  3. Wähle bei Method: „Create an internal certificate“.
  4. Unter Certificate Authority wähle deine CA (Home-CA).
  5. Trage ein:
    • Descriptive Name: passwords.lab.lan
    • Common Name: passwords.lab.lan
    • Type: Server Certificate
    • Alternative Names (SAN): passwords.lab.lan, 192.168.1.10

Neues Zertifikat erstellen OPNSense

Achte darauf, dass die im Common Name und unter Alternative Names (SAN) angegebenen Hostnamen oder IP-Adressen auch tatsächlich über dein internes DNS auflösbar sind. Nur so kann das Zertifikat später korrekt vom Browser oder Client erkannt und als gültig eingestuft werden. Sofern Ihr auf die schnelle einen DNS Server benötigt, könnt Ihr Bind9, UCS Server oder einfach ein AdGuard Home (DNS Umschreibungen) verwenden.

  1. Save klicken.

Das Zertifikat und der private Schlüssel werden automatisch erzeugt. Anschließend kannst du sie herunterladen und auf deinem Server einspielen.


Variante B – CSR importieren und signieren

Falls dein Server oder NAS bereits einen Certificate Signing Request (CSR) erstellt hat:

  1. Gehe zu System → Trust → Certificates.
  2. Klicke auf Add.
  3. Wähle Method: „Import an existing Certificate Signing Request“.
  4. Füge den CSR-Inhalt ein.
  5. Wähle als CA: Home-CA.
  6. Klicke auf Sign.

So kannst du Zertifikate für Geräte signieren, die ihren eigenen privaten Schlüssel behalten sollen – etwa NAS-Systeme oder Webserver.


Schritt 3: Die CA in Windows importieren

Damit dein Windows-PC den Zertifikaten deiner neuen CA vertraut, musst du das CA-Zertifikat importieren.

CA-Zertifikat exportieren

  1. Gehe zu System → Trust → Authorities.
  2. Klicke auf das Export-Symbol bei deiner Home-CA.
  3. Lade nur das Certificate (.crt) herunter – nicht den privaten Schlüssel!

Import unter Windows

  1. Öffne die Windows-Managementkonsole mit Win + R → mmc.
  2. Gehe zu Datei → Snap-In hinzufügen/entfernen.
  3. Wähle Zertifikate → Computerkonto → Lokaler Computer.
  4. Öffne im linken Menü:
    Zertifikate (Lokaler Computer) → Vertrauenswürdige Stammzertifizierungsstellen → Zertifikate.
  5. Rechtsklick → Alle Aufgaben → Importieren.
  6. Wähle die Home-CA.crt und importiere sie.

Nach dem Import wird dein System den Zertifikaten dieser CA vertrauen. Browser wie Chrome oder Edge zeigen keine HTTPS-Warnungen mehr für deine internen Seiten.


Optional: Automatischer Import per PowerShell

Wenn du mehrere Geräte im Netzwerk hast, kannst du den Import auch automatisieren:

Import-Certificate -FilePath "C:\Zertifikate\Home-CA.crt" -CertStoreLocation "Cert:\LocalMachine\Root"

Führe diesen Befehl mit Administratorrechten aus – und das Zertifikat landet direkt im richtigen Speicherort.

Gerade im Homelab ist das ein echter Gamechanger: Du kannst Zertifikate für all deine internen Systeme ausstellen, zentral verwalten und sogar automatisch erneuern lassen. Das ganze ohne hohe Kompexität.

Wenn du also eine OPNSense nutzt, hast du bereits alles, was du für eine saubere und sichere interne PKI-Infrastruktur brauchst – kostenlos, sicher und komfortabel.