Protección de las conexiones RDP con certificados SSL / TLS de confianza

En este artículo, mostraremos cómo usar certificados SSL / TLS confiables para asegurar conexiones RDP a computadoras o servidores Windows en un dominio de Active Directory. Usaremos certificados SSL confiables en lugar de certificados RDP autofirmados predeterminados (luego, al usar un certificado RDP autofirmado, el usuario recibe una advertencia de que el certificado no es confiable cuando se conecta al host). En este ejemplo, configuraremos una plantilla de certificados RDP personalizados en la Autoridad de certificación y una Política de grupo para emitir y vincular automáticamente un certificado SSL / TLS a los Servicios de escritorio remoto.

Advertencia de certificado autofirmado de Conexión a escritorio remoto (RDP)

De forma predeterminada, para proteger una sesión RDP, Windows genera un certificado autofirmado. Durante la primera conexión a un host RDP / RDS utilizando el cliente mstsc.exe, un usuario ve la siguiente advertencia:

The remote computer could not be authenticated due to problems with its security certificate. It may be unsafe to proceed.
Certificate error: The certificate is not from a trusted certifying authority.

Para continuar y establecer una conexión RDP, el usuario debe hacer clic en . Para evitar que la advertencia del certificado RDP aparezca cada vez, puede marcar la opción «No volver a preguntarme por las conexiones a esta computadora».
Advertencia de conexión a escritorio remoto (RDP): el certificado no es de una autoridad de certificación confiable

En este caso, la huella digital del certificado RDP se guarda en el CertHash parámetro de la clave de registro con el historial de conexiones RDP en un cliente (HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server ClientServers). Si ha ocultado la advertencia de que no se pudo verificar el servidor RDP, elimine la huella digital del certificado del registro para restablecer la configuración.

Valor rdp CertHash en el registro

Aunque se utiliza un certificado autofirmado para establecer una conexión, su sesión RDP es segura y su tráfico está encriptado.

Cree una plantilla de certificado RDP en una autoridad de certificación (CA)

Intentemos utilizar un certificado SSL / TLS de confianza emitido por una autoridad de certificación corporativa para proteger las conexiones RDP. Con este certificado, un usuario puede autenticar un servidor RDP al conectarse. Suponga que ya se ha implementado una autoridad de certificación de Microsoft corporativa en su dominio. En este caso, puede configurar la emisión automática y la conexión de certificados a todas las computadoras y servidores de Windows en el dominio.

Debe crear un nuevo tipo de plantilla de certificado para hosts RDP / RDS en su CA:

  1. Ejecute la consola de la Autoridad de certificación y vaya a la sección Plantillas de certificado;
  2. Duplique la plantilla de certificado de computadora (Plantillas de certificado -> Administrar -> Computadora -> Duplicar);
    plantilla de certificado de computadora duplicada en windows ca
  3. En el General pestaña, especifique el nombre de la nueva plantilla de certificado – RDPTemplate. Asegúrese de que el valor en el Nombre de la plantilla campo coincide con el Nombre para mostrar de la plantilla;
    crear una plantilla de CA para emitir certificados RDP
  4. En el Compatibilidad pestaña, especifique la versión mínima del cliente utilizada en su dominio (por ejemplo, Windows Server 2008 R2 para la CA y Windows 7 para sus clientes). Por lo tanto, se utilizarán algoritmos de cifrado más fuertes;
  5. Luego, en la sección Política de aplicación del Extensiones pestaña, restrinja el alcance de uso del certificado a Autenticación de escritorio remoto solo (ingrese el siguiente identificador de objeto – 1.3.6.1.4.1.311.54.1.2). Haga clic en Agregar -> Nuevo, cree una nueva política y selecciónela;
    ca plantilla para la autenticación de escritorio remoto 1.3.6.1.4.1.311.54.1.2
  6. En la configuración de la plantilla de certificado (Extensión de políticas de aplicación), elimine todas las políticas excepto Autenticación de escritorio remoto; crear plantilla de política de certificado de autenticación de escritorio remoto
  7. Para utilizar esta plantilla de certificado RDP en sus controladores de dominio, abra el Seguridad pestaña, agregue la Controladores de dominio grupo y habilitar el Inscribirse y Autoinscripción opciones para ello;
    permitir la inscripción y la inscripción automática de certificados a los controladores de dominio
  8. Guarde la plantilla de certificado;
  9. Luego, en el complemento mmc de la autoridad de certificación, haga clic en la carpeta Plantillas de certificado y seleccione Nuevo -> Plantilla de certificado para emitir -> elija la plantilla que ha creado (RDPTemplate);
    nueva plantilla de certificado rdp en la autoridad de certificación

¿Cómo implementar certificados RDP SSL / TLS mediante la política de grupo?

Ahora debe configurar un GPO de dominio para asignar automáticamente certificados RDP a computadoras / servidores de acuerdo con la plantilla configurada.

