Instalación de certificado en Tomcat 8 en Windows Server 2012
A continuación dejaré los pasos para instalar un certificado en un Tomcat 8.0.14 en un sistema operativo Windows Server 2012. El certificado que yo instalé fue adquirido a Thawte. El Java es la versión JRE7.
Lo primero es abrir el cmd como administrador y añadiremos la libreria del Java para poder trabajar con sus herramientas:
> set PATH=%PATH%;C:\Program Files\Java\jre7\bin
Luego se debe generar el almacén de claves:
> keytool -genkey -alias tomcat -keyalg RSA –keystore keystore.jsk
Y a continuación se crea el archivo csr que se envía para ser firmado por la entidad certificadora:
> keytool -certreq -keyalg RSA -alias tomcat -file certreq.csr –keystore keystore.jsk
Una vez que se tenga el certificado firmado se procede a su instalación, lo primero será instalar el certificado Root:
> keytool -import -alias root -keystore keystore.jks -trustcacerts -file CertRoot.crt
Luego se instala el certificado intermedio:
> keytool -import -alias intermediate -keystore keystore.jks -trustcacerts -file CertCA.crt
Finalmente se instala el certificado firmado:
> keytool -import -alias tomcat -keystore keystore.jks -file certificat.crt
Se deber ir a la carpeta del Tomcat, dentro hay una carpeta conf donde esta toda la configuración, añadir el siguiente texto dentro del archivo server.xml
<Connector port="443" protocol="org.apache.coyote.http11.Http11NioProtocol" maxThreads="150" SSLEnabled="true" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" keystoreFile="C:\Program Files\Tomcat 8.0\cert\keystore.jks" keystorePass="changeit"/>
Reiniciar el Tomcat y acceder a https://localhost/ o localhost:443 para comprobar que funciona correctamente.
También podemos comprobar que funciona correctamente con el Openssl, para ello se debe descargar de la web oficial e instalarlo, yo utilice la versión 1.0.1j de 64bits.
Una vez instalado ir al cmd como administrador y añadir la librería del OpenSSL:
> set PATH=%PATH%;C:\OpenSSL-Win64\bin
Y añadir el archivo de configuración:
> set OPENSSL_CONF=c:\OpenSSL-Win64\bin\openssl.cfg
Para comprobar el si esta funcionado correctamente el certificado escribir:
> openssl s_client –connect ticket.lapedrera.com:443
También os recomiendo la siguientes webs una vez publicado vuestro certificado para comprobar su estado:
https://www.digicert.com/help/
https://ssltools.thawte.com/checker/views/certCheck.jsp
https://www.sslshopper.com/ssl-checker.html
Al hacer lo siguiente obtengo un error:
PS C:\Program Files\Apache Software Foundation\Tomcat 8.0\keys-new-new> keytool -import -alias root -keystore keystore.j
sk -trustcacerts -file CertRoot.crt
Introduzca la contraseña del almacén de claves:
error de herramienta de claves: java.io.FileNotFoundException: CertRoot.crt (El sistema no puede encontrar el archivo es
pecificado)
A qué se debe? Creo que podría ser que en ese paso se supone que debería tener el certificado firmado por la autoridad no?
El CertRoot.crt es el certificado que te han debido enviar firmado.
¿Estas en la misma carpeta que esta el CertRoot.crt? porque lo que te dice es que no lo encuentra. Mete todos los archivos en la misma carpeta y trabaja desde ella.
¿»PS C:\Program Files\Apache Software Foundation\Tomcat 8.0\keys-new-new> » esto es en la ruta donde lo guardas?