서버에서 PowerShell (또는 다른 방법)을 사용하여 원격 데스크톱 클라이언트의 IP 주소를 확인하는 방법이 있습니까? (Windows Server 2008 R2 x64는 내가 사용하는 것입니다)
편집 : netstat의 stdout을 grep하여 매우 실현 가능한 정보를 검색 할 수 있다는 것을 알았습니다. 클라이언트가 연결할 때 스크립트 / 쉘 명령을 어떻게 트리거 할 수 있습니까?
서버에서 PowerShell (또는 다른 방법)을 사용하여 원격 데스크톱 클라이언트의 IP 주소를 확인하는 방법이 있습니까? (Windows Server 2008 R2 x64는 내가 사용하는 것입니다)
편집 : netstat의 stdout을 grep하여 매우 실현 가능한 정보를 검색 할 수 있다는 것을 알았습니다. 클라이언트가 연결할 때 스크립트 / 쉘 명령을 어떻게 트리거 할 수 있습니까?
답변:
task scheduler
Windows와 함께 제공 되는 응용 프로그램은 이벤트 로그의 이벤트가 생성 될 때 트리거되는 배치 스크립트를 실행할 수있는 위치로 구성 할 수 있다는 것을 알았습니다. UI를 통해 이벤트 유형, 이벤트 소스 및 이벤트 ID를 선택합니다.이 경우 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 'I 웹 기반 검사를 위해 특정 이벤트를 데이터베이스에 쓰는 데 대신 사용합니다.
이 솔루션의 유일한 단점은 원격 데스크톱 서비스를 사용하도록 설정하고 여러 사람이 연결된 경우 netstat 출력에서 이들을 구별 할 수 없다는 것입니다.
스크립트를 작성하지 않아도되는 경우 보안 이벤트 로그에서 이벤트 ID 4624를 찾을 수 있습니다. 행이 있습니다.
소스 네트워크 주소 : 192.168.xxx.xxx