Cuando uno desea poner un certificado SSL al contenedor Tomcat, suele utilizar la herramienta keytool para hacerlo.
No obstante, a veces se genera el certificado a través de OpenSSL para el servidor web Apache y ambos servidores utilizan mecanismos diferentes para almacenar el certificado.
Por ello, existen casos en los que teniendo el certificado en Apache / Tomcat se ha de convertir para que se pueda reutilizar (Ver aquí).
Teoricamente, se puede utilizar el certificado generado con OpenSSL para Apache aunque he sido incapaz de hacerlo funcionar (Ver aquí).:
Connector port=”443″ maxHttpHeaderSize=”8192″
maxThreads=”150″ minSpareThreads=”25″ maxSpareThreads=”75″
enableLookups=”false” disableUploadTimeout=”true”
acceptCount=”100″ scheme=”https” secure=”true”
SSLEngine=”on”
SSLCertificateFile=”${catalina.base}/conf/localhost.crt”
SSLCertificateKeyFile=”${catalina.base}/conf/localhost.key”
… así que si alguien sabe como hacerlo, se lo agradecería…
De todas formas, si he conseguido crear un certificado para Tomcat a partir del generado para Apache, pero no está muy fino y por ejemplo, sólo se puede configurar un sólo SSL para el Tomcat y dado que disponemos de hosts virtuales, he conseguido reutilizar el certificado SSL de Apache siendo éste directamente quien lo pide; junto al comando Rewrite de Apache, conseguimos mejorar la redirección de Tomcat de HTTP a HTTPS (puesto que permite configurar el paso inverso de HTTPS a HTTP y ofrece más posibilidades, ver aquí y aquí):
#
# tienda.neodoo.es
#
ServerAdmin tienda@neodoo.es
ServerName tienda.neodoo.es
ServerAlias www.tienda.neodoo.es
…
#
# Redirecciones a SSL
#
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^/verDatosEnvio.html(.*) https://%{HTTP_HOST}%{REQUEST_URI}
RewriteRule ^/setDatosEnvio.html(.*) https://%{HTTP_HOST}%{REQUEST_URI}
RewriteRule ^/verPedido.html(.*) https://%{HTTP_HOST}%{REQUEST_URI}
RewriteRule ^/setPedido.html(.*) https://%{HTTP_HOST}%{REQUEST_URI}
RewriteRule ^/verCompra.html(.*) https://%{HTTP_HOST}%{REQUEST_URI}
RewriteRule ^/cuenta(.*) https://%{HTTP_HOST}%{REQUEST_URI}
RewriteRule ^/registro(.*) https://%{HTTP_HOST}%{REQUEST_URI}
##RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
#
# Contextos de Tomcat montados
#
JkMount / ajp13
JkMount /* ajp13
…
ServerAdmin tienda@neodoo.es
ServerName tienda.neodoo.es
ServerAlias www.tienda.neodoo.es
…
#
# Redirecciones a SSL
#
RewriteEngine On
RewriteCond %{HTTP} off
RewriteRule ^/verIndice.html(.*) http://%{HTTP_HOST}%{REQUEST_URI}
RewriteRule ^verBuscador.html(.*) http://%{HTTP_HOST}%{REQUEST_URI}
RewriteRule ^/verLstProdBuscador.html(.*) http://%{HTTP_HOST}%{REQUEST_URI}
RewriteRule ^/html(.*) http://%{HTTP_HOST}%{REQUEST_URI}
RewriteRule ^/verLstProd.html(.*) http://%{HTTP_HOST}%{REQUEST_URI}
RewriteRule ^/verProd.html(.*) http://%{HTTP_HOST}%{REQUEST_URI}
RewriteRule ^/addProd.html(.*) http://%{HTTP_HOST}%{REQUEST_URI}
RewriteRule ^/delProd.html(.*) http://%{HTTP_HOST}%{REQUEST_URI}
RewriteRule ^/chgProd.html(.*) http://%{HTTP_HOST}%{REQUEST_URI}
##RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
#
# Contextos de Tomcat montados
#
JkMount / ajp13
JkMount /* ajp13
…
0 comentarios