Lokale HTTPS-Zertifikate mit mkcert

Lokale HTTPS-Zertifikate für Browser, Netzwerkgeräte und Weboberflächen – inklusive macOS, Firefox und lokaler CA.

Zur Installation

Was ist mkcert?

mkcert ist ein Werkzeug zur Erstellung lokaler HTTPS-Zertifikate für Entwicklungsumgebungen, Netzwerkgeräte und lokale Weboberflächen.

Statt selbstsignierter Zertifikate mit ständigen Browserwarnungen erzeugt mkcert eine lokale Zertifizierungsstelle (CA), die vom eigenen System und Browser als vertrauenswürdig eingestuft wird.

Dadurch lassen sich lokale HTTPS-Verbindungen komfortabel und sicher nutzen – beispielsweise für Shelly-Geräte, TerraMaster NAS-Systeme, Home Assistant oder andere lokale Dienste.

Warum mkcert verwenden?

Weniger Browserwarnungen

Lokale Zertifikate werden als vertrauenswürdig erkannt und vermeiden HTTPS-Warnmeldungen.

Einfache Einrichtung

Zertifikate lassen sich schnell für lokale Geräte und IP-Adressen erstellen.

Ideal für lokale Geräte

Geeignet für Shelly, TerraMaster, Home Assistant und lokale Webdienste.

Installation unter macOS

Homebrew installieren

Falls Homebrew noch nicht installiert ist:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

Danach Terminal neu öffnen.

mkcert installieren

Installation von mkcert inklusive Firefox-Unterstützung:

brew install mkcert
brew install nss
mkcert -install

Dabei wird automatisch eine lokale Zertifizierungsstelle erstellt.

Installation unter Windows

winget prüfen

winget ist unter aktuellen Windows-Versionen häufig bereits installiert.

Installation prüfen:

winget --version

Falls winget nicht vorhanden ist, kann der Microsoft App Installer nachinstalliert werden:

Microsoft App Installer öffnen →

Nach der Installation steht winget systemweit zur Verfügung.

mkcert installieren

Installation von mkcert inklusive Firefox-Unterstützung:

winget install FiloSottile.mkcert
winget install Mozilla.NSS
mkcert -install

Dadurch wird automatisch eine lokale Zertifizierungsstelle erstellt und – falls NSS installiert ist – zusätzlich in Firefox eingebunden.

Zertifikate erstellen

Beispiel für ein Zertifikat für eine lokale IP-Adresse:

mkcert 192.168.178.20

Alternativ können auch Hostnamen verwendet werden:

mkcert shellyplug.local

Mein persönlicher Tipp:

mkcert shellyplug shellyplug.local 192.168.178.20 2001:db8:178:20::1
  • shellyplug → Kurzname des Geräts
  • shellyplug.local → lokaler Hostname für DNS/mDNS
  • 192.168.178.20 → Zugriff per IPv4-Adresse
  • 2001:db8:178:20::1 → Zugriff per IPv6-Adresse

mkcert erstellt anschließend:

  • Zertifikat (.pem)
  • Privaten Schlüssel (.pem)

Diese Dateien können anschließend in kompatible Geräte oder Webserver importiert werden.

Firefox & Browser-Hinweise

Firefox-Unterstützung

Firefox verwendet standardmäßig einen eigenen Zertifikatsspeicher.

Deshalb wird zusätzlich das Paket nss benötigt, damit mkcert Zertifikate automatisch auch in Firefox importieren kann.

macOS Schlüsselbund

Unter macOS werden Zertifikate zusätzlich im Schlüsselbund gespeichert.

Dadurch funktionieren lokale HTTPS-Zertifikate auch systemweit in Safari, Chrome und anderen Browsern.

Windows Zertifikatsspeicher

Unter Windows wird die lokale Zertifizierungsstelle im Zertifikatsspeicher des Systems installiert.

Dadurch funktionieren lokale HTTPS-Zertifikate systemweit unter anderem in Edge, Chrome und vielen Anwendungen.

Lokale CA auf mehreren Systemen verwenden

CA-Speicherort anzeigen

mkcert speichert die lokale Zertifizierungsstelle im sogenannten CAROOT-Verzeichnis.

mkcert -CAROOT

Dort befinden sich unter anderem:

  • rootCA.pem
  • rootCA-key.pem

Die Datei rootCA-key.pem enthält den privaten Schlüssel der Zertifizierungsstelle und sollte besonders geschützt werden.

CA auf weitere Rechner übertragen

Soll ein zweiter eigener Rechner Zertifikate mit exakt derselben lokalen Zertifizierungsstelle ausstellen, kann der komplette CAROOT-Ordner auf diesen Rechner übertragen werden. Dazu gehören rootCA.pem und rootCA-key.pem.

Der private Schlüssel rootCA-key.pem ermöglicht das Ausstellen beliebiger Zertifikate dieser CA. Übertragen Sie ihn deshalb ausschließlich verschlüsselt und nur auf eigene, vollständig vertrauenswürdige und geschützte Systeme.

Führen Sie anschließend auf dem zweiten Rechner mkcert -install aus. Geräte, die der CA lediglich vertrauen, aber selbst keine Zertifikate ausstellen sollen, erhalten dagegen ausschließlich das öffentliche rootCA.pem.

Typische Einsatzbereiche

Shelly HTTPS

HTTPS-Zertifikate für Shelly Gen3 und Plus Geräte.

TerraMaster NAS

HTTPS-Zertifikate für TerraMaster NAS-Systeme mit TOS-Betriebssystem.

Lokale Webdienste

HTTPS für lokale Weboberflächen, APIs und interne Netzwerkdienste.

Wichtige Hinweise

Die lokale Zertifizierungsstelle sollte ausschließlich innerhalb des eigenen Netzwerks verwendet werden.

Private Schlüssel dürfen niemals öffentlich weitergegeben oder auf unsicheren Systemen gespeichert werden.

Für öffentlich erreichbare Webseiten sollten stattdessen reguläre Zertifikate von offiziellen Zertifizierungsstellen verwendet werden.

Unterstützung anfragen

Ein kurzer Satz zu Ihrem Anliegen genügt. Bei einem Rückrufwunsch nennen Sie bitte auch Ihre Telefonnummer.

Das Formular wird vorbereitet …

Direkter Kontakt

Gerne unterstützen wir Sie bei lokalen HTTPS-Zertifikaten, Browser-Problemen und Netzwerkgeräten.

info@bs-kom.de

+49 (0) 177 4940105

Vor Ort in Kerpen, München und Umgebung sowie deutschlandweit per Remote-Unterstützung.