Назад | Перейти на главную страницу

Как я могу получить IP-адрес клиента удаленного рабочего стола? И как я могу запустить команду оболочки при подключении RDP?

Есть ли способ определить IP-адрес клиента удаленного рабочего стола с помощью PowerShell (или другого метода) на сервере? (Я использую Windows Server 2008 R2 x64)

РЕДАКТИРОВАТЬ: Я обнаружил, что могу использовать команду grep netstat stdout для получения этой информации, что очень возможно, так как я могу запустить команду сценария / оболочки при подключении клиента?

Из командной строки вы можете запустить следующую команду, чтобы получить список удаленных IP-адресов, подключенных к RDP (порт 3389).

netstat -n | find ":3389" | find "ESTABLISHED"

Я уверен, что это можно написать в PowerShell (или даже в обычном старом командном файле). Я могу привести пример завтра, если вам интересно.

Хорошо, я понял, что task scheduler приложение, которое поставляется с окнами, настраивается так, чтобы я мог запускать пакетный сценарий, запускаемый при создании события в журнале событий. Через пользовательский интерфейс вы выбираете тип события, источник события и идентификатор события, и в этом случае я использовал 4264 (и да, это захватывает все типы входа в систему). Вместо этого я использовал простой пакетный скрипт:

SET logfile="rdp_ip_logs.log"
date /T>>%logfile%
time /T>>%logfile%
netstat -n | find ":3389" | find "ESTABLISHED">>%logfile%

Также я нашел этот супер-полезный пример того, как подписаться / прослушивать записи событий в .NET: http://msdn.microsoft.com/en-us/library/bb552514(v=vs.90).aspx Я собираюсь использовать это вместо того, чтобы записывать определенные события в базу данных для веб-исследования.

Единственным недостатком этого решения является то, что если у вас включены службы удаленных рабочих столов и подключено несколько человек, вы не сможете различить их в выводе netstat.

Если вам не нужно создавать сценарий, вы можете найти в журнале событий безопасности событие с идентификатором 4624. Там будет строка:

Исходный сетевой адрес: 192.168.xxx.xxx