codestory

Installieren Sie ein kostenloses Let's Encrypt SSL-Zertifikat für Spring Boot

  1. Das Zweck des Artikel:
  2. Die Registrierung vom Zertifikat SSL
  3. Konvertieren in das Format PKCS-12
  4. Die Konfiguration Spring Boot

1. Das Zweck des Artikel:

Let’s Encrypt ist ein kostenloser SSL-Zertifikatanbieter, der von der Internet Security Research Group (ISRG) entwickelt wurde. Let's Encrypt bietet zwei Arten von Zertifikaten: SSL für Standarddomännamen und Wildcard SSL für die beiden: Standarddomänen und Subdomäne.
In diesem Artikel werde ich Ihnen zeigen, wie Sie die Zertifikatsregistrierung SSL Let's Encrypt für Ihren Domainnamen erstellen und für die Anwendung Spring Boot bereitsstellen.
Die Anweisungen werden auf das Betriebssystem Ubuntu ausgeführt, da hier Tools wie openssl, keytool verfügbar sind. Sie können jedoch mit dem Betriebssystem Windows arbeiten, wenn Sie diese Tools installieren.
Obwohl das von Let's Encrypt bereitsgestellte Zertifikat SSL kostenlos ist, hat jedoch ein sehr kurze Gültigkeitsdauer von 90 Tagen, sodass Sie das Zertifikat SSL alle 90 Tage neu erstellen müssen. Aber Gott sei Dank, die Schritte zum erneuten Erstellung des Zertifikats sind einfach und nehmen Ihnen nicht viel Zeit in Anspruch.

2. Die Registrierung vom Zertifikat SSL

Es gibt mehrere Möglichkeiten, ein Zertifikat Let's Encrypt zu registrieren. Ich empfehle jedoch dringend, sich bei sslforfree.com zu registrieren. Auf dieser Website können Sie ein Konto mit Ihrer E-Mail-Adresse erstellen und ein Zertifikat SSL für Ihren Domain-Namen registrieren. Wenn Sie ein Zertifikat neu erstellen müssen, benötigen Sie nur einen einfachen Klick, um ein neues Zertifikat mit einer Gültigkeitsdauer von 90 Tagen herunterzuladen.
Zunächst geben Sie auf sslforfree.com Ihren Domainnamen ein und klicken Sei auf "Create Free SSL Certificate".
Die Webseite sslforfree fordert Sie auf, ein Konto zu registrieren:
Als Nächstes müssen Sie überprüfen, ob Sie tatsächlich Eigentümer dieses Domainnamens sind, und Informationen zu Ihrem Domainnamen angeben, z.B Ihr Land, Ihre Stadt, Ihren Firmennamen,...
Zum Letzten können Sie mit Let's Encrypt ein ZIP-Datei mit 3 Dateien herunterladen.
Hinweis: Für die Webanwendungen, die in Java geschrieben sind, müssen Sie Tomcat als "Server Type" auswählen.
  • certificate.crt: Certificate generated for your domain name.
  • private.key: Private key of your certificate.
  • ca_bundle.crt: Intermediate CA (Certificate Authority)

3. Konvertieren in das Format PKCS-12

Extrahieren Sie die File ZIP, die Sie im obigen Schritt haben, in einen Ordner auf Ubuntu. Z.B:
  • /home/{username}/mydomain.com
Die Anwendungen Java können die Zertifikats lesen, wenn sie im Format PKCS-12 (*.p12) sind. Daher müssen Sie die extrahieren Dateien in dieses Format konvertiern.
openssl pkcs12 -export -in /home/tran/mydomain.com/certificate.crt -inkey /home/tran/mydomain.com/private.key -name mydomain -out /home/tran/mydomain.com/mydomain_com.p12


keytool -importkeystore -deststorepass YourPassword -destkeystore /home/tran/mydomain.com/mydomain_com.jks -srckeystore /home/tran/mydomain.com/mydomain_com.p12 -srcstoretype PKCS12
Nachdem Sie die beiden oben genannten Befehle ausgeführt haben, haben Sie zwei neue Dateien, wie unten gezeigt:

4. Die Konfiguration Spring Boot

Öffnen Sie im Projekt Spring Boot die Datein application.properties, um SSL zu konfigurieren.
application.properties
server.port=443

server.ssl.key-store=file:/home/tran/mydomain.com/mydomain_com.p12

server.ssl.key-store-password=YourPasswoord

server.ssl.key-alias=mydomain
Stellen Sie Ihre Website bereit und greifen Sie mit HTTPS darauf zu:
  • https://mydomain.com
Hinweis: Wenn Sie die Anwendung Spring Boot als JAR (oder WAR) verpacken und direkt über COMMAND ausführen, müssen Sie der application.properties möglichweise nichts hinzufügen. Führen Sie die Anwendung einfach wie folgt aus:
java -jar mydomaintest-1.0.war --server.port=443 -Dserver.ssl.key-store=file:/home/tran/mydomain.com/mydomain_com.jks -Dserver.ssl.key-store-password=YourPassword -Dserver.ssl.key-alias=mydomain

Anleitungen Spring Boot

Show More