Ir al contenido

Microsoft IIS

Información general

Esta guía de uso integrado con MS IIS (Microsoft Internet Information Services) se ha elaborado utilizando las versiones de software y firmware que se indican a continuación:

  • SO: Windows Server 2019 (español)
  • IIS: 10
  • Firmware HSM: 5.0.26.0 (o superior)
  • Cliente HSM: 4.7.30 (o superior)
  • Utilidad hsmutil: 4.7.30 (o superior)

Requisitos

  1. Conectividad con el HSM (puerto TCP 4433).
  2. Software cliente HSM instalado (consulte el tema de Windows).
  3. Utilidad hsmutil.exe descargado, (comprobar aquí).
  4. Servicio HSM iniciado.
  5. Cuenta Windows con permisos de administración local.
  6. Credenciales de la partición HSM donde se creará o importará la clave privada.
  7. Es posible que tenga que reiniciar Windows (para cargar la configuración de la máquina local).

Clave y CSR generados en HSM a través de IIS Manager

  1. Cree un Crypto Provider a partir de Dinamo de tipo RSA Channel (tipo 12) utilizando la siguiente entrada de registro.

    Editor del Registro de Windows Versión 5.00
    
    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Defaults\Provider\Dinamo SChannel Cryptographic Provider]
    "Image Path"="tacndcsp.dll"
    "type"=dword:0000000c
    
  2. Configure los parámetros MS CAPI con las credenciales de la partición HSM en la consola GUI (Dinamocon).

    Configure la dirección IP, el nombre y la contraseña de una partición en el HSM; y active CNG. La clave privada se generará en esta partición.

    Nota

    Mantenga desmarcada la opción Configuración de máquina local.

    Configuración de MS CAPI
    Configuración de MS CAPI

  3. Abra la pantalla delAdministrador de IIS

    Director del SIE
    Administrador de IIS

  4. En la pantalla de inicio del Administrador de IIS, abra la opción Certificados de servidor.

    _IIS Manager_, gestión de certificados
    Administrador de IIS, gestión de certificados

  5. Utilice la opción Crear solicitud de certificado... para generar una CSR(Certificate Signing Request).

    _IIS Manager_, creación de certificados
    Administrador de IIS, creación de certificados

  6. Rellene la información de los campos que compondrán el certificado.

    _IIS Manager_, campos de certificado
    Administrador de IIS, campos de certificado

  7. Elija el Crypto Provider de Dinamo y el tamaño de la clave privada

    _IIS Manager_, selección de proveedores Dinamo
    Administrador de IIS, selección de proveedores Dinamo

  8. Escriba la ruta y el nombre del archivo con el CSR generado.

    _IIS Manager_, ruta del archivo CSR
    Administrador de IIS, ruta del archivo CSR

    -----EMPEZAR NUEVA SOLICITUD DE CERTIFICADO-----
    MIIEbzCCA1cCAQAwZTELMAkGA1UEBhMCQlIxCzAJBgNVBAgMAmRmMREwDwYDVQH
    DAhicmFzaWxpYTEPMA0GA1UECgwGZGluYW1vMRcwFQYDVQQLDA5lbmctY3NwLWRp
    bmFtbzEMMAoGA1UEAwwDbGFiMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
    AQEAwENg32Rg9IzuD6wN78syqPLx+OTr9WDWdoaCdKzHGv4ZowZn7svsKc0/HKq6
    5m/AyvpUlkDuXF9PJ0TihCcgcTSBDGS5tzdK7b+e+gBC8Jgb1TjE1JnGSbunbKh4
    ApPLUCY42tp88fkabvz3Iqp+dHHIDsjG2MDqKrZBX8YXKNPJzJTBihn5glH6unWv
    9SrwXZn7AwKqnNQ8NLf1xwQBDQ4b5hzDovmtKhwC39ekhx5Yrtlo8LJ/WM/Lphgk
    9UbHpCz4w+L+nZ1FuiS2Fqbi80d1U/YvJuC4X5A5lWxiVLevwH+zmqm+bfKqlOmB
    5g68dtxBBh9rvRp6aYOCHxn+sQIDAQABoIIBwzAcBgorBgEEAYI3DQIDMQ4WDDEw
    LjAuMTc3NjMuMjBPBgkrBgEEAYI3FRQxQjBAAgEFDA9XSU4tUlZEUDJSUTdISkoM
    HVdJTi1SVkRQMlJRN0hKSlxBZG1pbmlzdHJhdG9yDAtpbmV0bWdyLmV4ZTBkBgor
    BgEEAYI3DQICMVYwVAIBAR5MAEQAaQBuAGEAbQBvACAAUwBDAGgAYQBuAG4AZQBs
    ACAAQwByAHkAcAB0AG8AZwByAGEAcABoAGkAYwAgAFAAcgBvAHYAaQBkAGUAcgMB
    ADCB6wYJKoZIhvcNAQkOMYHdMIHaMA4GA1UdDwEB/wQEAwIE8DATBgNVHSUEDDAK
    BggrBgEFBQcDATCBkwYJKoZIhvcNAQkPBIGFMIGCMAcGBSsOAwIHMAoGCCqGSIb3
    DQMHMA4GCCqGSIb3DQMEAgIAgDALBglghkgBZQMEASowCwYJYIZIAWUDBAEtMAsG
    CWCGSAFlAwQBFjALBglghkgBZQMEARkwCwYJYIZIAWUDBAECMAsGCWCGSAFlAwQB
    BTANBggqhkiG9w0DAgIBcDAdBgNVHQ4EFgQUjLWAfxVSmthFnKb2sIIIryIwDgcw
    DQYJKoZIhvcNAQEFBQADggEBAHruyMBExrnqh8m70dr2CPcIA3Tz23TIYjgaGT+p
    PirrYJA9vzf5xaBYD/ghvRHk1LFzw/20CKETFb9qGIH9iUpEH8LVXz3CkuztFxBN
    7kcRzW5GO7Xs0C5PhIxPq6ktMsJsWext46LsyNdWD1UOQAPvA5/wPHYe8CvJSmTv
    vzUsEkomeGkcR/Y6yX/JeSXXP7qC74D5UWsoY6rWJ67TV9Ox+H+T17iG1n9V/1Z3
    GKouUAWFTRddYvbX/jqrfIQVpdSOR04xCkIgn9p9Kqd+pbgFG0SpMirIpAkR+j9a
    GT1ckY65z0yvARxdwkFjvCdePvMuyVdlaucjbb2//m61Fc0=
    -----ENVIAR NUEVA SOLICITUD DE CERTIFICADO-----
    

    Se generará una clave privada RSA en la partición HSM. El nombre (id) de esta clave se define mediante el parámetro Administrador de IIS. Identifique y anote el nombre de la clave generada, se utilizará más tarde. Puede ser útil dejar la consola CLI hsmcon.exe (línea de comandos) que muestra la actividad del HSM en tiempo real (opción Registros/Seguimiento) para identificar el nombre/id de la clave privada generada.

    2021/02/16 17:45:21 00003CE8 00039289 000A3309 session thread up [3]
    2021/02/16 17:45:21 00003CE8 0003928A 678CC86D e-conn: 208.115.199.22|208.115.199.22 10.61.53. 60:443 -
    2021/02/16 17:45:21 00003CE8 0003928B 000A3309 hilo de sesión caído [2]|208.115.199.22 10.61.53. 60:443 -
    2021/02/16 17:45:24 00003CE7 0003928C DCED7818 nueva clave iispart/CSP0670045F, t: 6, a: 00000001, c: 31|10.61.53.163 10.61.53.60:4433 iispart
    2021/02/16 17:45:24 00003CE7 0003928D DCED7818 R_COOR intentando configurar 12EAD6FB1E46ABCB 04|10.61.   53.163 10.61.53.60:4433 iispart
    2021/02/16 17:45:24 00003CE7 0003928E DCED7818 R_COOR preparado 12EAD6FB1E46ABCB 04|10.61.53.163 10.61.53.60:4433 iispart
    2021/02/16 17:45:24 00003CE7 0003928F DCED7818 iispart/CSP0670045F created|10.61.53.163 10.61.  53.60:4433 iispart
                                                   ^^^^^^^ ^^^^^^^^^^^ ^^^^^^^
    2021/02/16 17:45:24 00003CE7 00039290 DCED7818 pk iispart/CSP0670045F!F7md3iGOTL34+gRTEo/4okX +CR719IPywZ2+yqVpegc=, c: 31|10.61.53.163 10.61.53.60:4433 iispart
    
  9. Lleve la CSR a una Autoridad de Certificación (CA) para que emita el certificado.

    Este paso es externo y depende completamente del procedimiento de la CA elegida. Anote la ruta y el nombre del certificado (archivo *.cer) recibido de la CA.

  10. En IIS Manager utilice la opción Complete Certificate Request....

    _IIS Manager_, complete el proceso de solicitud de certificado
    IIS Manager, complete el proceso de solicitud de certificado

  11. Informar al archivo del certificado emitido por la CA.

    _IIS Manager_, informe de la ruta del archivo de certificado recibido por la CA
    IIS Manager, informe de la ruta del archivo de certificado recibido por la CA

  12. Al final del proceso, el certificado debería aparecer en la lista Administrador de IIS que se utilizará en Páginas web gestionado por IIS.

    _IIS Manager_, lista de certificados SSL
    IIS Manager, lista de certificados SSL

    Nota

    El Administrador de IIS asociará la clave privada y el certificado con el Proveedor CSP en la cuenta del usuario. En el siguiente paso, esta asociación se volverá a realizar para el Proveedor CNG y en la cuenta de la máquinalocal.

  13. (Re)asociar la clave con el certificado en el Proveedor de GNC Dinamo en el equipo local mediante hsmutil.exe. Esta reasociación es necesaria para la Servicio Subsistema de Autoridad de Seguridad Local puede utilizar la clave generada en el HSM.

    Ejecutar la utilidad hsmutil.exe con los parámetros que se indican a continuación. Los valores de <id da chave no HSM> e <hash/fingerprint do certificado> debe sustituirse como se explica a continuación.

    hsmutil -j certassignkey -csp "Dinamo HSM Cryptographic Provider" -store local_machine -repo My    -container <id da chave no HSM> -keyspec cng -certhash <hash/fingerprint do certificado>
    

    O <id da chave no HSM> es el nombre de la clave privada generada en el paso anterior e identificada. También se muestra en la lista de claves de la partición HSM elegida.

    Dinamo - Consola de gestión remota v. 4.7.29.0 2018 (c) Dinamo Networks
    
    HSM 10.61.53.60 e - Motor 5.0.27.0 (DCD) - TCA0000000 - ID iispart
                                                                    ^^^^^^^
    
    Claves/Objetos - Lista
    
    
    Nombre Tipo T E Etiqueta
    ================================================================================
    CSP0670045F rsa2048 n y
    ^^^^^^^^^^^
    
    Total de objetos: 1
    
    Pulse la tecla ENTER para continuar...
    

    O <hash/fingerprint do certificado> puede comprobarse directamente en el certificado emitido por la CA, utilizando la utilidad de Windows certutil (línea de comandos) o abriendo el archivo del certificado en el visor de Windows.

    PS > certutil <arquivo do certificado> | Select-String 'Cert Hash\(sha1\):'
    
    Cert Hash(sha1): fe8c1b7e672edbc7004a177bc4fad5244c91f4b9
    

    Hash o huella del certificado
    Hash o huella del certificado

    Ejemplo de utilización del comando de asociación:

    hsmutil -j certassignkey -csp "Dinamo HSM Cryptographic Provider" -store local_computer -repo My -container CSP0670045F -keyspec cng -certhash fe8c1b7e672edbc7004a177bc4fad5244c91f4b9
    

  14. Cambiar la configuración de MS CAPI para la cuenta de la máquina local.

    En la consola del cliente HSM (Dinamocon), active la opción de configuración Máquina local.

    Configuración de MS CAPI con configuración de cuenta de máquina local
    Configuración de MS CAPI con configuración de cuenta de máquina local

    Nota

    La prueba de conexión dejará de funcionar porque la configuración se transfiere de la cuenta del usuario conectado a la cuenta de la máquina local.

  15. En el Administrador de IIS vaya al sitio (en la rama Sitios) donde el protocolo HTTPS estará vinculado con el certificado. Por ejemplo, el Sitio Web Predeterminado.

    _Administrador de IIS_, _Sitio web predeterminado_, opción _Binding_.
    Administrador de IIS, Sitio Web predeterminado, Opción de enlace

  16. En la opción Vinculaciones..., haga clic en Añadir para crear una nueva vinculación

    _Administrador de IIS_, _Sitio web predeterminado_, _Enlaces_
    Administrador de IIS, sitio web predeterminado, enlaces

  17. En la pantalla Add Site Binding, en Type seleccione https y en SSL Certificate seleccione el certificado emitido por la CA e importado anteriormente.

    Administrador _IIS_, _Sitio Web predeterminado_, Detalles del nuevo _Enlace_.
    Administrador de IIS, Sitio Web predeterminado, Detalles del nuevo enlace

  18. Pruebe la configuración accediendo con el navegador a la dirección del sitio web configurado.

    Desde un navegador, compruebe que se puede acceder a la dirección del sitio web configurado a través del protocolo https. Compruebe que el certificado utilizado es el configurado anteriormente.

    Para esta comprobación, puede ser útil dejar la consola CLI hsmcon.exe (línea de comandos) que muestra la actividad del HSM en tiempo real (opción Registros/Seguimiento) y comprobando que se activa la clave privada para cerrar el túnel SSL.

    2021/02/16 19:45:05 00003F80 00039C37 13D1B59C iispart auth init, c: 41|10.61.53.163 10.61.53. 60:4433 -
    2021/02/16 19:45:05 00003F80 00039C38 13D1B59C iispart auth ok, 10.61.53.163, 6|10.61.53.163 10. 61.53.60:4433 -
                                                   ^^^^^^^
    2021/02/16 19:45:05 00003F80 00039C39 13D1B59C rsa CSP0670045F!F7md3iGOTL34+gRTEo/4okX +CR719IPywZ2+yqVpegc=, c: 41|10.61.53.163 10.61.53.60:4433 iispart
                                                   ^^^ ^^^^^^^^^^^
    2021/02/16 19:45:05 00003F80 00039C3A 13D1B59C e-conn: 10.61.53.163|10.61.53.163 10.61.53. 60:4433 iispart
    2021/02/16 19:45:05 00003F80 00039C3B 000A3309 session thread down [5]|10.61.53.163 10.61.53. 60:4433 iispart
    

