Mam pytanie, które z pewnością ma proste rozwiązanie, ale wciąż mi się wymyka.
Na zdjęciu jest serwer, z którego korzysta kilka osób.
Wszyscy używają tego samego konta do logowania.
Jedynym sposobem na rozróżnienie sesji jest nazwa hosta lub adres IP.
Więc - jak zobaczyć na komputerze zdalnym podłączoną nazwę hosta klienta?
Na przykład I RDP do serwera 256.12.13.1
z mojego adresu IP 256.12.13.7
.
Czy istnieje polecenie, które mógłbym uruchomić na serwerze w tej zdalnej sesji, która wyświetli 256.12.13.7
?
Pytam, bo byłoby dobrze, gdyby to polecenie wypisało się, 256.12.13.9
gdy osoba łączy się z innego adresu IP.
Mogę więc uruchomić go i za każdym razem, gdy ktoś połączy skrypt w taki sposób, uruchomi się:
gethostname >> rdplog.txt<br>
date /t >> rdplog.txt <br>
time /t >> rdplog.txt
Może to w zasadzie być równoznaczne z bardzo prostym logiem logowania.
źródło
Odpowiedzi:
Możesz napisać skrypt wsadowy, taki jak:
Musisz tylko upewnić się, że osoba logująca się ma uprawnienia do zapisu w C: \ path_to_rdplog.txt
źródło
Microsoft MVP Shay Levy stworzył
PSTerminalServices
moduł PowerShell, który ma polecenia cmdlet usług terminalowych.Musi zostać zainstalowany, nie ma go domyślnie.
Jeszcze go nie użyłem, właśnie go znalazłem.
źródło
Bardzo stary wątek, ale i tak. Sprawdziliśmy zmienną środowiskową CLIENTNAME ustawioną w sesji RDP. Mieliśmy starszą aplikację, która nie mogła łatwo korzystać z Windows API lub Powershell i sprawdziliśmy tę zmienną środowiskową. Ta zmienna przechowuje nazwę hosta komputera klienta nawiązującego połączenie RDP.
źródło