Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 5 Next »

 

Artykuł opisuje konfigurację połączenia szyfrowanego dla serwera zainstalowanego na systemie Windows

Aby skonfigurować SSL będziesz potrzebować paczki z kluczem prywatnym oraz z wszystkimi certyfikatami publicznymi aż do CA. Plik pfx wraz z hasłem do niego zostanie Ci przekazany przez osoby techniczne od strony klienta. 

 

Zaimportowanie paczki z kluczem prywatnym oraz certyfikatami publicznymi


Plik pfx można zaimportować do systemu (jednocześnie konwertując do formatu pliku z rozszerzeniem jks) za pomocą programu keytool znajdującego się w %JAVA_HOME%\bin

keytool -importkeystore -srckeystore <ścieżka do pliku pfx> -srcstoretype pkcs12 -destkeystore <ścieżka i nazwa pliku wyjściowego jks> -deststoretype JKS

 

Po wydaniu polecenia zapisz sobie hasło i  wygenerowany alias dla nowego keystore (jak na powyższym zrzucie). Przyda się podczas konfiguracji Tomcata. 

Konfiguracja Tomcata 

 

Wyedytuj plik %CATALINA_HOME%\conf\server.xml. Odkomentuj connector dla portu 8443 i dopisz do niego poniższe atrybuty z odpowiednio zmodyfikowanymi wartościami.  

keystoreFile=<ścieżka do nowo utworzonego keystore> keystorePass=<hasło do nowo utworzonego keystore> keyAlias=<alias keystore>



Zwróć uwagę na porty. Jeśli system nasłuchuje na porcie 80 to zmień port szyfrowanego połączenia na 443 a także atrybut redirectPort dla wszystkich connectorów. Koniecznym może się okazać również otwarcie portu 443 w zaporze.

 

Ustawienie automatycznego przekierowania na szyfrowany port. 

 

Wyedytuj plik %CATALINA_HOME%\webapps\ROOT\index.html. Atrybut content powinien zawierać odpowiedni link do systemu (protokół https)



Zrestartuj serwer i przetestuj czy jesteś automatycznie przekierowywany do wskazanego w pliku index.html URL'a. 

 

Konfiguracja SSL na Linuxie lub w przypadku dostarczenia certyfikatów w postaci klucza prywatnego (private.key) oraz pliku crt (czasemwystępującego w formacie .pem)

Konfiguracja SSL na linuxie w przypadku gdy dostarczone są pliki z certyfikatem server.crt cerver-ca.crt private_key.key

openssl pkcs12 -export -in server.crt -inkey private_key.key -out server.p12 -name tomcat -CAfile server-ca.cer -caname root -chain

Wykonując powyższe polecenie należy podać hasło które należy zapamiętać.

Przykładowe wywołanie

D:\suncode\ssl\OpenSSL-Win32\bin>openssl pkcs12 -export -in D:\suncode\ssl\695dc1aac5c591a5740a085fd572774d.pem -inkey D:\suncode\ssl\private.key -out server.p12 -name tomcat -CAfile D:\suncode\ssl\all_695dc1aac5c591a5740a085fd572774d.crt -caname root -chain

 

Jeśli powyższe polecenie zwraca błąd:

Error unable to get local issuer certificate getting chain.

to znaczy że podany plik z certyfikatami nie posiada całej ścieżki certyfikatów i należy się zastosować do poleceń ze strony:

https://knowledge.rapidssl.com/support/ssl-certificate-support/index?page=content&actp=CROSSLINK&id=SO17070

Link ten opisuje iż podany plik z certyfikatami server-ca.cer musi zawierać certyfikat dla strony dla której to ustawiamy ale również certyfikaty root'a tj. wydawcy certyfikatu. Sprowadza się to często do wklejenia certyfikatu root'a (wszystkich poziomów) do pliku server-ca.cer.

 

UWAGA

W środowisku Windows nie jest dostępny program openssl. Można go jednak pobrać ze strony OpenSSL for Windows

 

Konfiguracja Tomcata

Należy otworzyć plik server.xml i w sekcji konfiguracji ssl podać:

<Connector port="443" SSLEnabled="true"
               maxThreads="150" scheme="https" secure="true" URIEncoding="UTF-8"
               clientAuth="false" sslProtocol="TLS" keystoreFile="/path/to/server.p12" keystoreType="PKCS12" keystorePass="haslo_podane_wyzej" />

 

 

  • No labels