Ran in un altro problema utilizzando SSL e Tomcat: ho configurato un keystore che contiene una chiave e un certificato (il certificato del server che desidero presentare ai client che si collegano al sito). Ho fatto lo stesso per il truststore (avrò bisogno dell'autenticazione del client).Tomcat HTTPS certificato keystore
Il problema che ho ora è che quando mi collego alla mia istanza di Tomcat tramite HTTPS, il certificato presentato a me (il certificato del server) non è il mio certificato server vero e proprio, ma piuttosto la chiave nel keystore JKS. L'utilizzo di -Djavax.net.debug = ssl rivela che sta presentando la CA corretta per l'autenticazione del client, ma non il certificato del server corretto.
adding as trusted cert: Subject: CN=A Issuer: CN=A Algorithm: RSA; Serial number: - Valid from Tue Nov 10 14:48:31 CET 2009 until Mon Feb 08 14:48:31 CET 2010 adding as trusted cert: Subject: X Issuer: X Algorithm: RSA; Serial number: - Valid from Wed Jan 19 01:00:00 CET 2005 until Mon Jan 19 00:59:59 CET 2015
Ho sostituito i valori reali con i segnaposto. A = il nome di dominio del server (ma in questo caso, per qualche motivo questa è la chiave e non il certificato). X = una VeriSign CA (dovrebbe essere corretta). Ho un certificato esistente che vorrei usare per presentare ai client, che ho importato in un keystore JKS usando keytool.
La configurazione del connettore Tomcat:
Connector port="444" protocol="HTTP/1.1" SSLEnabled="true" maxThreads="150" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" keystoreFile="conf/ssl/keystore.jks" keystorePass="xx" keyAlias="testkey" truststoreFile="conf/ssl/truststore.jks" truststorePass="xx"
Qualsiasi idea del perché la mia istanza di Tomcat non presenta il certificato corretto?
fornire la configurazione del connettore ssl (da server.xml) – Bozho