IIS 7.5 Creación de certificados autofirmados con fecha de validación de más de un año

15

Estoy creando certificados SSL autofirmados en IIS 7.5 para uso interno. El problema que tengo es que quiero crearlos para que duren 10 años, ya que es solo un entorno de desarrollo.

No puedo ver una opción en IIS 7.5 donde puede especificar el tiempo de validez del certificado. Por defecto crea certificados que caducan en 1 año.

¿Hay alguna manera de cambiar esto para que los cree y tengan una validez de 10 años?

usuario1153199
fuente

Respuestas:

13

Puede hacerlo utilizando la SelfSSL.exeherramienta que viene con el Kit de recursos IIS6. Puede obtener el kit de recursos desde aquí:

http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=17275

El instalador simplemente descomprime las herramientas en una carpeta y no interfiere con ninguna de las configuraciones de su máquina. La opción de instalación personalizada también le permite elegir qué herramientas desea instalar y en una carpeta de su elección.

Abra una línea de comando de administrador y cambie el directorio donde SelfSSLse instaló la herramienta de línea de comando.

Para generar un nuevo certificado SSL autofirmado que caduque en 10 años, ejecute lo siguiente:

selfssl /n:cn=www.mydomain.com / v: 3650 / s: 8 / k: 2048

Esto generará un ssl donde:

  • /n:cn=www.mydomain.com- El SSL es para www.mydomain.com. El cn=(nombre común) es importante, así que no te lo pierdas.

  • /v:3650 - número de días que el certificado es válido, en este caso diez años

  • /s:8 - instale el certificado en la identificación del sitio 8

  • /k:2048 - use una longitud de keyle de 2048 bits.

Lamentablemente, no hay forma de enviar el SSL directamente a un archivo, debe instalarlo en un sitio. Sin embargo, la buena noticia es que el certificado es exportable.

Si desea que desaparezca la advertencia acerca de que no se confía en SSL cuando navega por sitios que usan su SSL autofirmado, también puede solucionarlo:

  1. Exporte el SSL autofirmado a un .pfxarchivo (debe establecer una contraseña, asegúrese de recordarla)
  2. Lanzamiento (desde la línea de comando o Inicio -> Ejecutar) mmc certmgr.msc
  3. Busque Trusted Root Certificate Authorities -> Certificatesy haga clic derecho para llegar a la Import...opción:

    ingrese la descripción de la imagen aquí

  4. Siga el asistente y especifique la .pfximportación y luego haga clic en siguiente (necesitará la contraseña que configuró en el paso 1):

    ingrese la descripción de la imagen aquí

  5. En el siguiente paso del asistente, debemos elegir qué tienda usar. Haga clic en el Browse...botón que abrirá la Select Certificate Storeventana. Necesitamos ver las tiendas físicas, así que asegúrese de que haya una marca en Show physical stores:

    ingrese la descripción de la imagen aquí

    Expanda Trusted Root Certificate Authoritiesy elija Local Computersegún la captura de pantalla anterior, luego haga clic OKy luegoNext >

  6. Haga clic en el Finishbotón en el paso final del asistente y, si todo está bien, debería ver:

    ingrese la descripción de la imagen aquí

Advertencias y Gotchas:

  • SelfSSL puede necesitar los componentes de compatibilidad de administración IIS6 instalados. No puedo decirlo porque mis propias máquinas ya lo tienen instalado y no tengo una VM a mano para probar esta teoría eliminándolas.

  • Emita el SSL cn=www.mydomain.comy no cn=mydomain.comsi desea poder agregar el SSL al almacén de Trusted Root Certificate Authorities.

Kev
fuente
Hola, muchas gracias por tu ayuda. Definitivamente ha ayudado a lo que necesito hacer. Cheers Jeff
No puedo encontrar un enlace de descarga que funcione para el Kit de recursos IIS6. Alguien sabe donde se puede encontrar?
John Bubriski
@JohnBubriski - grr, MS son realmente molestos. Si puedes esperar hasta el viernes, puedo pegar una copia en alguna parte.
Kev
En realidad, estoy bien ahora, descubrí una manera. Publicaré una respuesta ...
John Bubriski
0

Según tengo entendido, el problema con IIS 7.x es que no puede establecer el encabezado del host para el enlace SSL.

Usando la utilidad de línea de comando appcmd debería poder hacer esto. Los sitios pueden usar el mismo certificado pero tendrán diferentes encabezados de host.

Si ejecuta los siguientes 2 comandos con sus datos, debería configurar los encabezados del host.

c:\Windows\System32\inetsrv>appcmd set site /site.name:"local.yourdomain.com" /+bindings.[protocol='https',bindingInformation='*:443:local.yourdomain.com']

c:\Windows\System32\inetsrv>appcmd set site /site.name:"local.dev.yourdomain.com" /+bindings.[protocol='https',bindingInformation='*:443:local.dev.yourdomain.com']

Desafortunadamente, hay algo más que debe hacer para que esto funcione, pero no estoy seguro de qué. Sé que hice algunos reinicios de IIS, y volví a seleccionar los certificados SSL, pero no estoy seguro del orden en que hacerlo. Pero sé que no hice nada 'elegante' como usar otra herramienta.

John Bubriski
fuente
John, eso debería ser siempre y cuando el certificado esté cargado en el servidor. Es posible que tenga que seleccionar el certificado SSL para usar también para cada sitio.
Brent Pabst
Sí, creo que ya tenía un certificado autofirmado configurado para los 2 sitios.
John Bubriski