Ein selbst signiertes SSL Zertifikat ist ein schneller und kostenloser Weg, deine Webaplikationen mittels SSL abzusichern. Vielleicht betreibst du zuhause eine HA Bridge auf einem Windows-Server, um damit eine Phillips Hue-Bridge zu emulieren und ein Amazon Echo nahtlos in deine Hausautomationssysteme zu integrieren.
Diese Anleitung zeigt dir, wie man mit Hilfe des Zertifikatsverwaltungstools Java Keytool einen öffentlichen Schlüssel auf dem Java-Server einrichtet und die Installation des neu ausgestellten SSL-Zertifikats.
Ein selbst signiertes Zertifikat bietet die volle Verschlüsselung wie ein gekauftes Zertifikat. Da jedoch die Authentizität des Ausstellers nicht geprüft werden kann, sehen Besucher einer so abgesicherten Seite eine Browser-Warnung, die das Zertifikat als nicht vertrauenswürdig einstuft. Wie du deine selbst signiertes Zertifikat auf deinem PC zu den vertrauenswürdigen Zertifizierungen hinzufügst, zeige ich in einem anderen Beitrag.
Zunächst muss das Befehlszeilenprogramm Keytool aber gefunden werden. Unter Windows befindet es sich meist im Bin-Ordner der Java-Installation, beispielsweise „C:\Program Files\Java\jre8\bin“. Öffne die Eingabeaufforderung (CMD) und navigiere in den Ordner von Keytool. Wichtig ist, dass du die Rufe die Eingabeaufforderung als Administrator ausführst, sonst hast du keine Schreibrechte, um das Zertifikat zu erzeugen. Rufe das Keytool-Hilfe auf, um zu sehen, ob das Schlüssel- und Zertifikatsverwaltungsprogramm verfügbar ist:
keytool -help
Mit dem folgenden Befehl erstellst du einen einen Keystore mit Eintrag (Alias) von Schlüssel und Zertifikat. Ersetze <password> mit deinem Passwort für den Zugriff auf den Keystore bzw. Alias und die SSL-Konfiguration der HA Bridge. Gebe die Gültigkeitsdauer in Tagen an (im folgenden Beispiel 10 Jahre):
keytool -genkey -keyalg RSA -alias selfsigned -keystore keystore.jks -storepass <password> -validity 3650 -keysize 2048
Nach Bestätigung mit Enter wird Name und Organisation abgefragt und, ob Keystore und Alias gleiche Passwörter haben. Wir bestätigen die Angaben mit Enter – das war’s (die Warnung zum proprietären JKS-Format können wir ignorieren). Es befindet sich nun eine Datei keystore.jks im gleichen Ordner der Java-Installation. Diese kopieren wir in das Data-Verzeichnis de HA Bridge.
keytool -export -alias selfsigned -file selfsigned.cer -keystore keystore.jks
Mit diesem Befehl exportiertst du ein Certifigak in den BIN-Pfad.
Importiere das Zertifikat in die Zertifikatsverwaltung des Computers bzw. des Internetbrowsers, falls dieser einen eigenen Zertifikatspeicher verwendet.
Rufe die Windows-Systemsteuerung auf, klicke auf „Netzwerk und Internet“ und dann auf „Internetoptionen“.
Klicke auf die Registerkarte „Inhalte“ und dann auf „Zertifikate“. Jetzt öffnet sich das Fenster „Zertifikate“. Klicke im Fenster „Zertifikate“ auf die Registerkarte „Vertrauenswürdige Stammzertifizierungsstellen“. Dann auf „Importieren…“. Jetzt öffnet sich das Fenster „Zertifikatimport-Assistent“. Klicke im Fenster „Zertifikatimport-Assistent“ auf „Weiter“. Klicke auf „Durchsuchen“ und wähle die Datei mit dem Zertifikat („boxcert.cer“) aus. Klicke auf „Weiter“, noch einmal auf „Weiter“ und danach auf „Fertig stellen“. Jetzt öffnet sich das Fenster Sicherheitswarnung“. Klicke im Fenster „Sicherheitswarnung“ auf „Ja“ und zum Beenden des Zertifikatimport-Assistenten auf „OK“.