如何查找用户登录到的计算机名称


9

是否存在工具或脚本或其他某种方式来了解特定用户当前登录的计算机名称?甚至已登录?

假设用户“ HRDrone”正在其主机名为“ HRStation01”的计算机上工作。

我坐在sysadmin桌面上,只知道用户名是“ HRDrone”。以任何方式我都可以发现他无需询问用户即可登录“ HRStation01”?广告事件查看器?有什么事吗

谢谢!


好吧,我还没有找到使用通用Windows或AD工具执行此操作的任何方法,但是事实证明,我们的AV系统(SEP 11)存储了所需的信息,因此我使用了查询防病毒数据库的VB脚本来解决了该问题。我猜可以使用另一个系统(例如SMS / SCOM)的类似解决方案。
V. Romanov

social.technet.microsoft.com/wiki/contents/articles/…这是使用gpo取得此结果的另一种方法
mike

Answers:


8

有一个很棒的Sysinternals实用程序将为您完成此任务-PsLoggedOn


树枝psloggedon不能为特定用户扫描网络,我只是用它来查找特定计算机上的用户。谢谢!
JamesOff,2010年

检查了一下。看起来很有趣,但对于日常使用而言却是不切实际的,因为扫描该域中的所有计算机几乎要花费数小时,在未连接的计算机等上崩溃。我正在寻找更多类似事件日志扫描的内容。我们的防病毒系统中有类似的东西,它记录每台计算机的名称,而用户最后一次登录。我有时会用它,但我想知道Windows是否还有其他“本机”。
V. Romanov'3

5

我经常使用的一种廉价技巧是查看“计算机管理”控制台中“共享文件夹”下列出的“会话”,该服务器针对文件服务器计算机,我知道目标用户将拥有“驱动器”“映射”。


1

bat文件中的这些作为用户登录脚本如何运行它,您将看到乐趣

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

或者,如果您需要详细信息

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\

您可以根据需要与我联系以获取更多脚本,这对我也是一个很好的学习


0

我不确定是否有活动,但是安全事件日志记录了用户的登录信息。访问DC上的事件日志应该能够为您提供此信息。前提是正在收集信息。我认为这是一项政策设置。

Microsoft的本页描述了一种非常缓慢且复杂的查询事件日志的方法:http : //technet.microsoft.com/zh-cn/library/ee176699.aspx

我敢肯定这对您没有帮助,但可以作为审核工作。即不良事件发生时登录的用户!


0

我必须解决整个公司的远程支持问题。事实证明,PsLoggedOn之类的东西以及用于扫描域控制器安全日志的工具对于我的目的来说太慢了(让主机名为用户提供远程支持)。这是我想出的:

  • 所有用户的驱动器都映射到AD:“个人资料-主文件夹”下的X:
  • 每个人都在“个人资料-登录”脚本下分配了以下脚本

该脚本在主文件夹中记录他们登录的计算机。它特别不记录他们登录到我们的终端服务器,因为我不在乎这些条目。

'===============================================================
' 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

然后,我在本地计算机上使用了一些VBscript以自动在AD中找到其主目录,打开日志文件,并打印出最后几行。


0

作为系统管理员,您可以在登录脚本中嵌入例程以存储。txt用户名和主机名的文件,或使用sqlite。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.