¿Descubra a qué estaciones de trabajo se conectó un usuario en un entorno de Windows AD?

4

Actualmente tengo un usuario travieso en mi entorno. No queremos establecer alarmas (incluso después de hablar con los administradores de AD), y deseamos descubrir la estación de trabajo a la que el usuario está conectado en nuestro entorno de AD. En este momento, todo lo que sé es el nombre de usuario.

¿Cómo puedo descubrir el nombre de la estación de trabajo a la que está conectado el usuario al saber solo el nombre de usuario?

i) Podría exportar el registro de seguridad de AD y buscar el evento de inicio de sesión de los usuarios, ya que el evento de inicio de sesión captura el nombre de la estación de trabajo.

ii) Escanee a través de todas las IP en mi red y escriba un script como el que se muestra a continuación para obtener el nombre de usuario registrado actualmente en IP x

for /f %%a in (IP.txt) do WMIC /NODE:%%a computersystem GET name, username 

Gracias.

    
pregunta Teddy 28.11.2012 - 04:19
fuente

2 respuestas

1

Averigüe en qué equipos de Active Directory ha iniciado sesión un usuario.

  

Esto buscará al usuario si está conectado usando la consola o   utilizando de forma remota los servicios de terminal examinando el explorer.exe   Procesos en todas las máquinas de directorio activo. Este script requiere la   Quest ActiveRoles Management Shell gratuito para el complemento de Active Directory:   Ubicado en enlace

encuentre el artículo completo aquí

Add-PSSnapin Quest.ActiveRoles.ADManagement -ErrorAction SilentlyContinue
$ErrorActionPreference = "SilentlyContinue"

# Retrieve Username to search for, error checks to make sure the username
# is not blank and that it exists in Active Directory

Function Get-Username {
$Global:Username = Read-Host "Enter username you want to search for"
if ($Username -eq $null){
    Write-Host "Username cannot be blank, please re-enter username!!!!!"
    Get-Username}
$UserCheck = Get-QADUser -SamAccountName $Username
if ($UserCheck -eq $null){
    Write-Host "Invalid username, please verify this is the logon id for the account"
    Get-Username}
}

get-username

$computers = Get-QADComputer | where {$_.accountisdisabled -eq $false}
foreach ($comp in $computers)
    {
    $Computer = $comp.Name
    $ping = new-object System.Net.NetworkInformation.Ping
    $Reply = $null
    $Reply = $ping.send($Computer)
    if($Reply.status -like 'Success'){
        #Get explorer.exe processes
        $proc = gwmi win32_process -computer $Computer -Filter "Name = 'explorer.exe'"
        #Search collection of processes for username
        ForEach ($p in $proc) {
            $temp = ($p.GetOwner()).User
            if ($temp -eq $Username){
            write-host "$Username is logged on $Computer"
        }}}}

Joe comentó allí:

  

Joe0126 - 12 de diciembre de 2011 Reemplace: $ computers = Get-QADComputer | dónde   {$ _. accountisdisabled -eq $ false} Con: $ computers = Get-QADComputer   -OSname ' Server ' | donde {$ _. accountisdisabled -eq $ false}

    
respondido por el saber tabatabaee yazdi 29.11.2012 - 05:40
fuente
0

Una cosa a tener en cuenta es que "iniciar sesión" puede significar varias cosas en el sistema operativo Windows:

  1. podría ser que el usuario se haya conectado a un recurso compartido de SMB
  2. el usuario podría estar ejecutando un trabajo programado en ese momento, pero no haber iniciado sesión en la consola / escritorio real, etc.
  3. el usuario podría estar ejecutando un parche / actualización de software de forma remota
  4. o de hecho, están registrados.

No soy un administrador de Windows (por lo que no he visto todas las herramientas de administración) pero en el pasado escribí scripts como el suyo, excepto que usé la aplicación nbtstat.exe en un rango de direcciones IP.

tenga en cuenta que el SO virtualizado (que utiliza Servicios de Terminal Server) tiene herramientas cli adicionales, en particular el cmd de "sesión de consulta", consulte artículo de Windows TechNet

    
respondido por el Callum Wilson 28.11.2012 - 12:45
fuente

Lea otras preguntas en las etiquetas