Solución:
Solución 1:
Desde un símbolo del sistema, puede ejecutar el siguiente comando para obtener una lista de las direcciones IP remotas que están conectadas a RDP (puerto 3389).
netstat -n | find ":3389" | find "ESTABLISHED"
Estoy seguro de que esto se puede programar en PowerShell (o incluso simplemente en un archivo por lotes antiguo). Puedo dar un ejemplo mañana si está interesado.
Solucion 2:
Muy bien, me di cuenta de que el task scheduler
La aplicación que viene con Windows se puede configurar para que pueda ejecutar un script por lotes, que se activa cuando se genera un evento en el registro de eventos. A través de la interfaz de usuario, eliges el tipo de evento, la fuente del evento y el ID del evento, en cuyo caso utilicé 4264 (y sí, captura todos los tipos de inicio de sesión). Aquí usé un script por lotes simple en su lugar:
SET logfile="rdp_ip_logs.log"
date /T>>%logfile%
time /T>>%logfile%
netstat -n | find ":3389" | find "ESTABLISHED">>%logfile%
También encontré un ejemplo súper útil sobre cómo suscribirse / escuchar escrituras de eventos en .NET: http://msdn.microsoft.com/en-us/library/bb552514(v=vs.90).aspx I ‘ Terminaré usando eso en su lugar para escribir ciertos eventos en una base de datos para un examen basado en la web.
El único inconveniente de esta solución es que si tiene habilitados los Servicios de escritorio remoto y hay varias personas conectadas, no puede diferenciarlas en la salida de netstat.
Solución 3:
Si no necesita escribirlo, puede buscar en el registro de eventos de seguridad el ID de evento 4624. Habrá una línea:
Dirección de red de origen: 192.168.xxx.xxx
Solución 4:
Toda esta información está disponible en Windows Server 2016 y 2019:
Puede ver quién inició sesión de forma remota, el ID de sesión que se les ha dado y desde qué dirección IP yendo a:
Visor de eventos Registros de aplicaciones y servicios Microsoft Windows TerminalServices-RemoteConnectionManager Id. De evento operativo 1149 (para ver qué cuenta se usó en el nivel de conexión NLA)
Y
TerminalServices-LocalSessionManager Operational Event ID 21 (para ver qué cuenta se usó para el inicio de sesión de RDP)
Tenga en cuenta que es posible que deba habilitar “Auditar eventos de inicio de sesión de la cuenta: éxito y error” en la política del grupo de seguridad local para que se registren estos eventos.
Puede ir más allá identificando exactamente de dónde proviene el inicio de sesión en el mundo:
Descargue la utilidad currports y los archivos csv Geolite2 asociados desde https://www.nirsoft.net/utils/cports.html Es portátil, por lo que no hay nada que instalar y toda la información para hacer esto está en ese sitio. Simplemente aplique un filtro para mostrar solo el tráfico RDP (incluya: local: tcp: 3389)
Después de personalizar algunas columnas, puede ver absolutamente todo sobre todas las conexiones a su servidor RDS.
Ben