2016-05-02 8 views

Odpowiedz

0
  1. Zdobądź certyfikat SSL z letsencrypt
  2. Dodaj go do magazynu kluczy przy użyciu komendy keytool w Javie
  3. Skonfiguruj swoją aplikację Wiosna korzystania z kluczy generowanych powyżej

Plik powinien wyglądać :

+0

Dzięki! Więc byłem na dobrej drodze, jak to wygląda. Czy ktokolwiek może rozwinąć sposób dodawania tego certyfikatu za pomocą keytool? – BrandenS

+0

Zobacz strony pomocy keytool http://docs.oracle.com/javase/8/docs/technotes/tools/windows/keytool.html – AlBlue

31

Napisałem 2 wpisy na blogu o Let's Encrypt and Spring Boot.

  1. Wydanie certyfikatu.Spring Boot Application Secured by Let’s Encrypt Certificate
  2. Odnawianie certyfikatu. Let’s Encrypt Certificate Renewal: for Spring Boot

W skrócie etapy są następujące:

  1. Ciągnięcie Let's Encrypt client (certbot).
  2. Generowanie certyfikatu dla domeny (np example.com)

    ./certbot-auto certonly -a standalone -d example.com -d www.example.com

warte są generowane w /etc/letsencrypt/live/example.com. Spring Boot oczekuje pliku w formacie PKCS # 12. Oznacza to, że musisz przekonwertować klucze na magazyn kluczy PKCS # 12 (na przykład przy użyciu OpenSSL). W następujący sposób:

  1. Otwórz katalog /etc/letsencrypt/live/example.com.
  2. openssl pkcs12 -export -in fullchain.pem -inkey privkey.pem -out keystore.p12 -name tomcat -CAfile chain.pem -caname root

Plik keystore.p12 z PKCS12 jest teraz generowane w /etc/letsencrypt/live/example.com.

Czas skonfigurować aplikację Spring Boot. Otwórz plik application.properties i tam umieścić następujące właściwości:

server.port: 8443 
security.require-ssl=true 
server.ssl.key-store:/etc/letsencrypt/live/example.com/keystore.p12 
server.ssl.key-store-password: <your-password> 
server.ssl.keyStoreType: PKCS12 
server.ssl.keyAlias: tomcat 

Przeczytaj mój blog post dalsze szczegóły i uwagi.

+0

Awesome. Myślę, że w zasadzie to w końcu udało mi się, ale musiałem wyciągnąć z 2 lub 3 różnych źródeł i mamrocze to. Ułatwi to to, gdy będę musiał odnowić. – BrandenS

+0

Miło to słyszeć :-) –

+0

Czy muszę użyć pliku server.port: 8443 w produkcji? Lub server.port: 80 jest w porządku? – Awkward

6

Krok 1: Pobierz certbot z git

Musisz pobrać kod źródłowy Szyfrowanie Let jest na serwerze, który swój adres domeny wskazując. Ten krok może potrwać kilka minut.

$ git clone https://github.com/certbot/certbot

$ cd certbot

$ ./certbot-auto --help

Uwaga: Python 2.7.8 (lub wyżej) powinien być zainstalowany wcześniej .

Krok 2: generuje certyfikatów i klucza prywatnego

wykonując następujące polecenie w terminalu, niech Szyfrowanie generuje certyfikaty i klucz prywatny dla Ciebie.

$ ./certbot-auto certonly -a samodzielnym \

-d example.com -d example.com 

uwaga: Klucze są generowane w katalogu /etc/letsencrypt/live/example.com

Krok 3: Generowanie plików PKCS12 z plików PEM

Aby przekonwertować pliki PEM do wersji PKCS12: Przejdź do/etc /letsencrypt/live/example.com przekonwertuj klucze do PKCS12 za pomocą OpenSSL w terminalu w następujący sposób.

$ openssl pkcs12 -export -in fullchain.pem \

 -inkey privkey.pem \ 

      -out keystore.p12 \ 

     -name tomcat \ 

     -CAfile chain.pem \ 

     -caname root 

Enter Export Hasło:

Weryfikacja - Wprowadź Export Hasło:

(uwaga: - zapis pojedynczego linii naraz i naciśnij enter)

Krok 4: Konfiguracja wiosny Boot Application

Otwórz twoje 'application.properties' Put tej konfiguracji nie.

server.port = 8443 security.require-ssl = true

server.ssl.key-store =/etc/letsencrypt/Live/example.com /keystore.p12

server.ssl.key-sklep-password = hasło

server.ssl.keyStoreType = PKCS12

server.ssl.keyAlias ​​= kocur

Powiązane problemy