elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Como proteger una cartera - billetera de Bitcoin


+  Foro de elhacker.net
|-+  Sistemas Operativos
| |-+  Windows (Moderador: Randomize)
| | |-+  Notificación cuando alguien conecta por terminal server
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Notificación cuando alguien conecta por terminal server  (Leído 3,267 veces)
maniattico

Desconectado Desconectado

Mensajes: 1


Ver Perfil
Notificación cuando alguien conecta por terminal server
« en: 6 Octubre 2010, 12:25 pm »

Buenas,

Tengo un dominio de Windows 2003R2 y clientes Windows XP SP3.

Lo que quiero conseguir es que cuando alguien se conecte por terminal server a un servidor (y a clientes tambien me vendría bien), que me llegue un correo alertandome.

Hace un tiempo intenté agregar un disparador a un suceso para ejecutar un script que me mandaba el correo, pero fallaba mucho, era engorroso, en el correo no había nada de info...

¿Se os ocurre alguna forma de poder hacer esto?

Gracias por adelantado


En línea

-=[ §ÂßÂÑÐØ ]=-


Desconectado Desconectado

Mensajes: 857


[[CoNoCiMiEnTo Es PoDeR]]


Ver Perfil WWW
Re: Notificación cuando alguien conecta por terminal server
« Respuesta #1 en: 6 Octubre 2010, 14:13 pm »

Con Visual basic y esto k te pongo.....será suficiente

Crear un registro de conexiones a terminal server con VBS.

Citar
Creamos un fichero de texto llamado registro.vbs con el siguiente contenido. 
Por último, creamos una entrada en la ejecución de sesiones de usuario 
llamando a esta aplicación.

Con esto conseguiremos que toda entrada al sistema se quede registrada en dicho fichero.
Para que este sistema sea un poco más seguro puede proteger la carpeta, ocultarla y/o
cambiarla de c:\ts\entradas.log 
a una carpeta un poco más oculta en el estructura de directorios del servidor.


' Script en VBScript parar guardar los  accesosa al terminal server
' Preformateo del fichero de texto con dobles comillas y separados por comas
 Const ForAppending = 8
 Set oShell = CreateObject("WScript.Shell")
 Set objFSO = CreateObject("Scripting.FileSystemObject")
'****************************************************************************
'Comprobamos si existe el fichero de log
 If Not objFSO.FileExists("C:\ts\entradas.log") Then
    'El fichero no existe y lo creamos con la cabecera de datos
    Set objArchivo = objFSO.CreateTextFile("c:\acceso.log", true)
    objArchivo.Write chr(34) & "Fecha" & chr(34) & ","
    objArchivo.Write chr(34) & "Hora" & chr(34) & ","
    objArchivo.Write chr(34) & "Equipo" & chr(34) & ","
    objArchivo.Write chr(34) & "Usuario" & chr(34) & ","
    objArchivo.Write chr(34) & "Tipo_Conexion" & chr(34) & ","
    objArchivo.Writeline
    objArchivo.close
 End If
'****************************************************************************
'Para obtener la fecha del sistema
 strComputer = "."
 Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
 Set colItems = objWMIService.ExecQuery("Select * from Win32_UTCTime")
 For Each objItem in colItems
    Dia  = objItem.Day
    Mes  = objItem.Month
    Anno = objItem.Year
    Hora = objItem.Hour
    Minu = objItem.Minute
 Next
 strFecha = Anno & "/" & Mes & "/" & Dia
 strReloj = Hora & ":" & Minu
'****************************************************************************
'Leemos los datos del cliente TS
 strSesion  = oShell.ExpandEnvironmentStrings("%SESSIONNAME%")
 strUsuario = oShell.ExpandEnvironmentStrings("%USERNAME%")
 strMaquina = oShell.ExpandEnvironmentStrings("%CLIENTNAME%")
'Comprobamos el tipo de conexion
 If strSesion = "" Or LCase(strSesion) = "console" Then
  strSesion = "Acceso por consola"
 End If
 If Left(strSesion,8) = "RDP-Tcp#" Then
  strSesion = "Acceso por TS"
 End If
'Agregamos los datos al fichero
 Set objArchivo = objFSO.OpenTextFile("c:\ts\entradas.log", ForAppending, False)
 objArchivo.Write chr(34) & strFecha     & chr(34) & ","
 objArchivo.Write chr(34) & strReloj      & chr(34) & ","
 objArchivo.Write chr(34) & strMaquina & chr(34) & ","
 objArchivo.Write chr(34) & strUsuario  & chr(34) & ","
 objArchivo.Write chr(34) & strSesion    & chr(34)
 objArchivo.Writeline
 objArchivo.close
' Fin del Script

Nota: Pasos para añadir este Script al inicio de sesión de los usuarios.

Para usarse desde una GPO, deberemos hacerlo en una GPO 
que afecte a las cuentas de usuario de las que queremos registrar 
sus inicios y cierres de sesión. Editando la GPO, 
en el panel del árbol, nos situamos en el nodo Configuración 
de usuarioConfiguración de WindowsSecuencia de comandos(inicio de 
sesión/cierre de sesión); veremos en el panel de detalle las directivas 
Iniciar sesión y Cerrar sesión. 
Hacemos doble click en Iniciar sesión, pulsamos el botón Agregar…, 
en la caja de texto Nombre del archivo de comandos ponemos 
la ruta y nombre del script VBScript


En línea

SALUDOS DE -=[ §AßAÑÐØ ]=-




Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines