Título: Notificación cuando alguien conecta por terminal server Publicado por: maniattico 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 Título: Re: Notificación cuando alguien conecta por terminal server Publicado por: -=[ §ÂßÂÑÐØ ]=- 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 |