Jak do Web Console nahrát vlastní SSL certifikát?

Autor: | Poslední úprava: 11.05.2015 09:40:42

ERA/ESMC/ESET PROTECT Web Console běží na webovém serveru Apache Tomcat, který komunikaci mezi serverem a prohlížečem standardně zabezpečuje prostřednictvím self-signed certifikátu vygenerovaného v průběhu instalace. Pokud chcete použít vlastní certifikát podepsaný důvěryhodnou certifikační autoritou a zbavit se v prohlížeči informace o nedůvěryhodném certifikátu, vyberte si jeden z níže uvedený postupů:

» Importujte vlastní certifikát do webového serveru

» Převeďte vlastní certifikát do formátu používaného webovým serverem

» Vygenerujte si nový certifikát

Upozornění:
Tento návod je určen zkušeným uživatelům. Chybnou konfigurací webového serveru dojde k znefunkčnění konzole. Použitý certifikát musí být opatřen heslem.

Importování vlastního certifikátu do Apache Tomcat

Apache Tomcat dokáže přečíst certifikát ve formátu PKCS12. Stačí tedy provést drobnou úpravu webového serveru.

PFX soubor s certifikátem si uložte například do složky, ve které máte nainstalován Apache Tomcat.

V textovém editoru si otevřete si konfigurační soubor webového serveru:

Windows: C:\Program Files\Apache Software Foundation\Tomcat 7.0\conf\server.xml
Linux: /etc/tomcat/server.xml

Upravte konfiguraci serveru tak, aby načítal daný certifikát (změněné položky jsou zvýrazněny tučně):

<Connector port="…" protocol="HTTP/1.1" … keystoreFile="cesta_k_certifikatu.pfx" keystorePass="heslo_k_certifikátu" keyStoreType="PKCS12" />

a odstraňte z dané sekce keyAlias="tomcat".

Příklad konfigurace:

<Connector server="OtherWebServer" port="8443" protocol="HTTP/1.1"
SSLEnabled="true" maxThreads="150" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS"
keystoreFile="certifikat.pfx"
keystorePass="tajneHeslo" keystoreType="PKCS12"
sslEnabledProtocols="TLSv1,TLSv1.1,TLSv1.2"
ciphers="TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384, TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_256_CBC_SHA256, TLS_RSA_WITH_AES_256_GCM_SHA384, TLS_RSA_WITH_AES_256_CBC_SHA"/>

nahoru


Konverze vlastního certifikátu do formátu JKS

Pokud již vlastníte, například hvězdičkový, certifikát pro vaši doménu, můžete jej pomocí níže uvedených kroků převést do Java KeyStore a importovat do webového serveru Apache Tomcat.

Certifikát do Java KeyStore (JKS) převedete příkazem:
keytool -importkeystore -srckeystore muj_certifikat.p12 -srcstoretype pkcs12 -destkeystore nazev_uloziste.jks -deststoretype JKS

Poznámka:
V průběhu vytváření nového úložiště budete vyzváni k definování hesla. Toto heslo musí odpovídat heslu, kterým je opatřen importovaný certifikát.

Vytvořené úložiště klíčů (JKS) překopírujte do složky webového serveru Apache Tomcat a v textovém editoru si otevřete si konfigurační soubor webového serveru:

Windows: C:\Program Files\Apache Software Foundation\Tomcat 7.0\conf\server.xml
Linux: /etc/tomcat/server.xml

Upravte konfiguraci serveru tak, aby načítal nově vytvořené úložiště klíčů (změněné položky jsou zvýrazněny tučně):

<Connector server="OtherWebServer" port="443" protocol="HTTP/1.1" … keystoreFile="cesta_k_ulozisti.jks" keystorePass="heslo_k_úložišti" keyAlias="tomcat"/>

Poznámka:
Nástroj keytool je součástí balíku Java.

nahoru


Vygenerování nového certifikátu

Apache Tomcat ukládá informace o certifikátech do Java KeyStore (JKS). Pracovat s tímto úložištěm můžete prostřednictvím nástroje keytool, který je součástí balíku Java a naleznete jej ve složce:

Windows: C:\Program Files\Java\jre-cislo_verze\bin
Linux: /usr/lib/jvm/jre-cislo_verze/bin/

Pro vytvoření nového certifikátu postupujte podle následujících kroků:

» Vytvořte si nový keystore v Apache Tomcat

» Vytvořte si certificate request (CSR)

» Vystavte si certifikát u důvěryhodné certifikační autority

» Naimportujte certifikát do Apache Tomcat

» Upravte konfiguraci Apache Tomcat

Je dobré vědět:
Více informací naleznete na webových stránkách Apache.

Vytvoření nového úložiště certifikátů

Pomocí následujícího příkazu vytvořte nový keystore a privátní klíč:

keytool -genkey -keysize 2048 -keyalg RSA -sigalg SHA256withRSA -alias tomcat -keystore era6.jks -keypass tajneHeslo -storepass tajneHeslo -dname "CN=Unknown, OU=Unknown, O=Unknown, L=Unknown, ST=Unknown, C=Unknown"

Poznámka:
Kepyass a storepass musí být stejné.

nahoru


Vygenerování žádosti o certifikát (CSR)

Na základě privátního klíče vytvořte žádost o vystavení certifikátu:

keytool -certreq -alias tomcat -file era6.csr -keystore era6.jks

Poznámka:
Po spuštění příkazu bude nutné zadat heslo, které jste si nastavili při generování keystore.

nahoru


Vystavení certifikátu

Žádost (CSR) z předchozího kroku použijte pro vystavení důvěryhodného certifikátu. Využít můžete například vlastní doménovou certifikační autoritu.

nahoru


Importování certifikátu

Do vytvořeného keystore z kroku 1 naimportujte vystavený certifikát, certifikační autoritu a intermediate certifikáty dle vystavitele certifikátu.

keytool -import -alias startsslca -file ca.cer -keystore era6.jks -trustcacerts
keytool -import -alias startsslca1 -file sub.class1.server.ca.pem -keystore era6.jks -trustcacerts
keytool -import -alias tomcat -file ssl.crt -keystore era6.jks

Poznámka:
Po spuštění příkazu bude nutné zadat heslo, které jste si nastavili při generování keystore.

Úspěšný import ověříte pomocí příkazu:

keytool -list -keystore era6.jks

Ověření importu certifikátů do keystore

nahoru


Úprava konfigurace serveru

Keystore vytvořený ve složce Java překopírujte do složky s Apache Tomcat a v textovém editoru si otevřete si konfigurační soubor Apache Tomcat:

Windows: C:\Program Files\Apache Software Foundation\Tomcat 7.0\conf\server.xml
Linux: /etc/tomcat/server.xml

Upravte konfiguraci serveru tak, aby načítal nově vytvořené úložiště klíčů (změněné položky jsou zvýrazněny tučně):

<Connector server="OtherWebServer" port="443" protocol="HTTP/1.1" … keystoreFile="cesta_k_souboru\era6.jks" keystorePass="tajneHeslo" keyAlias="tomcat"/>

Výsledek může vypadat takto:

Zabezpečená ERA 6 Web Console

nahoru

Štítky: KB3724, HTTPS, ERA certifikát, ESMC certifikát, tomcat certifikát