Clave generada externamente (archivo .pfx, .p12)

  1. Configure los parámetros MS CAPI con las credenciales de la partición HSM en la consola GUI (Dinamocon).

    Configure la dirección IP, el nombre y la contraseña de una partición en el HSM; y active CNG. La clave privada se generará en esta partición.

    Nota

    Mantenga desmarcada la opción Configuración de máquina local.

    Configuración de MS CAPI
    Configuración de MS CAPI

  2. Importar el archivo .pfx en HSM con la consola hsmcon.exe (línea de comandos).

    Anote el nombre de la clave privada y el certificado importados en el HSM.

    Dinamo - Consola de gestión remota v. 4.7.30.0 2018 (c) Dinamo Networks
    
    HSM 10.61.53.60 e - Motor 5.0.27.0 (DCD) - TCA0000000 - ID iispart
    
    Claves/Objetos - Importar - Claves asimétricas - PKCS#12
    
    Archivo (local) : iispart.pfx
    Contraseña de la clave privada : ********
    Exportable (y/[n]):
    Definir un perfil de uso (y/[n]):
    Nombre de la clave privada : sslkey
    Nombre del certificado X.509 (HSM) : sslcert
    Nombre de la clave pública (ENTER para ninguna) :
    
    Archivo cargado correctamente.
    
    Pulse la tecla ENTER para continuar...
    
  3. Exporte el certificado HSM a un archivo (.cer) con la consola hsmcon.exe (línea de comandos).

    Dinamo - Consola de gestión remota v. 4.7.30.0 2018 (c) Dinamo Networks
    
    HSM 10.61.53.60 e - Motor 5.0.27.0 (DCD) - TCA0000000 - ID iispart
    
    Claves/Objetos - Exportar - Certificado / PKCS#7 / Archivo
    
    Nombre (HSM) : sslcert
    Archivo de salida (local) (ENTER para volcar en pantalla) : ssliss.cer
    
    Archivo exportado con éxito.
    
    Pulse la tecla ENTER para continuar...
    
  4. Importe el certificado (.cer) al repositorio del equipo local utilizando el complemento para certificados (equipo local) desde la Consola de administración de Microsoft (MMC) de Windows en el equipo local.

    Nota

    Importe el archivo .cer (certificado), no el archivo .pfx (clave privada).

    MMC, añada un Snap-in
    MMC, añada un Snap-in

    MMC, seleccione Certificate Snap-in
    MMC, seleccione Certificate Snap-in

    MMC, seleccione certificados de máquina local
    MMC, seleccione certificados de máquina local

    MMC, importar el certificado
    MMC, importar el certificado

    MMC, informe de la ruta del archivo de certificado
    MMC, informe de la ruta del archivo de certificado

    MMC, confirme la selección de Mi
    MMC, confirme la selección de Mi

    MMC, lista de certificados
    MMC, lista de certificados

    Nota

    El icono del certificado en la lista no muestra ninguna clave, ya que sólo se ha importado el certificado.

  5. (Re)asociar la clave con el certificado en el Proveedor de GNC Dinamo en el equipo local mediante hsmutil.exe. Esta reasociación es necesaria para la Servicio Subsistema de Autoridad de Seguridad Local puede utilizar la clave generada en el HSM.

    Ejecutar la utilidad hsmutil.exe con los parámetros que se indican a continuación.

    hsmutil -j certassignkey -csp "Dinamo HSM Cryptographic Provider" -store local_computer -repo   My -container <id da chave no HSM> -keyspec cng -certhash <hash/fingerprint do certificado>
    

    O <id da chave no HSM> es el nombre de la clave privada importada en el paso anterior e identificada.

    O <hash/fingerprint do certificado> puede comprobarse directamente en el certificado emitido por la CA, utilizando la utilidad de Windows certutil (línea de comandos) o abriendo el archivo del certificado en el visor de Windows.

    PS > certutil <arquivo do certificado> | Select-String 'Cert Hash\(sha1\):'
    
    Cert Hash(sha1): fe8c1b7e672edbc7004a177bc4fad5244c91f4b9
    

    Hash o huella del certificado
    Hash o huella del certificado

    Ejemplo de utilización del comando de asociación:

    hsmutil -j certassignkey -csp "Dinamo HSM Cryptographic Provider" -store local_computer -repo My -container sslkey -keyspec cng -certhash fe8c1b7e672edbc7004a177bc4fad5244c91f4b9
    

    Una vez que el certificado y la clave privada se hayan asociado correctamente, el icono del certificado de la lista de la ventana gráfica MMC debería mostrar una clave.

    MMC, lista de certificados, con indicación de la clave asociada
    MMC, lista de certificados, con indicación de la clave asociada

  6. Cambiar la configuración de MS CAPI para la cuenta de la máquina local.

    En la consola del cliente HSM (Dinamocon), active la opción de configuración Máquina local.

    Configuración de MS CAPI con configuración de cuenta de máquina local
    Configuración de MS CAPI con configuración de cuenta de máquina local

    Nota

    La prueba de conexión dejará de funcionar porque la configuración se transfiere de la cuenta del usuario conectado a la cuenta de la máquina local.

  7. En el Administrador de IIS vaya al sitio (en la rama Sitios) donde el protocolo HTTPS estará vinculado con el certificado. Por ejemplo, el Sitio Web Predeterminado.

    _Administrador de IIS_, _Sitio web predeterminado_, opción _Binding_.
    Administrador de IIS, Sitio Web predeterminado, Opción de enlace

  8. En la opción Vinculaciones..., haga clic en Añadir para crear una nueva vinculación

    _Administrador de IIS_, _Sitio web predeterminado_, _Enlaces_
    Administrador de IIS, sitio web predeterminado, enlaces

  9. En la pantalla Add Site Binding, en Type seleccione https y en SSL Certificate seleccione el certificado emitido por la CA e importado anteriormente.

    Administrador _IIS_, _Sitio Web predeterminado_, Detalles del nuevo _Enlace_.
    Administrador de IIS, Sitio Web predeterminado, Detalles del nuevo enlace

  10. Pruebe la configuración accediendo con el navegador a la dirección del sitio web configurado.

    Desde un navegador, compruebe que se puede acceder a la dirección del sitio web configurado a través del protocolo https. Compruebe que el certificado utilizado es el configurado anteriormente.

    Para esta comprobación, puede ser útil dejar la consola CLI hsmcon.exe (línea de comandos) que muestra la actividad del HSM en tiempo real (opción Registros/Seguimiento) y comprobando que se activa la clave privada para cerrar el túnel SSL.

    2021/02/16 19:45:05 00003F80 00039C37 13D1B59C iispart auth init, c: 41|10.61.53.163 10.61.53. 60:4433 -
    2021/02/16 19:45:05 00003F80 00039C38 13D1B59C iispart auth ok, 10.61.53.163, 6|10.61.53.163 10. 61.53.60:4433 -
                                                   ^^^^^^^
    2021/02/16 19:45:05 00003F80 00039C39 13D1B59C rsa CSP0670045F!F7md3iGOTL34+gRTEo/4okX +CR719IPywZ2+yqVpegc=, c: 41|10.61.53.163 10.61.53.60:4433 iispart
                                                   ^^^ ^^^^^^^^^^^
    2021/02/16 19:45:05 00003F80 00039C3A 13D1B59C e-conn: 10.61.53.163|10.61.53.163 10.61.53. 60:4433 iispart
    2021/02/16 19:45:05 00003F80 00039C3B 000A3309 session thread down [5]|10.61.53.163 10.61.53. 60:4433 iispart