Se supone que todos los equipos del dominio confían en la Autoridad de certificación corporativa, es decir, el certificado raíz se ha agregado a las Autoridades de certificación raíz de confianza mediante GPO.
  1. Abra la consola de administración de políticas de grupo de dominio (gpmc.msc), cree un nuevo objeto GPO y vincúlelo a la unidad organizativa que contiene los servidores o computadoras RDP / RDS para emitir automáticamente certificados TLS para proteger las conexiones RDP;
  2. Vaya a la siguiente sección de GPO Configuración del equipo -> Políticas -> Plantillas administrativas -> Componentes de Windows -> Servicios de escritorio remoto -> Host de sesión de escritorio remoto -> Seguridad. Habilite el Plantilla de certificado de autenticación del servidor política. Especifique el nombre de la plantilla de CA que ha creado anteriormente (RDPTemplate);
    configuración de las opciones de GPO de la plantilla de certificado de autenticación del servidor
  3. Luego, en la misma sección de GPO, habilite el Requerir el uso de una capa de seguridad específica para conexiones remotas (RDP) política y establecer el valor SSL para ello; parámetro de política de grupo Requiere el uso de la capa de seguridad SSL para conexiones remotas (RDP)
  4. Para renovar automáticamente un certificado RDP, vaya a Configuración de la computadora -> Configuración de Windows -> Configuración de seguridad -> sección Políticas de clave pública del GPO y habilite la Cliente de servicios de certificado: propiedades de inscripción automática política. Compruebe el «Renovar certificados caducados, actualizar certificados pendientes y eliminar certificados revocados» y «Actualizar certificados que usan plantillas de certificado”Opciones; Configuración de la política de grupo de inscripción automática de certificados rdp
  5. Si desea que sus clientes verifiquen siempre el certificado del servidor RDP, debe configurar el Configurar la autenticación para el cliente = Avisarme si falla la autenticación política (Configuración del equipo -> Políticas -> Plantillas administrativas -> Componentes de Windows -> Configuración de escritorio remoto -> Cliente de conexión de escritorio remoto);
  6. Si es necesario, abra el puerto RDP entrante TCP / UDP 3389 utilizando políticas de firewall;
  7. Luego actualice la configuración de la política de grupo en la computadora cliente, inicie la consola de certificados de la computadora (Certlm.msc) y asegúrese de que el certificado de autenticación de escritorio remoto emitido por su CA haya aparecido en la sección Personal -> Certificados.
Si no se ha aplicado la nueva configuración de la directiva de grupo, use la herramienta gpresult y este artículo para diagnosticar.

certificados RDP emitidos

Para aplicar el nuevo certificado RDP, reinicie los Servicios de escritorio remoto:

Get-Service TermService -ComputerName mun-dc01| Restart-Service –force –verbose

Después de eso, cuando se conecte a un servidor usando RDP, no verá una solicitud para confirmar que el certificado es confiable (para ver la solicitud, conéctese al servidor donde se emite el certificado para usar su dirección IP en lugar del FQDN). Hacer clic Vista certificado, vaya al Detalles pestaña y copie el valor en la Impresión del pulgar campo.
obtener la huella digital del certificado rdp

En el Certificados emitidos sección de la consola de la Autoridad de certificación, puede asegurarse de que se haya emitido un certificado RDPTemplate para el servidor / computadora Windows específico. También revisa el certificado Impresión del pulgar valor:

obtener el certificado Huella digital a través de la consola certsrv mmc

Luego, compare esta huella digital con la huella digital del certificado que utiliza el Servicio de escritorio remoto. Puede ver el valor de la huella digital del certificado RDS en el registro (HKLM: SYSTEM CurrentControlSet Control Terminal Server WinStations, el PlantillaCertificado parámetro) o usando el siguiente comando de PowerShell:

Get-WmiObject -Class "Win32_TSGeneralSetting" -Namespace rootcimv2terminalservices|select SSLCertificateSHA1Hash
obtener la huella digital del certificado rdp usando powershell

Luego, cuando se conecte al escritorio remoto de cualquier host de Windows, no verá una advertencia de un certificado RDP que no sea de confianza.

Firma de un archivo RDP con una huella digital de certificado TLS confiable

Si no tiene una CA, pero no desea que sus usuarios vean advertencias cuando se conectan a un host RDP / RDS, puede agregar el certificado a los de confianza en las computadoras de los usuarios.

Obtenga el valor de la huella digital del certificado RDP como se describe anteriormente:

Get-WmiObject -Class "Win32_TSGeneralSetting" -Namespace rootcimv2terminalservices|select SSLCertificateSHA1Hash

Utilice esta huella digital para firmar el archivo .RDP con el RDPSign.exe herramienta:

rdpsign.exe /sha256 25A27B2947022CC11BAFF261234567DEB2ABC21 "C:psmun-dc01.rdp"

Luego, agregue esta huella digital a los certificados de confianza en las computadoras de los usuarios que usan GPO. Especifique las huellas digitales (separadas por un punto y coma) en el Especifique las huellas digitales SHA1 de los certificados que representan a los editores .rdp de confianza política en Configuración de la computadora -> Políticas -> Plantillas administrativas -> Componentes de Windows -> Configuración de escritorio remoto -> Cliente de conexión de escritorio remoto.

Política de cliente de conexión a escritorio remoto, agregando editores .rdp confiables

Para configurar el inicio de sesión RDP transparente sin ingresar una contraseña (inicio de sesión único RDP), configure el Permitir la credencial de delegación predeterminada política y especifique los nombres de host RDP / RDS en ella (consulte este artículo sobre cómo hacerlo).

Artículos Interesantes