Apakah ada cara untuk menentukan alamat IP klien desktop jarak jauh menggunakan PowerShell (atau metode lain) di server? (Windows Server 2008 R2 x64 adalah yang saya gunakan)
EDIT: Saya menemukan bahwa saya dapat menangkap stdout netstat untuk mengambil informasi ini yang sangat layak, jadi bagaimana saya bisa memicu skrip / perintah shell ketika klien terhubung?
Jawaban:
Dari prompt perintah, Anda dapat menjalankan perintah berikut untuk mendapatkan daftar IP jarak jauh yang terhubung ke RDP (port 3389).
Saya yakin ini dapat ditulis dalam PowerShell (atau bahkan hanya file batch lama). Saya dapat memberikan contoh besok jika Anda tertarik.
sumber
Baiklah saya tahu bahwa
task scheduler
aplikasi yang datang dengan windows dapat dikonfigurasi di mana saya dapat menjalankan skrip batch, dipicu ketika suatu peristiwa dalam log peristiwa dihasilkan. Melalui UI Anda memilih jenis acara, sumber acara dan ID peristiwa, dalam hal ini saya menggunakan 4264 (dan ya adalah menangkap semua jenis masuk). Di sini saya menggunakan skrip kumpulan sederhana sebagai gantinya:Saya juga menemukan contoh super berguna tentang cara berlangganan / mendengarkan acara menulis di .NET: http://msdn.microsoft.com/en-us/library/bb552514(v=vs.90).aspx I ' Saya akan berakhir menggunakan itu sebagai gantinya untuk menulis acara tertentu ke database untuk pemeriksaan berbasis web.
Satu-satunya kelemahan dari solusi ini adalah bahwa jika Anda memiliki Remote Desktop Services diaktifkan dan banyak orang terhubung, Anda tidak dapat membedakan di antara mereka dalam output netstat.
sumber
Jika Anda tidak perlu membuat skrip, Anda dapat melihat di log peristiwa keamanan untuk ID 4624 acara. Akan ada baris:
Sumber Jaringan Alamat: 192.168.xxx.xxx
sumber