Nuevamente basado en la experiencia de tener que configurar un servidor de IIS para trabajar bajo SSL tuve que averiguar un poco como generar un certificado de seguridad, firmarlo e instalarlo en IIS.. el servidor de aplicaciones para windows.. después de unas cuántas búsquedas he aquí el mini-how to de como lograrlo utilizando OpenSSL que es un comando de linux..
Desde la consola en linux, crear una llave privada utilizando openssl
openssl genrsa -des3 -out certificado.key 1024 |
Si hace falta, darle permisos de solo lectura al archivo CA.key
chmod 400 certificado.key |
Lo siguiente será crear el certificado con la llave privada generada anteriormente:
openssl req -new -key certificado.key -x509 -days 1095 -out certificado.crt |
Y nuevamente darle permisos de solo lectura al archivo para evitar modificaciones..
chmod 400 certificado.crt |
Ahora.. hasta este punto ya tenemos la primera parte del certificado.. lo que sigue es abrir nuestro sitio desde el manejador de IIS y generar un archivo de petición para el certificado..
Una vez dentro de la ventana de propiedades del sitio, selecciona la pestaña “Directory Security” y hacia el botón “Server Certificate” .. sigue los pasos para generar una nueva petición y al final escribe el nombre del archivo con extensión .csr .. para mi ejemplo utilize “peticion.csr”
Ahora, de regreso en linux.. y para terminar solo hay que firmar la petición con el certificado generado
openssl x509 -req -days 365 -in peticion.csr -CA certificado.crt -CAkey certificado.key -CAcreateserial -out certificadoFirmado.crt |
Ya casi terminamos.. hasta este punto ya tenemos certificadoFirmado.crt que es básicamente el archivo que necesitamos en IIS .. ahora solo hace falta instalarlo y quedará listo.. entonces nuevamente de regreso en IIS desde la ventana de propiedades del sitio, nuevamente a la pestaña “Directory Security” .. clic sobre el botón “Server Certificate” .. de la lista de opciones especificar que se completará el proceso de solicitud de certificación .. elegir el archivo certificadoFirmado.crt y aceptar a todo lo que aparezca .. 😀
Voilá .. ya está listo el certificado e instalado en IIS..
Muchas gracias por este tutorial!
Al fin uno diferente! Me ha sido de gran ayuda para agregar en IIS 7 un certificado generado con OpenSSL sin que me de el conocido error “Cannot find the certificate request associated with this certificate file”.
Muchas gracias nuevamente, saludos desde Morón, Buenos Aires, Argentina!
Que gusto saber que te sirvió el artículo, Saludos Elmer
Hola, interesante y simple el tutorial, la idea que tengo configurar el HTTPS para poder usar los Service Workes, funcionara?.
Ademas, viendo otros tutoriales en el ultimo paso antes de instalarlo en el webserver se genera un nuevo certificado con Certificate Authority (CA), esto donde estaria en esta secuencia de comandos?.
Salu2.