1.      Introducción. 3

2.      Instalar la Herramienta KSE. 3

3.      Crear u repositorio de llaves. 4

4.      Generar el Request 6

5.      Firma del Certificado. 9

6.      Incluir el certificado en nuestra keystore. 11

7.      Instalar el certificado en Apache Tomcat. 14

Como generar un Request e instalar un Certificado en Apache Tomcat.

1. Introducción

En el presente manual se mostrará uno de los procedimientos utilizados para generar un Request, y su posterior instalación del certificado generado por una entidad certificadora acreditada en un servidor Web Apache Tomcat con la herramienta Keystore Explorer.

2. Instalar la Herramienta KSE.

KSE es el acrónico de Keystore Explorer, basado en la herramienta keytool de Java para la administración de certificados digitales y que viene preinstalado con el JRE. KSE es un entorno gráfico que utiliza Keytool (entorno de línea de comandos).

Para instalar KSE descarga su instalador desde la página oficial https://keystore-explorer.org/downloads.html y según la versión de su sistema operativo.

Figura 1. Página de descarga KeyStore

La instalación se puede realizar con las configuraciones por defecto y el típico siguiente, siguiente aceptar.

Una vez instalado e iniciado, si es la primera vez que lo utiliza en el equipo, e solicitará instalar un complemento adicional, el cual ha de instalar.

Figura 2. Complemento a KeyStore Tools

Descargar el .zip solicitado desde el primer botón. Una vez descargado, iniciar KSE como administrador y actualizar desde el segundo botón con el .zip descargado.

Finalizando la instalación, tenemos el KSE funcional.

Figura 3. KeyStore Explorer

3.Crear un repositorio de llaves

Ahora que ya tenemos la herramienta lista, procederemos a crear nuestro keystore donde almacenaremos nuestras llaves. Para eso vamo a File –> New –>JKS –> Ok

Figura 4. Creando un JKS

Lo guardamos en el directorio de preferencia. Nos solicitará establecer una contraseña, la cual utilizaremos cada vez que se valla a utilizar este repositorio de llaves, incluso en la configuración del Tomcat, por lo que se recomienda no olvidarla.

Se elegirá la ruta de destino y la extensión .jks, aunque puede tener otra de las dispuestas en el cuadro de dialogo. Para nuestro caso utilizaremos la extensión .jks. Se recomienda colocar al nombre del archivo el nombre del dominio seguido de la extensión del archivo en nuestro caso ejemplo.com.co.jks.

Hasta este punto ya tendremos nuestro repositorio de llaves creado y vacío.

Figura 5. Almacén de llaves

4.Generar el Request

El siguiente paso es generar el request para enviar a su posterior firma por la entidad certificadora e instalación en nuestro sitio.

Para ello iremos al menú Tools –> Generate Key Pair o en la barra de herramientas en el ícono respectivo.

Figura 6. Generando un Key Pair

Seleccionamos los valores por defecto RSA y 2048, y clic en Ok.

Ajustamos la fecha de vencimiento del certificado si es a un año o el tiempo definido.

Figura 7. Generando un Request.

Damos clic en el ícono al lado del campo Nombre y rellenamos los datos de nuestro certificado.

Figura 8. Datos del nuevo certificado.

Y damos clic en Ok.

Nos pedirá un alias con el cual renombraremos el certificado. Este dato nos lo pedirá luego en el archivo de configuración server.xml del Tomcat. Se puede cambiar más adelante según la necesidad. Puedes colocar el valor por defecto que te sugiere el KSE.

Ingresamos la contraseña de nuestro Key Pair Certificate. Se recomienda colocar la misma contraseña de nuestro repositorio de claves jks.

Y listo. Aceptar y guardar.

Figura 9. Generación del Request Satisfactorio.

EL siguiente paso es generar nuestro request(CSR) a partir de las configuraciones realizadas hasta este momento. Para ello damos clic derecho sobre el certificado ejemplo.com.co –> Generate CSR .

Si queremos rellenamos los datos de los campos solicitados y guardamos el archivo con extensión .csr

En este momento, ya tenemos nuestro request que podemos enviar a nuestra entidad certificadora propia o de terceros como Digicert para la respectiva firma. Tener en cuenta que si es firmado por una entidad certificadora propia el certificado no será reconocido sino a nivel local en nuestro dominio, aunque pueda ser utilizado externamente, los exploradores web mostraran una advertencia sobre el certificado diciendo que el mismo ha sido firmado por una entidad certificadora no reconocida o propia. Mientras si se hace firmar por una entidad reconocida, será totalmente válido.

Figura 10. Abriendo el Request como archivo de texto.

5.Firma del Certificado.

Una vez realizada la firma del certificado por una entidad, nos entregarán varios archivos como e certificado raíz, el certificado intermedio y por último el certificado firmado. Estos archivos pueden venir en formato texto o .cer entre otros.

Ahora que ya tenemos el certificado firmado por la autoridad certificadora vamos a unir los archivos de la siguiente manera.

