INSTALACION DE SSL EN TOMCAT, JAVA, UTILIZANDO KEYSTORE
El keytool es el equivalente OpenSSL pero más limitado en funcionalidades y exclusivamente ligado al entorno Java.
Ya que Keytool no cuenta con la funcionalidad de importar una clave privada preexistente
de un certificado generado externamente(como es su caso ya que
La llave privada fue generada con OpenSSL). La solución a este inconveniente que
quizás a primera vista no se contempla con tanta claridad y es que Java (a
partir de su versión 6)
puede manejar los ficheros PKCS12 como si
fuesen almacenes de claves keystores. Con OpenSSL se
puede convertir el certificado y la clave privada que
se quieren importar, en un archivo PKCS12 de intercambio de información personal.
Dejando Claro la situación actual deberá:
PASO 1:
Comprobar que las llaves correspondan entre si, para ello
dispongo el siguiente link:
https://soporteytelecom.blogspot.com/2020/01/comprobar-llaves.html
PASO 2:
Generar el PFX con OpenSSL(Utilizar comando dispuesto en la
sección 2.1).
https://soporteytelecom.blogspot.com/search/label/EXPORTAR
NOTA IMPORTANTE: Un dato importante es que la contraseña que se
establezca al crear el archivo PKCS12 debe ser la misma que la contraseña
del keystore de Java para que Tomcat funcione correctamente
PASO 3:
Finalmente
con el uso herramienta keytool, se puede importar el
archivo PCKS12 generado como si de un keystore se
tratase.
keytool -importkeystore -deststorepass [cambiar] -destkeypass
[cambiar] -destkeystore servidor.keystore -srckeystore midominio.p12
-srcstoretype PKCS12 -srcstorepass [cambiar] -alias [cambiar] |
NOTA IMPORTANTE: EN ALGUNAS VERSIONES DE TOMCAT ESTE COMANDO GENERA UN ERROR CON EL NOMBRE DE ALIAS, LA SOLUCION SI ESTO OCURRE ES:
keytool -importkeystore -srckeystore pkcs12file.p12 -srcstoretype pkcs12 -destkeystore test.jks -deststoretype JKS
|
|
Recuerde
que para configurar el servidor Tomcat sobre SSL usando el
certificado correctamente importando en el almacén de certificados de
Java, se debe añadir la siguiente configuración que habilitará el puerto
que indiquemos para todo el tráfico HTTPS:
nano
/opt/apache-tomcat-7.0.64/conf/server.xml <Connector
port="443"
protocol="org.apache.coyote.http11.Http11Protocol"
SSLEnabled="true" maxThreads="150"
scheme="https" secure="true" clientAuth="false"
sslProtocol="TLS" keystoreFile="/path/to/servidor.keystore"
keystorePass="contraseñaKeystore" />; |
Comentarios
Publicar un comentario