Jak znaleźć nazwę komputera, na którym zalogował się użytkownik


9

Czy istnieje narzędzie, skrypt lub inny sposób na poznanie nazwy komputera, na którym konkretny użytkownik jest aktualnie zalogowany? A może nawet był zalogowany?

Powiedz, że użytkownik „HRDrone” pracuje na swoim komputerze, którego nazwa hosta to „HRStation01”.

Ja, siedzący przy biurku sysadmin, wiem tylko, że nazwa użytkownika to „HRDrone”. W jaki sposób mogę dowiedzieć się, że jest zalogowany na „HRStation01” bez pytania użytkownika? Przeglądarka zdarzeń AD? byle co?

Dzięki!


Cóż, nie znalazłem żadnego sposobu, aby to zrobić za pomocą ogólnych okien lub narzędzi AD, ale okazuje się, że nasz system AV (SEP 11) przechowuje wymagane informacje, więc rozwiązałem je za pomocą skryptu VB, który wysyła kwerendę do antywirusowej bazy danych. Wydaje mi się, że można zastosować podobne rozwiązanie przy użyciu innego systemu, takiego jak SMS / SCOM.
V. Romanow

social.technet.microsoft.com/wiki/contents/articles/… tutaj jest alternatywny sposób na uzyskanie tego za pomocą gpo
Mike zabłysnął

Odpowiedzi:


8

Istnieje świetne narzędzie Sysinternals, które zrobi to za Ciebie - PsLoggedOn


Nie psiggedon gałązka może skanować sieć w poszukiwaniu konkretnego użytkownika, użyłem go tylko do znalezienia, kto był na konkretnej maszynie. Dzięki!
JamesOff

Sprawdziłem to. Wydaje się to interesujące, ale niepraktyczne w codziennym użytkowaniu, ponieważ skanowanie dosłownie wszystkich komputerów w domenie zajmuje dosłownie godziny, awarie na komputerach, które nie są podłączone i tak dalej. Szukam czegoś więcej, podobnie jak skanowanie dziennika zdarzeń. W naszym systemie antywirusowym mamy coś podobnego, w którym rejestruje nazwę każdego komputera i użytkownika, który był ostatnio zalogowany. Czasami tego używam, ale zastanawiam się, czy jest coś bardziej „rodzimego” w systemie Windows.
V. Romanow

5

Tania sztuczka, której często używam, to spojrzenie na „Sesje” wymienione w sekcji „Foldery współdzielone” w konsoli „Zarządzanie komputerem” skierowane na komputer serwera plików, na którym wiem, że użytkownik tematu będzie miał „zmapowany” dysk.


1

co powiesz na te w pliku bat jako skrypt logowania użytkownika Uruchom go, a zobaczysz zabawę

mkdir %username% 
pushd %username% 
net config workstation > %computername%.txt

LUB jeśli potrzebujesz szczegółowo

mkdir %username% 
pushd %username% 
@echo off
echo
echo I am logged on as %UserName%. >> %username%\%computername%.txt
echo My computer's name is %ComputerName%. >> %computername%.txt
echo %Date% >> %computername%.txt
echo %Time% >> %computername%.txt
echo My IP settings are >> %computername%.txt
ipconfig | find "." | find /i /v "suffix" >> %computername%.txt
getmac >> %computername%.txt
echo\

możesz skontaktować się ze mną, aby uzyskać więcej skryptów, jeśli ich potrzebujesz, to również dobra nauka dla mnie


0

Nie jestem pewien, czy coś jest aktywne, ale Dziennik zdarzeń bezpieczeństwa rejestruje dane logowania od użytkowników. Dostęp do dziennika zdarzeń na kontrolerach domeny powinien być w stanie przekazać te informacje. Pod warunkiem, że gromadzone są informacje. Myślę, że to ustawienie polityki.

Ta strona firmy Microsoft opisuje naprawdę powolny i skomplikowany sposób wyszukiwania dzienników zdarzeń: http://technet.microsoft.com/en-us/library/ee176699.aspx

Jestem pewien, że to ci nie pomoże, ale może działać jako audyt. Tj. Zalogowany, kiedy zdarzyły się złe rzeczy!


0

Musiałem rozwiązać ten problem, wykonując zdalne wsparcie w całej mojej firmie. Rzeczy takie jak PsLoggedOn i narzędzia do skanowania dzienników bezpieczeństwa kontrolera domeny okazały się zbyt wolne dla moich celów (uzyskanie nazwy hosta do obsługi zdalnej dla użytkowników). Oto, co wymyśliłem:

  • Wszyscy użytkownicy mają dysk zamapowany na X: w AD w obszarze Profil - Folder domowy
  • Każdy ma przypisany poniżej skrypt w obszarze Profil - skrypt logowania

Ten skrypt rejestruje, na jakim komputerze zalogował się w swoim folderze domowym. W szczególności nie rejestruje ich logowania do naszego serwera terminali, ponieważ nie dbam o takie wpisy.

'===============================================================
' Record the logon in their X: drive UNLESS they are on TERM-SERVER!
'===============================================================
If strComputerName <> "TERM-SRVER" Then
    strFile = "X:\login.txt"
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    Set objTextFile = objFSO.OpenTextFile(strFile, 8, True)
    objTextFile.WriteLine(strIP + " - " + strComputerName + " - " + CStr(Date) + " " +     CStr(Time))
    objTextFile.Close
    ' Make it hidden
    Set objTextFile = objFSO.GetFile(strFile)
    objTextFile.Attributes = 2
End If

Następnie używam odrobiny VBscript na moim komputerze lokalnym, aby automatycznie znaleźć katalog domowy w AD, otworzyć plik dziennika i wydrukować kilka ostatnich wierszy.


0

Jako sysadmin możesz osadzić procedurę w skrypcie logowania do przechowywania pliku. txtplik z nazwą użytkownika i nazwą hosta lub użyj narzędzia sqlite.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.