Se abrirá el certificado con un bloc de notas que tiene el siguiente aspecto.

Figura 11. Certificado desde el Bloc de notas

Si al abrirlo le queda en caracteres extraños se debe importar el certificado en el Keystore mediante la opción Tools à Import Trusted Certificate y luego exportarlo con clic derecho sobre el certificado, Export –> Export Certificate, seleccionar la opción  X.509 y PEM.

Para nuestro caso ya tenemos los siguientes archivos.

Figura 11. Archivos generados.

Es de tener en cuenta que es posible que tengas uno adicional. EL certificado firmado para el sitio, la root o CA y la Sub CA. Se han por tanto de abrir todos con el bloc de notas copiar y pegar el texto del certificado en un solo archivo en el siguiente orden. Certificado del sitio, certificado de la Sub CA y certificado de la CA. Se verá algo parecido a continuación.

Figura 12. Unión del Certificado firmado e Intermedio.

Por tanto tendrá 3 —–BEGIN CERTIFICATE—– y 3 —–END CERTIFICATE—– si tienes los 3 certificados mencionados. Para nuestro caso solo tenemos dos certificados por lo que solo serán los dos en el archivo de texto nuevo que creamos el cual podemos colocar por extensión .crt.

Hasta ahora tenemos los siguientes archivos.

6. Incluir el certificado en nuestra keystore

Hasta aquí ya tenemos los archivos necesarios para continuar. El siguiente paso es completar nuestro certificado, para ello abriremos nuestro keystore (ejemplo.com.co.jks) clic derecho sobre el certificado –> Unlock, desbloqueando para poder editarlo.

En ese punto vamos a dar clic derecho sobre el mismo –> Import CA Reply –> From File, seleccionando el archivo ejemplo.com.co.crt creado anteriormente.

Figura 12. Importe correcto del certificado en el KeyStore

Hasta aquí ya tenemos completo nuestro certificado y listo para instalar, pero antes validemos como está.

Veremos algo como esto.

Figura 13. Visualización de la jerarquía del certificado.

Podemos evidenciar la herencia de certificados de ejemplo.com.co. En el caso en el que se haya importado el root CA y Sub SA podremos ver los tres certificados con su respectiva herencia.

Guardamos y listo. En este punto ya podemos utilizar el certificado en el sitio web, pero también podemos guardarlo si quieres con otro nombre donde podrás colocar una nueva contraseña y cambiar el alias, pero recordar que la clave debe ser igual en ambos casos para el archivo keystore y el certificado.

7. Instalar el certificado en Apache Tomcat.

Para ello editaremos el archivo server.xml que se encuentra en la carpeta config de la instalación de su apache tomcat.

Figura 13. Raíz del sitio web an Apache Tomcat.

El archivo server.xml debe quedar de la siguiente manera según sean los datos que haya utilizado. En nuestro caso.

Figura 14. Archivo server.xml

Los datos hablan por si solos.

Ahora iniciamos el servidor web o lo reiniciamos en caso de que este arriba. Para nuestro caso para efectos del ejercicio creamos una propia entidad certificadora ejemplo.com.co e instalamos el servidor web en local cambiando el archivo host colocando el siguiente dato: 127.0.0.1 www.ejemplo.com.co. Así ahora vamos a nuestro navegador y digitamos la URL de nuestra página web https://www.ejemplo.com.co/home/. En el directorio home contengo los archivos de mi página web y obtenemos el siguiente resultado.

Figura 15. Certificado instalado.

Vemos que nos aparece el candado del certificado, aunque nos genera una advertencia debido a que nuestra entidad certificadora no es una entidad reconocida.

Para finalizar valida tu Certificado dando clic en el candado y posteriormente también lo puedes hacer mediante alguna herramienta en línea como https://www.sslshopper.com/ssl-checker.html, donde ingresas la URL y te entregará un diagnóstico sobre el estado de tucertificado.

Recordar que el root y sub CA lo puedes descargar desde un sitio específico o entidad certificadora, ya que son públicos.

Figura 16. Visualización del Certificado instalado.

7 comentarios en «Instalación de un certificado en Apache Tomcat.»

  1. Wow a great content, this might be attractive performing our analysis about remembering. Thanks a lot Arleyne Kleon Crooks

  2. Hey there. I found your blog by way of Google while searching for a comparable topic, your website came up. It appears great. I have bookmarked it in my google bookmarks to visit then. Laure Alexandr Peirce

  3. whoah this blog is great i really like studying your posts. Stay up the good paintings! You know, many individuals are searching around for this information, you can help them greatly. Gianina Palm Joseito

  4. If you are going for most excellent contents like I do, simply visit this
    web site daily because it provides quality contents, thanks

  5. Hey very cool website!! Guy .. Excellent ..
    Superb .. I’ll bookmark your website and take the feeds also?

    I am satisfied to search out a lot of helpful information right here within the put up, we want work out extra techniques in this regard,
    thank you for sharing. . . . . .

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *