Si necesitamos asegurar nuestro tráfico RDP podemos hacerlo mediante cifrado y la implementación de TLS (Transport Layer Security) mediante la emisión de un certificado digital.
Pre-requisitos en el lado del SERVIDOR:
- El servidor debe correr Windows Server 2003 SP1.
- Debemos de tener un certificado digital (compatible SSL X.509) para emitir.
Pre-requisitos en el lado del CLIENTE
- El cliente debe correr Windows 2000, XP o Vista.
- Para 2000 y XP los clientes de RDC deben ser actualizados a la versión RDP 5.2 (especificamente 5.2.3790.1830 – debido a que esta versión fué la que empezó durante la fase de negociación a solicitar comunicación segura), dicho cliente se encuentra ubicado en el siguiente directorio dentro de nuestro Windows Server 2003 SP1 %systemdrive%system32clientstsclientwin32msrdpcli.msi
- El cliente debe confiar en la CA.
Para el siguiente escenario tnemos una maquina cliente llamada client.contoso.com y un servidor llamado server.contoso.com el cual corre Windows Server 2003 SP1, ambas máquinas corren en modo stand alone; en server.contoso.com tenemos instalada una Certificate Authority, en la cúal ya tenemos hemos instalado un certificado.
Para que TLS funcione correctamente, debemos ir a Administrative Tools / Terminal Servicies Configuration, dale doble click a RDP-Tcp y darle click al boton EDIT que se encuentra al lado de la opción de certificado dentro de la pestaña GENERAL y seleccionamos el certificado que vamos a querer asociar a TS.
Siguiendo en la pestaña GENERAL, seleccionamos SSL como security layer (de esta manera estamos asegurando lo que el servidor va a requerir para quienes se conecten); en encryption level, tenemos:
- Client Compatible: esa opción va a hacer uso del más alto nivel de cifrado que el CLIENTE soporte.
- High: refuerza el nivel más alto de cifrado que el SERVIDOR soporte.
- FIPS (Federal Information Processing Standard): hace uso de los algoritmos de cifrado FIPS.
PODEMOS SELECCIONAR HIGH Y FIPS, con cualquiera de los dos funciona, ya es nuestra decisión.
Ahora vamos al lado del CLIENTE, lo primero que debemos hacer es que el cliente confie en la CA.
Para eso en el cliente vamos http://server.contoso.com/certsrv/ y le damos click a Download a CA certificate, certificate chain, or CRL.
Seleccionamos Install this CA certificate chain
Le damos click a YES
Le damos click a YES
En este punto ya podemos cerrar el navegador en la maquina CLIENTE
Nos aseguramos de haber desplegado en nuestras maquinas 2000 y XP el cliente RDC 5.2 (v5.2.3790.1830).
Abrimos RDC le damos un click a options y en security seleccionamos que require authentication.
Le damos click en la pestaña GENERAL, y aquí es importante escribir el el nombre FQDN del servidor al que nos vamos a conectar (es importante escribir el nombre FQDN debido a que es la información que se encuentra en el certificado digital).
Cuando vayamos a conectarnos recibiremos el siguiente prompt:
Le damos click a VIEW CERTIFICATE
Luego click sobre INSTALL CERTIFICATE y seguimos las instrucciones:
Le damos click a NEXT
Le damos click a NEXT
Le damos click a FINISH
Le damos click a YES
Le damos click a OK
Le damos click a OK
Ya que tenemos todo configurado, volvemos a intentar conectarnos (recuerden usar el nombre FQDN):
Ahora hemos logrado establecer una conexión RDP segura/cifrada del cliente al servidor (podemos ver el candado en el menú y si le damos click podemos ver la información del certificado).
Si el entorno es coporativo podemos hacer uso de GPO’s para la automatización de muchas de estas configuraciones, si este no es el caso, podemos crear un archivo *.rdp con las configuraciones deseas, incluyendo el nivel de seguridad, para luego así distribuirlo y conectarnos a través de este.
Espero esta información les sea útil.
Saludos!