2011-08-16 21 views
11

Quiero automatizar la configuración de SSL para un sitio web en IIS6. Parece que selfSSL y certutil se pueden usar para hacer esto, pero los certificados son nuevos para mí y no estoy seguro de cómo armarlos.IIS6: Crear/instalar certificado SSL autofirmado desde la línea de comando

Por lo que entiendo que necesito:

  1. crear un certificado
  2. asignar el certificado a la página web
  3. añadir una conexión segura (SSL/443) que se une al sitio web

También me gustaría evitar crear un nuevo certificado si el certificado del sitio ya se ha creado. De esa forma no termino con un montón de certificados de redudant.

+0

¿Ya tiene un certificado o quiere un nuevo certificado para cada servidor individual? –

+0

Esta es una gran pregunta y espero escuchar las respuestas. Una cosa a la que me gustaría advertir es el uso de SelfSSL, especialmente con sitios múltiples en una instancia de IIS. En mi experiencia, ha estado bien con un solo sitio a la vez. Creo que hay una solución para el problema e incluso una herramienta actualizada que no tiene el error (SSLDiag?). Hay más detalles sobre el tema en el siguiente hilo de comentarios del blog: http://blogs.msdn.com/b/david.wang/archive/2005/04/20/selfssl-bug-with-websites.aspx#413765 –

+0

Lee - Quiero un nuevo certificado. Encontré que selfSSL parece proporcionar esto a través de la línea de comandos Saul - ¡Gracias por esa información! Probablemente usemos selfSSL (o algo similar) para nuestros entornos dev/sqa/mock pero creación manual para producción. – chief7

Respuesta

16

sugeriría nos fijamos en el Kit de recursos de IIS 6: http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=17275

Hay una herramienta en el Kit de recursos de llamada selfssl.exe - que automatiza la creación, misiones e incluso de confianza del certificado que acaba de crear. La utilizamos bastante para asegurarnos de que nuestras cajas de desarrollo tengan certificados que podamos usar durante la prueba/desarrollo.

Aquí es la línea de comandos que usamos - que va a crear el CERT (para localhost) usando un tamaño de clave de 1024, confía en él, y que sea válida durante unos 10 años:

selfssl.exe /T /N:CN=localhost /K:1024 /V:3650 

Si alojan varios sitios, deberá usar el parámetro /S para especificar el ID del sitio al que desea agregar el certificado.

Nota: esto también funciona como un campeón con IIS 5 en WinXP, pero nunca lo he probado en ninguna de las familias de IIS 7.

1

Si está utilizando Wix para la creación de su configuración, a continuación, ejecutar este CustomAction (que simplemente se ejecuta SelfSSL) hará el truco para usted:

<CustomAction Id="InstallCert" 
       ExeCommand="selfssl.exe /N:CN=fqdn.myserver.com /V:365" /> 

<InstallExecuteSequence> 
    <Custom Action="InstallCert" After="InstallFinalize" /> 
</InstallExecuteSequence> 

Esta acción:

  • Generar el certificado
  • Instalar el certificado en Default Web Site
  • Añadir los enlace HTTPS línea

Comando explicó:

/N:CN=[fully qualified server name] 
/V: = Validity in days (365 in my example) 

Puede especificar el puerto con /P:[port number] interruptor. El valor predeterminado es 443, que es lo que quiere, así que puede dejarlo fuera.

Advertencia: Parece haber un error con SelfSSL que parece haber sido resolved.

Si aún corre en ella, alternativa es cambiar a SSLDiag herramienta que tiene una sintaxis similar:

SSLDiag.exe /selfssl /n:CN=fqdn.myserver.com /v:365 

que no tienen experiencia con otras herramientas de autoría de configuración (InstallShield etc.), pero estoy Seguro que tienen disposiciones para ejecutar programas de línea de comandos. En el peor de los casos, puede ejecutar esto a través de un archivo por lotes.

Espero que esto ayude.

Cuestiones relacionadas