martes, 9 de octubre de 2012

Certificado de seguridad SSL con tomcat

Hoy le doy gracias a uno de los arquitectos de aplicaciones mas sencillos, dinamicos, recursivos e inteligentes que conozco. Se preguntarán porque, porque gracias a El en el día de hoy tenemos este contenido para poder montar trabajar con certificados SSL en TOMCAT. bueno, jejeje, despues del lambetazo entonces pasemos al documento que muy gentilmente me proporcionó el compañero Diego.


Como montar un certificado generado para IIS en tomcat





despues de recibir el certificado de nuestra entidad certificadora



hacemos copy paste del mismo y lo guardamos en un archivo .cer certificado.cer



despues de esto se deben bajar los certificados medios de la siguiente pagina (para un certificado tipo secure site)



https://knowledge.verisign.com/support/ssl-certificates-support/index?page=content&id=AR1735



esta pagina puede variar de acuerdo al tipo de certificado comprado, para mayor informacion



aca se puede encontrar o comprobar el tipo de certificado

https://knowledge.verisign.com/support/ssl-certificates-support/index?page=content&actp=CROSSLINK&id=SO13499



aca se encuentran los certificados medios de acuerdo al tipo de certificados

https://knowledge.verisign.com/support/ssl-certificates-support/index?page=content&id=AR657



despues de seleccionar los certificados medios correctos creamos 2 archivos .p7b, primary.pb7 y seconday.p7b



Nota: verificar al hacer copy paste que no queden espacios en blanco en los archivos de los certificados.



ya teniendo nuestros 3 archivos .p7b procedemos a instalar los certificados



para instalar los certificados intermedios vamos al paso 5



https://knowledge.verisign.com/support/ssl-certificates-support/index?page=content&actp=CROSSLINK&id=SO8227



abrimos una consola cmd, ahi digitamos mmc.



seleccionamos add/remove snap in

seleccionamos certificates-> computer account-> local computer -> finish



ahi en intermediate certification authorities en la carpeta certificates hacemos click derecho->all tasks->import



importamos el certificado primary.p7b y secondary.p7b



despues procedemos a importar nuestro certificado firmado en el IIS, para esto vamos a la consola IIS manager,



aca nos paramos en el servidor y seleccionamos la opcion server certificates,



ahi seleccionamos complete certificate request y elegimos el archivo a importar certificado.cer



si sale algun error podemos importar el certificado de la misma forma que los intermedios, luego exportamos el certificado en formato pfx,



despues volvemos a la pestaña server certificates he importamos el archivo punto pfx



en este punto ya el certificado puede ser usado en el IIS y agregado al dominio respectivo.



Ahora procederemos con las transformaciones de los certificados para ser usados en el tomcat



como primera medida exportamos los certificados desde la consola mmc, se debe exportar el certificado firmado en un archivo con su correspondiente llave privada,

en otra se exportara el mismo certificado pero sin la llave privada,

y como 3 archivo se deben exportar los certificados intermedios



para esto selecionamos el certificado damos click derecho y en all tasks->export



despues de realizado tendremos que tener 3 archivos .pfx como se ve a continuacion



certificate.pfx

certificatewithkey.pfx

intermediate.pfx



con estos archivos ahora procederemos ha hacer la conversion de los mismos usando openssl a archivos .pem



openssl pkcs12 -in certificate.pfx -out certificate.pem -nodes

openssl pkcs12 -in intermediate.pfx -out intermediate.pem -nodes



despues generamos la llave privada desde el certificatewithkey.pfx



openssl pkcs12 -in certificatewithkey.pfx -nocerts -out privateKey.pem



removemos la autenticacion de la llave privada



openssl rsa -in privateKey.pem -out privateKeyWithoutPwd.pem



removemos la encripcion de la llave privada



openssl pkcs8 -topk8 -nocrypt -in privateKeyWithoutPwd.pem -inform PEM -out tmp.der -outform DER

openssl pkcs8 -nocrypt -in tmp.der -inform DER -out privateKeyNoEncrypt.pem -outform PEM





despues de generadas las llaves procedemos a configurar el tomcat



para esto agregamos las libreria APR openssl.exe y tcnative-1.dll en la carpeta bin donde esta instalado el tomcat y en el windows/system32



http://tomcat.heanet.ie/native/1.1.10/binaries/win32/



se debe modificar el archivo apache-tomcat-7.0.26-windows-x64\apache-tomcat-7.0.26\conf\server.xml



agregando la siguiente informacion



   
               maxThreads="150" scheme="https" secure="true"

                                                   SSLCACertificateFile="C:\cert\intermediate.pem"

                                                   SSLCertificateFile="C:\cert\certificate.pem"

                           SSLCertificateKeyFile="C:\cert\privateKeyNoEncrypt.pem"

               clientAuth="false" sslProtocol="TLSv1" />





despues de agregada esta informacion es necesario reiniciar el tomcat.

No hay comentarios:

Publicar un comentario

Agradezco el interes en el tema, estaré atento para poder leer su comentario.