Controlar el acceso RDP en Windows Server 2022 desde sólo 15 equipos: guía definitiva

Limitar el acceso RDP a Windows Server 2022 a sólo quince equipos es posible combinando control de identidades y filtrado de red; esta guía práctica explica cómo hacerlo paso a paso, automatizarlo con PowerShell, evitar errores frecuentes y mantener la configuración segura a largo plazo.

Índice

Resumen del problema

Dispones de un servidor Windows Server 2022 que sólo debe aceptar conexiones de Escritorio Remoto (RDP) a través de la VPN corporativa y exclusivamente desde 15 PC autorizados. Cualquier otro intento—legítimo o malicioso—ha de ser bloqueado.

Enfoque general

Para cerrar la superficie de ataque sin sacrificar la productividad, se aplican dos capas complementarias:

  • Autorización de usuario: sólo los usuarios situados en un grupo de seguridad de Active Directory pueden abrir sesión RDP.
  • Filtrado por dirección IP: Windows Firewall (o un dispositivo perimetral) permite el puerto 3389 únicamente a las 15 IP fijas de los equipos aprobados.

Con este diseño, un atacante necesitaría a la vez una credencial válida y una de las direcciones IP autorizadas, elevando enormemente la seguridad.

Paso a paso detallado

Crear el grupo de seguridad en Active Directory

  1. En dsa.msc, crea un grupo global denominado, por ejemplo, GGRDPAutorizados_WS2022.
  2. Agrega únicamente a los usuarios que realmente necesitan escritorio remoto en este servidor.
  3. Documenta quién aprueba cada alta/baja para auditoría.

Delegar el derecho “Permitir inicio de sesión a través de Servicios de Escritorio remoto”

  1. En el servidor, abre secpol.msc.
  2. Navega a Directivas locales → Asignación de derechos de usuario.
  3. Edita Permitir inicio de sesión a través de Servicios de Escritorio remoto y agrega el grupo creado.
  4. Elimina “Remote Desktop Users” para evitar accesos accidentales.

Tip: si la máquina forma parte de dominio, hazlo desde una GPO vinculada a la OU del servidor para que quede centralizado y versionado.

Asignar direcciones IP fijas a los 15 equipos

Las reglas de firewall operan sobre IP, de modo que cada PC debe conservar siempre la misma IP interna. Existen dos opciones:

  • Reservas DHCP: en el servidor DHCP fija la IP según la MAC.
  • IP estática: configura manualmente en el adaptador de red del PC.

Crear la regla de Windows Firewall

  1. Abre wf.msc con privilegios de administrador.
  2. Selecciona Reglas de entrada → Nueva regla… → Personalizada.
  3. Protocolo TCP, puerto local 3389.
  4. Pestaña Ámbito → “Estas direcciones IP remotas” → agrega las 15 IP, una por línea.
  5. Acción: Permitir la conexión.
  6. Perfil: aplica en Dominio, Privado y Público si tu política lo exige.
  7. Deshabilita la regla RDP predeterminada o cámbiala a Bloquear para obligar al filtrado.

Regla de bloqueo implícito

No es necesario crear explícitamente una regla de denegación: al desactivar la regla por defecto, cualquier IP que no figure en la lista simplemente no cumplirá los criterios y la conexión será rechazada.

Tabla resumida de la solución

ObjetivoPaso claveDetalles
Restringir quién puede iniciar sesiónCrear un grupo de seguridad en Active Directory1. Añade sólo los usuarios que necesitan RDP.
2. Se cp ol.msc → Directivas locales → Asignación de derechos de usuario → “Permitir inicio…” y agrega el grupo.
3. Quita “Remote Desktop Users”.
Restringir desde dónde se conecta el usuarioRegla de firewall basada en IP1. wf.msc → Regla nueva (Personalizada).
2. TCP 3389.
3. Ámbito → añade las 15 IP.
4. Acción “Permitir”.
5. Desactiva la regla RDP por defecto.
Asignar IP fijasReservas DHCP o IP estáticasGarantiza que las direcciones no cambien.
Mantener acceso de emergenciaiLO/DRAC o política temporalEvita bloqueos accidentales durante pruebas.

Automatización con PowerShell

Así puedes reproducir la configuración en segundos y versionarla en Git:

