Ziel: Ich möchte, dass diese URL (https://localhost:8083) mein selbstsigniertes Zertifikat auf meiner lokalen Maschine verwendet.Wie wird https: // localhost: port ein selbstsigniertes Zertifikat in Embedded Jetty verwendet?
Zuerst habe ich diese URL referenziert (https://gist.github.com/oslego/f13e136ffeaa6174289a) und dem, was ich tat, war:
$ openssl genrsa -des3 -out server.orig.key 2048
$ openssl rsa -in server.orig .key -out server.key
$ openssl req -new -Taste server.key -out server.csr
Land Name (2-Buchstaben-Code) [AU]:
...
Common Name: localhost.ssl
...
openssl $ x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
$ echo "127.0.0.1 localhost.ssl" | sudo tee -a/private/etc/hosts
ich dann server.crt konvertieren, indem die Ausführung
$ openssl x509 -in server.crt -out keystore.pem -outform PEM server.pem
$ keytool -import -trustcacerts -alias testcert -datei keystore.pem -keypass testpass -keystore keystore.jks -storepass testpass
$ keytool -export -alias mykey -keystore keystore.jks -rfc -file-Vertrauens
$ vim keystore.password // manuell erstellt keystore.password über vim
Aber wenn ich auf https://localhost:8083 zugreifen, es nicht mit SSL arbeiten.
Dann
Ich habe auch ein anderes Zertifikat mit
Common Name: localhost
$ "127.0.0.1 localhost" echo | sudo tee -a/privat/etc/hosts
Aber das funktioniert auch nicht. Wie kann ich meinen https://localhost:8083 mein selbstsigniertes Zertifikat verwenden?
FYI, ich benutze Embedded Jetty und Java liest alle Informationen korrekt über Config-Dateien, die die Standorte der Keystore.jks, Truststore und Keystore.password Dateien definiert.
*** 'CN = localhost' *** ist wahrscheinlich falsch. Hostnamen gehen immer in das * SAN *. Wenn es im * CN * vorhanden ist, muss es auch im * SAN * vorhanden sein (in diesem Fall müssen Sie es zweimal auflisten). Weitere Regeln und Gründe finden Sie unter [Wie unterschreiben Sie eine Zertifikatsignierungsanforderung mit Ihrer Zertifizierungsstelle] (http://stackoverflow.com/a/21340898/608639) und [So erstellen Sie ein selbstsigniertes Zertifikat mit openssl?] (http://stackoverflow.com/q/10175812/608639) Sie müssen das selbstsignierte Zertifikat auch im entsprechenden Trust Store speichern. – jww
Siehe auch [Zuweisen eines Domänennamens zu localhost für die Entwicklungsumgebung] (https://stackoverflow.com/q/7576217/608639) und [Von einem Drittanbieter signiertes SSL-Zertifikat für localhost oder 127.0.0.1?](https:// stackoverflow.com/q/6793174/608639) – jww