Agregar soporte para SSL en tomcat 6

Antes que nada recomiendo establecer las variables de entorno JAVA_HOME, CATALINA_HOME y agregar %JAVA_HOME%/bin a la variable de entorno PATH.

Para agregar soporte SSL en tomcat 6 debemos generar un par de claves usando la herramienta %JAVA_HOME%binkeytool de esta manera, y ya que correremos tomcat como servicio especificaremos una carpeta personalizada para el almacen de claves en vez de almacenar este en la carpeta %HOME%.

Para esto crearemos una carpeta en el disco C y la llamaremos security, y después ejecutaremos el comando:

keytool -genkey -alias tomcat -keyalg RSA -keystore .keystore

Y cuando se nos pida contraseñas solo ingresaremos “changeit”

-genkey indica que se utiliza la herramienta keytool para generar un par de claves
-alias es el comando que se utiliza para especificar una ubicación única para el keystore
-keyalg especifica el algoritmo utilizado para crear el par de claves, en éste caso se utiliza el algoritmo RSA, el cual basa su dificultad de factorizar números enteros grandes.


C:>mkdir security

C:>cd security

C:security>keytool -genkey -alias tomcat -keyalg RSA -keystore .keystore
Escriba la contrase±a del almacÚn de claves:
Volver a escribir la contrase±a nueva:
┐Cußles son su nombre y su apellido?
 [Unknown]:  ANONYMOUS
┐Cußl es el nombre de su unidad de organizaci¾n?
 [Unknown]:  ANONYMOUS
┐Cußl es el nombre de su organizaci¾n?
 [Unknown]:  EXAMPLE
┐Cußl es el nombre de su ciudad o localidad?
 [Unknown]:  EXAMPLE
┐Cußl es el nombre de su estado o provincia?
 [Unknown]:  EXAMPLE
┐Cußl es el c¾digo de paÝs de dos letras de la unidad?
 [Unknown]:  US
┐Es correcto CN=ANONYMOUS, OU=ANONYMOUS, O=EXAMPLE, L=EXAMPLE, ST=EXAMPLE, C=US?

 [no]:  si

Escriba la contrase±a clave para <tomcat>
 (INTRO si es la misma contrase±a que la del almacÚn de claves):
Volver a escribir la contrase±a nueva:

C:security>dir
 El volumen de la unidad C no tiene etiqueta.
 El número de serie del volumen es: 441B-8C31

 Directorio de C:security

18/12/2009  08:17 a.m.    <DIR>          .
18/12/2009  08:17 a.m.    <DIR>          ..
18/12/2009  08:17 a.m.             1,364 .keystore
 1 archivos          1,364 bytes
 2 dirs  52,067,266,560 bytes libres

Como se puede ver se genera un archivo .keystore, éste es el almacén de claves al que debemos hacer referencia desde tomcat. Para ésto solo debemos modificar el archivo (CATALINA_HOME es la carpeta en la que se encuentra instalado Tomcat):

%CATALINA_HOME%confserver.xml

Y realizaremos las siguientes modificaciones


<!-- Define a SSL HTTP/1.1 Connector on port 8443
 This connector uses the JSSE configuration, when using APR, the
 connector should be using the OpenSSL style configuration
 described in the APR documentation -->


 <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
 maxThreads="150" scheme="https" secure="true"
 clientAuth="false" sslProtocol="TLS" keystoreFile="C:/security/.keystore" />


 <!-- Define an AJP 1.3 Connector on port 8009 -->
 <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

Después de reiniciar tomcat deberíamos ser capaces de acceder a:

https://localhost:8443/

Leave a Reply

Your email address will not be published. Required fields are marked *