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
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>
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
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ć.
Jeśli powyższe polecenie zwraca błąd:
Error unable to get local issuer certificate getting chain.
należy się zastosować do poleceń ze strony:
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" />