# Variables
$ServerName      = "SRV-FILES-01"
$GrupoRDP        = "GGRDPAutorizados_WS2022"
$IPsAutorizadas  = @("10.10.10.11","10.10.10.12","10.10.10.13",
                     "10.10.10.14","10.10.10.15","10.10.10.16",
                     "10.10.10.17","10.10.10.18","10.10.10.19",
                     "10.10.10.20","10.10.10.21","10.10.10.22",
                     "10.10.10.23","10.10.10.24","10.10.10.25")

1. Asigna el derecho de inicio de sesión

Add-LocalGroupMember -Group "Remote Desktop Users" -Member \$GrupoRDP

2. Crea la regla de firewall (entra primero en el servidor)

Invoke-Command -ComputerName \$ServerName -ScriptBlock {
Param(\$IPs)
\# Deshabilita la regla predeterminada de RDP
Disable-NetFirewallRule -DisplayName "Remote Desktop - User Mode (TCP-In)" -ErrorAction SilentlyContinue
\# Crea la nueva regla si no existe
\$Regla = Get-NetFirewallRule -DisplayName "RDP Permitido 15 PCs" -ErrorAction SilentlyContinue
if (-not \$Regla) {
New-NetFirewallRule -DisplayName "RDP Permitido 15 PCs" `                            -Direction Inbound -Action Allow -Protocol TCP -LocalPort 3389`
-RemoteAddress (\$IPs -join ",") -Profile Any
} else {
Set-NetFirewallRule -DisplayName "RDP Permitido 15 PCs" \`
-RemoteAddress (\$IPs -join ",")
}
} -ArgumentList (\$IPsAutorizadas) 

Guarda el script como Configura-RDP15.ps1 y ejecútalo desde una estación de administración. Añade parámetros si quieres reutilizarlo en otros servidores.

Validación y pruebas

  • Desde un PC autorizado: abre mstsc.exeEquipo → IP del servidor → conecta. Deberías recibir la pantalla de credenciales.
  • Desde un PC no autorizado: ejecuta Test-NetConnection SRV-FILES-01 -Port 3389; el resultado será TcpTestSucceeded = False.
  • Registro de eventos: en el servidor revisa Microsoft‑Windows‑Security‑Auditing (ID 4625) para intentos fallidos y Microsoft‑Windows‑TerminalServices‑RemoteConnectionManager (ID 1149) para sesiones correctas.

Errores comunes y resolución

SíntomaCausa probableSolución
Usuarios reportan “Credenciales no válidas”.No pertenecen al grupo de seguridad o el token no se ha actualizado.Verifica membresía y pide log off/log on para refrescar el token.
PC autorizado, pero no conecta.La IP asignada cambió (DHCP renovado).Confirma la IP en el cliente y ajusta la reserva DHCP o la regla.
Conexiones anónimas siguen entrando.No se deshabilitó la regla RDP por defecto.Revisa Get-NetFirewallRule | ? {$_.DisplayName -like "Remote Desktop*"} y desactiva las que no usas.

Alternativas avanzadas

Si la organización necesita una solución más granular o quiere exponer RDP a Internet sin VPN, considera:

  • RD Gateway con políticas CAP/RAP que combinan grupos de usuarios y equipos.
  • IPsec con autenticación de equipo: filtra a nivel de host y cifra el tráfico.
  • ACL en el firewall de la VPN: bloquea 3389 salvo para las 15 IP. Reduce carga en el servidor.

Buenas prácticas de seguridad

  • Habilita Autenticación a nivel de red (NLA) y usa TLS 1.2 para RDP.
  • Aísla el servidor en una zona DMZ o VLAN restringida.
  • Aplica principio de mínimo privilegio en el grupo de Usuarios.
  • Revisa Windows Update y parches de seguridad mensualmente.
  • Configura Alertas de inicio de sesión sospechoso en tu SIEM.

Mantenimiento continuo

Establece un proceso formal para ALTAS, BAJAS y REVISIONES:

  1. Petición justificada (ticket) con fecha de caducidad.
  2. Automatiza la adición al grupo mediante un workflow (por ejemplo, Power Automate).
  3. Ejecuta el script de PowerShell tras cada cambio para asegurar coherencia.
  4. Realiza auditoría trimestral tanto del grupo como de la lista de IP.

Conclusión

Al combinar control de identidad mediante Active Directory con filtrado de IP en Windows Firewall, reduces la superficie de ataque de RDP a un nivel que cumple—e incluso supera—la mayoría de marcos de ciberseguridad corporativos. Si además documentas y automatizas el proceso, el mantenimiento será mínimo y tendrás evidencia clara ante auditorías.

Índice