SSL-Zertifikat-Generator
Identität
Zertifikat
Privater Schlüssel (geheim halten!)
Selbstsignierte Zertifikate werden von Browsern standardmäßig als nicht vertrauenswürdig eingestuft: nur für lokale Entwicklung, Tests oder private Netzwerke verwenden.
Erzeugen Sie ein selbstsigniertes Zertifikat für die lokale Entwicklung oder interne Tests, direkt in Ihrem Browser. Sie wählen die RSA-Schlüssellänge (2048, 3072 oder 4096 Bit), den Common Name, die Subject Alternative Names, den Gültigkeitszeitraum und grundlegende Organisationsangaben. Zertifikat und privater Schlüssel werden in Ihrem Browser erstellt und niemals an unseren Server gesendet; Sie laden beide als PEM-Dateien herunter, bereit für Nginx oder Apache.
So funktioniert die Zertifikatserzeugung
-
1
RSA-Schlüssellänge wählen
2048 Bit genügen für die meisten Tests; 3072 oder 4096 liefern einen größeren Schlüssel auf Kosten der Geschwindigkeit.
-
2
Subject und SANs eingeben
Common Name sowie jeden Hostnamen oder jede IP, die das Zertifikat abdecken soll (moderne Browser ignorieren den CN zugunsten der SANs).
-
3
Im Browser erzeugen
Ein selbstsigniertes Zertifikat wird erstellt und mit dem zugehörigen privaten Schlüssel signiert, komplett lokal in Ihrem Browser.
-
4
Ergebnis herunterladen
Ein PEM-codiertes Zertifikat (`cert.pem`) und der private Schlüssel in PEM (`key.pem`), bereit zur Installation.
Alles geschieht in Ihrem Browser
Dieser Generator läuft vollständig in Ihrem Browser. Das RSA-Schlüsselpaar wird lokal mit einer JavaScript-Krypto-Bibliothek erzeugt, das Zertifikat wird auf Ihrem Gerät signiert, und weder der private Schlüssel noch das Zertifikat werden jemals an unseren Server hochgeladen. Behandeln Sie den privaten Schlüssel dennoch als Geheimnis: Wer ihn besitzt, kann das Zertifikat missbrauchen.
Was selbstsigniert bedeutet
Sie sind zugleich Aussteller und Subject: Das Zertifikat wird mit dem eigenen privaten Schlüssel signiert, sodass keine öffentliche Zertifizierungsstelle (CA) für es bürgt. Deshalb zeigen Browser eine Warnung. Es eignet sich für Tests, lokale Entwicklung (localhost, dev.local) und interne Server, auf denen Sie das Zertifikat an die Clients verteilen können, die ihm vertrauen sollen.
Wenn Sie ein Zertifikat brauchen, dem das öffentliche Internet vertraut, ist dieses Tool nicht der richtige Schritt: Sie benötigen ein CA-signiertes Zertifikat (etwa von Let’s Encrypt oder einer kostenpflichtigen CA), was eine Zertifikatssignieranforderung (CSR) und eine Domain-Validierung erfordert, die dieses Browser-Tool nicht durchführt.
Was im Zertifikat steht
| Feld | Hinweise |
|---|---|
| Subject (CN, O, C) | Common Name, Organisation, Land |
| Subject Alternative Names | Jede abgedeckte Domain oder IP (entscheidend!) |
| Öffentlicher Schlüssel | RSA, abgeleitet aus dem erzeugten privaten Schlüssel |
| Aussteller | Gleich dem Subject, da selbstsigniert |
| Gültigkeit | Not Before / Not After (Ihre Gültigkeitstage) |
| Key Usage | digitalSignature, keyEncipherment |
| Extended Key Usage | serverAuth, clientAuth |
| Basic Constraints | CA:FALSE (ein Leaf-Zertifikat, keine CA) |
Ausgabedateien
key.pem, der private Schlüssel (schützen, Modus 0600)cert.pem, das selbstsignierte Zertifikat (öffentlich, verteilbar)
Für Nginx
server {
listen 443 ssl;
server_name example.com;
ssl_certificate /etc/ssl/certs/cert.pem;
ssl_certificate_key /etc/ssl/private/key.pem;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers HIGH:!aNULL:!MD5;
}
Für Apache 2.4+
<VirtualHost *:443>
ServerName example.com
SSLEngine on
SSLCertificateFile /etc/ssl/certs/cert.pem
SSLCertificateKeyFile /etc/ssl/private/key.pem
</VirtualHost>
Dem Zertifikat auf eigenen Rechnern vertrauen
Um die Browser-Warnung auf einem Rechner, den Sie kontrollieren, verstummen zu lassen, importieren Sie cert.pem in den Vertrauensspeicher dieses Systems oder Browsers. Tun Sie das nur für Zertifikate, die Sie selbst erzeugt haben, auf Geräten, die Ihnen gehören. Werkzeuge wie mkcert automatisieren eine lokale CA für mehrere Dienste; dieser Generator erzeugt jeweils ein einzelnes selbstsigniertes Zertifikat.
Wofür selbstsigniert nicht taugt
- Öffentliche Websites. Nutzer sehen eine Warnung, und viele springen ab.
- Integrationen mit Drittanbieter-APIs. Die meisten Clients lehnen unbekannte Aussteller ab.
- Produktion. Auf keinen Fall. Verwenden Sie Let’s Encrypt (kostenlos) oder eine kostenpflichtige CA für alles im offenen Internet.
Häufig gestellte Fragen
Nein. Das Schlüsselpaar und das Zertifikat werden in Ihrem Browser erzeugt und bleiben auf Ihrem Gerät; nichts wird hochgeladen. Halten Sie die heruntergeladene Datei key.pem dennoch geheim, denn wer sie besitzt, kann das Zertifikat missbrauchen.
Nein, wenn sich Dritte verbinden. Browser zeigen eine deutliche Warnung. Verwenden Sie ein CA-signiertes Zertifikat einer kostenlosen (Let’s Encrypt, ZeroSSL) oder kostenpflichtigen CA. Selbstsigniert ist in Ordnung für Maschine-zu-Maschine in einem internen Netz, in dem Sie beide Enden kontrollieren.
Früher enthielt der CN die primäre Domain. Moderne Browser ignorieren den CN bei der Host-Validierung und nutzen nur die SANs. Tragen Sie stets jeden Hostnamen in die SANs ein; setzen Sie den CN nur zur menschenlesbaren Kennzeichnung auf die primäre Domain.
Ja, tragen Sie *.example.com in die SANs ein. Es deckt eine Ebene von Subdomains ab. Für mehrere Ebenen fügen Sie mehrere Wildcards hinzu (*.example.com und *.dev.example.com).
Verwandte Tools
AES Verschlüsseln / Entschlüsseln
Verschlüsseln und entschlüsseln Sie risikoarmen Text mit AES-OpenSSL-Chiffren. Das Passwort wird mit SHA-256 gehasht, die Base64-Ausgabe enthält IV plus Chiffretext.
bcrypt-Hash-Generator
Generieren Sie bcrypt-Hashes oder überprüfen Sie ein Klartext-Passwort gegen einen vorhandenen bcrypt-Hash. Generieren und überprüfen Sie nebeneinander in einem Tool.
A1Z26-Code-Encoder
Text mit dem A1Z26-Code (A=1, B=2, ... Z=26) codieren oder eine Zahlenfolge zurück in Buchstaben decodieren, mit anpassbarem Trennzeichen.
Caesar-Chiffre-Encoder
Verschlüsseln und entschlüsseln Sie Text mit der Caesar-Verschlüsselung. Jede Verschiebung 1-25, unterstützt ROT13 als Sonderfall, bewahrt Interpunktion und Groß-/Kleinschreibung.
Base32-Encoder/Decoder
Base32-Strings mit dem RFC 4648-Alphabet kodieren und dekodieren. Nützlich für TOTP-Geheimnisse, groß-/kleinschreibungsunempfindliche Tokens und von Menschen eingegebene Identifikatoren.
bcrypt-Generator
Generieren Sie einen bcrypt-Hash aus einem Klartextpasswort. Anpassbarer Kostenfaktor von 4 bis 13, kompatibel mit Laravel, Django, Node und PHP.