Habilitación del acceso remoto desde la intranet con certificado TLS/SSL (avanzado)
En este tutorial aprenderá a configurar un entorno de ejecución de integración autohospedado con múltiples máquinas locales y habilitar el acceso remoto desde la intranet con certificado TLS/SSL (avanzado) para asegurar la comunicación entre los nodos de entorno de ejecución de integración.
Requisitos previos
- Una introducción al cifrado seguro SSL/TLS.
- El certificado podría ser un certificado TLS general para un servidor web. Requisitos:
- El certificado debe ser un certificado de confianza pública X509 v3. Se recomienda utilizar los certificados que emita alguna entidad de certificación (CA) de asociado pública.
- Todos los nodos del entorno de ejecución de integración deben confiar en este certificado.
- Recomendamos los certificados de Nombre alternativo del firmante (SAN) porque todos los nombres de dominio completamente calificados (FQDN) de los nodos de tiempo de ejecución de la integración se requieren para ser asegurados por este certificado. (La validación de TLS/SSL de WCF solo comprueba que el último nombre DNS de SAN se corrigiera en .NET Framework 4.6.1. Consulte Mitigación: Método X509CertificateClaimSet.FindClaims para más información).
- No se admiten certificados de carácter comodín (*).
- El certificado debe tener una clave privada (como el formato PFX).
- El certificado puede usar cualquier tamaño de clave compatible con Windows Server 2012 R2 para los certificados TLS/SSL.
- Hasta el momento solo admitimos certificados CSP (Proveedor de servicios criptográficos). Los certificados que utilizan claves CNG (Proveedor de almacenamiento de claves) no son compatibles.
Pasos
Ejecute el siguiente comando PowerShell en todas las máquinas para obtener sus FQDN:
[System.Net.Dns]::GetHostByName("localhost").HostName
Por ejemplo, los FQDN son nodo1.dominio.contoso.com y nodo2.dominio.contoso.com.
Genere un certificado con los FQDN de todas las máquinas en Nombre alternativo del firmante.
Instale el certificado en todos los nodos en la máquina local ->Personal para que se pueda seleccionar en el administrador de configuración del entorno de ejecución de integración:
Haga clic en el certificado e instálelo.
Seleccione Máquina local y escriba la contraseña.
Seleccione Colocar todos los certificados en el siguiente almacén. Haga clic en Examinar. Seleccione Personal.
Seleccione Finalizar para instalar el certificado.
Activación del acceso remoto desde la intranet
Durante el registro del nodo en entorno de ejecución de integración autohospedado:
Seleccione Activar el acceso remoto desde la intranet y seleccione Siguiente.
Establezca el puerto Tcp (8060 de manera predeterminada). Asegúrese de que el puerto está abierto en el firewall.
Haga clic en Seleccionar. En la ventana emergente, elija el certificado correcto y seleccione Finalizar.
Una vez registrado el nodo de entorno de ejecución de integración autohospedado:
Nota
El entorno de ejecución de integración autohospedado puede cambiar la configuración de acceso remoto solo cuando tiene un solo nodo,que es por diseño. De lo contrario, no se puede comprobar el botón de radio.
Vaya al Configuration Manager de entorno de ejecución de integración autohospedado ->Configuración ->Acceso remoto desde la intranet. Haga clic en Cambiar.
Elija Habilitar con certificado TLS/SSL (avanzado)
Haga clic en Seleccionar. En la ventana emergente, elija el certificado correcto y seleccione OK (Aceptar).
Verifique la configuración del acceso remoto en Configuration Manager de entorno de ejecución de integración autohospedado
Utilizar un certificado autofirmado si no se tiene el certificado de confianza pública:
Genere y exporte un certificado autofirmado (este paso puede omitirse si ya tiene el certificado):
Genere un certificado autofirmado a través de PowerShell (con privilegios elevados):
New-SelfSignedCertificate -DnsName contoso.com, node1.domain.contoso.com, node2.domain.contoso.com -Provider "Microsoft Enhanced RSA and AES Cryptographic Provider" -CertStoreLocation cert:\LocalMachine\My
Para exportar el certificado generado con una clave privada a un archivo PFX protegido con contraseña, necesitará su huella digital. Se puede copiar desde los resultados del comando
New-SelfSignedCertificate
. Por ejemplo, esCEB5B4372AA7BF877E56BCE27542F9F0A1AD197F
.Exporte el certificado generado con la clave privada a través de PowerShell (con privilegios elevados):
$CertPassword = ConvertTo-SecureString -String “Password” -Force -AsPlainText Export-PfxCertificate -Cert cert:\LocalMachine\My\CEB5B4372AA7BF877E56BCE27542F9F0A1AD197F -FilePath C:\self-signedcertificate.pfx -Password $CertPassword
Exportó el certificado con la clave privada a C:\self-signedcertificate.pfx.
Instale el certificado en todos los nodos a: Máquina local ->Almacén de entidades de certificación raíz de confianza :
- Haga clic en el certificado e instálelo.
- Seleccione Máquina local y escriba la contraseña.
- Seleccione Colocar todos los certificados en el siguiente almacén. Haga clic en Examinar. Seleccione Entidades de certificación raíz de confianza.
- Seleccione Finalizar para instalar el certificado.
Solución de problemas
Compruebe que el certificado existe en el almacén de destino:
Siga este procedimiento Cómo: Ver los certificados con el complemento MMC - WCF para ver los certificados (maquina local) en el complemento MMC.
Confirme que el certificado que se instala en el almacén Personal y Entidades de certificación raíz de confianza (si es un certificado autofirmado).
Compruebe que el certificado tiene una clave privada y que no ha expirado.
Asegúrese de que la cuenta de servicio del entorno de ejecución de integración autohospedado (la cuenta predeterminada es NT SERVICE\DIAHostService)tiene permiso de lectura para las claves privadas del certificado:
Haga clic con el botón derecho del ratón en el certificado ->Todas las tareas ->Administrar claves privadas.
Si no es así, conceda el permiso Aplicar y guardar.