Cómo obtener y auditar registros de conexión RDP en Windows: consejos prácticos
Intentar averiguar quién inició sesión en tu servidor o escritorio Windows mediante RDP a veces se convierte en una tarea imposible. Los registros de eventos pueden ser abrumadores o simplemente no ser lo suficientemente claros. El objetivo es comprender tu historial de conexiones RDP sin complicarte demasiado. Ya sea para auditorías de seguridad o simplemente para saber quién ha iniciado sesión, acceder y comprender estos registros puede parecer un poco complicado al principio. Pero con algunos trucos, puedes obtener una visión bastante clara de las sesiones remotas: su inicio, su fin y quién participó. Además, saber cómo filtrar actividades sospechosas o intentos de fuerza bruta tampoco es mala idea, ya que, por supuesto, Windows a veces tiene que complicar los registros de seguridad.¿Listo para entender estos registros? Vamos a desglosarlos.
Cómo reparar o acceder a los registros de Escritorio remoto en Windows
Eventos de conexión RDP en el Visor de eventos de Windows
El Visor de Eventos es tu aliado para rastrear la actividad de RDP. Cuando los usuarios se conectan o desconectan de un servidor o escritorio, Windows los registra en registros específicos que puedes consultar. La idea principal es que los registros se distribuyan en categorías como «Registros de Aplicaciones y Servicios» y «Seguridad», lo cual no resulta práctico si no sabes dónde buscar. Pero un pequeño apunte: los registros que necesitas se encuentran principalmente en estas rutas:
- Registros de aplicaciones y servicios —> Microsoft —> Windows —> TerminalServices-RemoteConnectionManager —> Operacional
- Windows —> Seguridad (para inicio de sesión exitoso/fallido, EventID 4624, 4625, etc.)
- Registros de aplicaciones y servicios —> Microsoft —> Windows —> TerminalServices-LocalSessionManager —> Operacional
- Microsoft-Windows-TerminalServices-Gateway (para registros de Puerta de enlace de Escritorio remoto, EventID 302, 300, 303, etc.)
¿Qué ayuda? Habilite el filtrado de registros para ID de evento específicos, como 1149 (conexión de red), 4624 (inicio de sesión correcto), 24 (desconexión de sesión) o 23 (cierre de sesión).Si tiene pereza como yo, obtener estos registros de PowerShell es más rápido que navegar sin parar por los menús.
Obtener el historial de conexión RDP con PowerShell
Hablando de PowerShell, es la forma más rápida de obtener una instantánea de la actividad de RDP. Aquí tienes un script sencillo que analiza tus registros de eventos de seguridad en busca de eventos como 4624 (inicio de sesión correcto) y 4778 (sesión reconectada), filtrando por tipo de inicio de sesión 10 (RDP remoto).Esto te ayuda a ver quién inició sesión, desde dónde y cuándo, todo en una tabla con un formato preciso, sin necesidad de interfaz gráfica.
Get-EventLog -LogName Security -after (Get-Date).Date | ?{ $_. EventID -eq 4624 -or $_. EventID -eq 4778 } | ?{ $_. Message -match 'Logon Type:\s+10' } | %{ [PSCustomObject]@{ Time = $_. TimeGenerated User = ($_. Message -match 'Account Name:\s+([^\s]+)')[1] Domain = ($_. Message -match 'Account Domain:\s+([^\s]+)')[1] SourceIP = ($_. Message -match 'Source Network Address:\s+([^\s]+)')[1] LogonType = ($_. Message -match 'Logon Type:\s+([^\s]+)')[1] } } | sort Time -Descending | Format-Table -AutoSize
Este script es básico, pero funciona en un solo servidor a la vez. Si gestionas una granja de servidores RDS, puedes modificarlo o ejecutarlo remotamente mediante PowerShell. Es una instantánea que muestra quién se conectó, cuándo, desde qué IP y con qué cuenta. Práctico, ¿verdad?
Exportación y análisis de registros RDP
¿Quieres analizar estos datos en Excel? Fácil. Puedes exportar tus registros de eventos a CSV. Por ejemplo, usa:
Export-Csv -Path c:\logs\rdp_connections.csv -InputObject (Get-WinEvent -LogName 'Microsoft-Windows-TerminalServices-LocalSessionManager/Operational' | Select-Object * )
O analizar registros a través de la línea de comando con:
WEVTUtil query-events Security > c:\ps\rdp_security_log.txt
La clave es que, una vez exportados, es más fácil filtrar, pivotar y detectar anomalías o patrones en las horas de inicio de sesión, las direcciones IP o los comportamientos de desconexión de los usuarios. Si los usuarios se conectan a través de una puerta de enlace de Escritorio remoto, no olvide revisar los eventos en Microsoft-Windows-TerminalServices-Gateway/Operational.
Cómo rastrear el historial de conexiones RDP salientes
Esta parte es menos conocida, pero también útil. Los eventos registrados en su equipo local bajo Microsoft-Windows-TerminalServices-RDPClient pueden indicarle si un usuario usó su PC como cliente RDP para conectarse externamente. El ID de evento 1102 es su origen. Esto es un poco extraño, pero registra las sesiones de cliente RDP iniciadas desde su equipo Windows, incluyendo las direcciones IP y las marcas de tiempo de los servidores remotos.
Get-WinEvent -LogName 'Microsoft-Windows-TerminalServices-RDPClient/Operational' -FilterHashTable @{ID=1102} | Select-Object TimeCreated, UserID, Properties
Ver estos registros puede ser útil si sospecha que su sistema se está utilizando para conexiones remotas no autorizadas o simplemente desea controlar la actividad RDP saliente, porque a veces la actividad también ocurre en el lado del cliente.
¿El punto? Los registros RDP no son solo registros; son un tesoro si sabes dónde buscar y cómo extraer lo importante. Además, son útiles para solucionar problemas o detectar intentos de acceso no autorizado sin tener que recurrir a las grandes herramientas de seguridad.
Resumen
- Verifique el Visor de eventos en los registros especificados para eventos de conexión, inicio de sesión, desconexión y cierre de sesión.
- Utilice scripts de PowerShell para recopilar rápidamente el historial de conexión y exportar registros para un análisis más detallado.
- No olvide echar un vistazo a las sesiones RDP salientes para tener control total sobre la actividad remota.
Resumen
Controlar los registros de conexión RDP puede ser un poco tedioso, pero es necesario para la seguridad y las auditorías. Una vez que sabes qué eventos buscar y cómo filtrarlos, es sorprendentemente fácil de gestionar. Estos registros te indican quién ha estado husmeando, cuándo y desde dónde; información útil tanto si estás depurando como si simplemente estás paranoico. No es perfecto, pero es mejor que buscar a ciegas. Ojalá esto ayude a alguien a ahorrarse horas de frustración.