Puede utilizar las herramientas de este artículo para centralizar los registros de eventos de Windows desde varios servidores y escritorios. Al administrar correctamente sus registros, puede realizar un seguimiento del estado de sus sistemas, mantener seguros sus archivos de registro y filtrar el contenido para encontrar información específica.
- ¿Por qué Centralizar los Registros?
- Suscripción a eventos de Windows
- Sistema de ejemplo
- Configurar
- Habilitar el Servicio de Administración remota de Windows
- Configurar el servicio de Recopilador de eventos de Windows
- Configurar el Grupo Lectores de registros de eventos
- Configure Firewall de Windows
- Crear una suscripción
- Verificar eventos en el equipo de recopilador
- Crear una vista personalizada (Opcional)
- Servicios de registro de Windows
- Instalar NXLog
- Configure NXLog
- Registros de archivos
- Registros de IIS
- Registros de errores de SQL Server
- Reenvío de registros a un servidor
- Cifrar registros con TLS
¿Por qué Centralizar los Registros?
La centralización de los registros ahorra tiempo y aumenta la fiabilidad de los datos de registro. Cuando los archivos de registro de Windows se almacenan localmente en cada servidor, debe iniciar sesión individualmente en cada uno para revisarlos y buscar errores o advertencias. Si el servidor no responde, es posible que no tengas suerte. Si no está seguro de qué servidores están afectados, tiene que buscar en cada uno, lo que puede llevar mucho tiempo en redes grandes. Los archivos de registro también son más seguros en una ubicación centralizada porque, incluso cuando se terminan las instancias o se eliminan los archivos (intencionalmente o no), las copias de seguridad centralizadas de los registros no se ven afectadas.
Suscripción a eventos de Windows
Es posible que un servidor de Windows reenvíe sus eventos a un servidor de recopiladores. En este caso, el servidor recopilador se convierte en un repositorio central para los registros de Windows de otros servidores (denominados fuentes de eventos) de la red. El flujo de eventos de una fuente a un recopilador se denomina suscripción.
Este procedimiento muestra cómo configurarlo. Estos pasos funcionan en Windows Server 2008 R2, Windows Server 2012 y Windows Server 2019.
Sistema de ejemplo
Estamos utilizando dos sistemas Windows Server 2012 unidos al dominio de Active Directory. El nombre de dominio es mytestdomain.com y ambas máquinas están registradas con el dominio.
Servidor de origen MYTESTSQL aloja una instancia de SQL Server 2014. Servidor de recopiladores MYTESTSERVER funciona como suscriptor de registro de eventos para centralizar todos los registros relacionados con SQL Server de MYTESTSQL.
Configurar
Habilitar el Servicio de Administración remota de Windows
La administración remota de Windows (WinRM) es un protocolo para intercambiar información entre sistemas de su infraestructura. Debe habilitarlo en cada uno de los equipos de origen para intercambiar archivos de registro.
- Inicie sesión de forma remota en el equipo de origen (MYTESTSQL) como administrador local o de dominio.
- Habilitar el Servicio de Administración remota de Windows desde un símbolo del sistema:
winrm quickconfig
Si ya se está ejecutando, se mostrará un mensaje similar a este ejemplo.
Configurar el servicio de Recopilador de eventos de Windows
Debe habilitar el servicio de Recopilador de eventos de Windows en el servidor de recopiladores para que pueda recibir registros de sus orígenes.
- Inicie sesión de forma remota en el equipo recopilador (MYTESTSERVER) como administrador local o de dominio.
- Configure el Servicio de Recopilador de eventos de Windows desde un símbolo del sistema:
wecutil qcin
Si se le solicita como en el ejemplo, presione y
Configurar el Grupo Lectores de registros de eventos
De forma predeterminada, algunos registros están restringidos a los administradores. Esto puede causar problemas al recibir registros de otros sistemas. Para evitar esto, puede conceder acceso al equipo recopilador agregándolo al grupo Lectores de registro de eventos.
- Vuelva a la computadora de origen (MYTESTSQL).
- Abra el Administrador del servidor.
- Abra la Administración del equipo.
- Expanda el nodo Usuarios y grupos locales desde el panel de navegación y seleccione Grupos.
- Haga doble clic en Lectores de Registro de eventos.
- Haga clic en Agregar para abrir el cuadro de diálogo Seleccionar Usuarios, Equipos, Cuentas de servicio o grupos.
- Haga clic en Tipos de objetos.
- Compruebe Equipos y haga clic en Aceptar.
- Escriba MYTESTSERVER como nombre de objeto y haga clic en Comprobar nombres. Si se encuentra la cuenta de equipo, se confirma con un subrayado.
- Haga clic en Aceptar dos veces para cerrar los cuadros de diálogo.
Configure Firewall de Windows
Si el equipo de origen ejecuta Firewall de Windows, asegúrese de que permite la Administración Remota de Registros de Eventos y el tráfico de Monitor de Eventos Remotos.
Crear una suscripción
Las suscripciones definen la relación entre un recopilador y un origen. Puede configurar un recopilador para recibir eventos de cualquier número de fuentes (una suscripción iniciada por el recopilador) o especificar un conjunto limitado de fuentes (una suscripción iniciada por el recopilador). En este ejemplo, creamos una suscripción iniciada por recopiladores, ya que sabemos qué registros de computadora queremos recibir.
- Inicie la aplicación Visor de eventos en el servidor de recopiladores MYTESTSERVER.
- Seleccione Suscripciones en el panel de navegación
- Haga clic en Crear suscripción en el panel Acciones.
- En las Propiedades de suscripción, escriba lo siguiente como se muestra en el ejemplo:
Nombre de suscripción: MYTESTSQL_EVENTS
Descripción: Eventos del servidor de origen remoto MYTESTSQL
Registro de destino: Eventos reenviados
Seleccione Recopilador iniciado y haga clic en Seleccionar equipos para abrir el cuadro de diálogo Equipos.
- Haga clic en Agregar Equipos de Dominio.
- Introduzca MYTESTSQL como nombre de objeto y haga clic en Comprobar nombres. Si se encuentra el ordenador, se confirma con un subrayado.
- Haga clic en Aceptar.
- Haga clic en Aceptar para volver a las propiedades de suscripción.
- Haga clic en Seleccionar eventos para abrir el filtro de consulta e ingrese lo siguiente para configurar el servidor remoto para reenviar todos los eventos de la aplicación de las últimas 24 horas:
Registrado: Últimas 24 horas
Comprobar todos los niveles de eventos
Seleccionar por registro
Registros de eventos: Seleccione la aplicación en la lista desplegable
- Haga clic en Aceptar para volver a las propiedades de suscripción.
- Haga clic en Avanzado para abrir la Configuración de suscripción avanzada e ingrese lo siguiente:
Seleccione Cuenta de máquina
Seleccione Minimizar latencia
Protocolo: HTTP
Puerto: 5985
- Haga clic en Aceptar para volver a las propiedades de suscripción.
- Haga clic en Aceptar para cerrar.
El nodo de suscripción en el visor de eventos del equipo del recopilador ahora muestra la nueva suscripción.
Verificar eventos en el equipo de recopilador
Seleccione Eventos reenviados en el panel de navegación del equipo de recopilador.
La columna Equipo del panel de detalles indica que los eventos provienen del equipo remoto MYTESTSQL.MYTESTDOMAIN.COM. Puede habilitar o deshabilitar la suscripción de recopilador haciendo clic con el botón derecho en la suscripción y seleccionando Deshabilitar. El estado de la suscripción se muestra como desactivado en la ventana principal. Una suscripción de recopilador activa no significa que esté teniendo éxito. Para ver si el recopilador puede conectarse al origen, haga clic con el botón derecho en la suscripción y seleccione Estado de tiempo de ejecución. En este ejemplo, el recopilador no puede conectarse a la fuente. De forma predeterminada, se reintenta cada cinco minutos.
Si todo está bien, el Estado de tiempo de ejecución de la suscripción muestra una marca verde con un estado activo.
Crear una vista personalizada (Opcional)
Una vez reenviados los eventos, puede crear vistas personalizadas para ver los eventos consolidados. Por ejemplo, puede crear una vista personalizada para eventos de error. Este ejemplo crea una vista personalizada para mensajes relacionados con SQL Server. Un equipo recopilador puede alojar miles de registros de docenas de servidores. El uso de una vista personalizada le permite crear orden a partir de una sobrecarga de información. Para obtener pasos detallados, consulte la sección Creación de una vista personalizada en Conceptos básicos de registro de Windows.
Servicios de registro de Windows
Hay varios servicios de Windows que puede usar para centralizar todos sus datos de registro en un servicio de registro externo. Estos servicios envían registros a través de syslog a un servidor de registros multiplataforma o a un servicio de registro basado en la nube como SolarWinds® Loggly®.
Recomendamos NXLog, un popular servicio de descarga gratuita que se ejecuta en segundo plano. Alternativamente, hay syslog-ng y Snare, que son servicios que recopilan sus archivos de registro. Todos estos servicios proporcionan soporte profesional adicional por una tarifa.
Instalar NXLog
Este ejemplo instala y configura NXLog para empaquetar sus archivos de registro.
Descargue e instale la versión actual de NXLog. La descarga incluye un instalador intuitivo. Una vez finalizada la instalación, abra el archivo de configuración. De forma predeterminada, el archivo de configuración de NXLog se encuentra en C:/Program Files (x86)/nxlog/conf / nxlog.conf
Puede crear diferentes tipos de módulos de configuración.
- Entradas para el origen de sus registros
- Salidas para dónde enviar los registros
- Rutas para asignar sus entradas a sus salidas
Siempre que realice cambios en el archivo de configuración de NXLog, debe reiniciar el servicio NXLog.
Configure NXLog
Este ejemplo modifica el archivo de configuración de NXLog para centralizar los registros de eventos de Windows. Agregar el fragmento de código a continuación al final de su nxlog.el archivo conf habilita el módulo y le da el nombre de «eventlog». El módulo de entrada im_msvistalog envía nuevas entradas al registro de eventos de Windows, incluidos eventos relacionados con el sistema, el hardware, la aplicación y la seguridad.
# Windows Event Log<Input eventlog># Uncomment im_msvistalog for Windows Vista/2008 and laterModule im_msvistalog# Uncomment im_mseventlog for Windows XP/2000/2003# Module im_mseventlog# If you prefer to send events as JSON dataExec $Message = to_json();</Input>
Registros de archivos
NXLog se puede usar para leer archivos de registros almacenados en una unidad. En este ejemplo, el nombre del archivo es FILE1. SavePos TRUE significa que NXLog rastreará su ubicación actual en el archivo de registro al salir. Exec Message Message =raw raw_event significa que NXLog ingerirá el mensaje de registro sin formato sin aplicar ningún formato adicional. El nombre del archivo también puede incluir directorios o comodines.
<Input FILE1>Module im_fileFile "FILE1"SavePos TRUEExec $Message = $raw_event;</Input>
Registros de IIS
Como explicamos en la sección Conceptos básicos de registro de Windows, los registros de IIS contienen registros de acceso almacenados en formato W3C. Le recomendamos que los convierta a formato JSON para procesarlos fácilmente mediante una herramienta de administración de registros. NXLog puede hacer esta conversión usando la extensión W3C. Asegúrese de usar el formato adecuado en el archivo de configuración, para que el análisis se realice correctamente y para que incluya archivos de registro de todos sus sitios.
<Extension w3c>Module xm_csvFields $date, $time, $s-ip, $cs-method, $cs-uri-stem, $cs-uri-query, $s-port, $cs-username, $c-ip, $csUser-Agent, $cs-Referer, $sc-status, $sc-substatus, $sc-win32-status, $time-takenFieldTypes string, string, string, string, string, string, integer, string, string, string, string, integer, integer, integer, integerDelimiter ' 'QuoteChar '"'EscapeControl FALSEUndefValue -</Extension># Convert the IIS logs to JSON and use the original event time<Input IIS_Site1>Module im_fileFile "C:/inetpub/logs/LogFiles/W3SVC1/u_ex*"SavePos TRUEExec if $raw_event =~ /^#/ drop();else{w3c->parse_csv();$SourceName = "IIS";$Message = to_json();}</Input>
Registros de errores de SQL Server
SQL Server es la plataforma de base de datos insignia de clase empresarial de Microsoft. Viene en un conjunto de herramientas de base de datos y almacén de datos. SQL Server normalmente tiene sus propios registros guardados en el directorio de instalación de la aplicación en el sistema de archivos de Windows. La ubicación predeterminada para SQL Server 2012 es C:/Program Archivos / Microsoft SQL Server / MSSQL11.MSSQLSERVER / MSSQL / Log. Las entradas de registro también se envían al registro de eventos de la aplicación de Windows.
Las operaciones de SQL Server, como la copia de seguridad y la restauración, los tiempos de espera de las consultas o las E/S lentas, son fáciles de encontrar en el registro de eventos de aplicaciones de Windows, mientras que los mensajes relacionados con la seguridad, como los intentos fallidos de inicio de sesión, se capturan en el registro de eventos de seguridad de Windows.
Reenvío de registros a un servidor
NXLog puede reenviar registros desde cualquiera de las entradas descritas anteriormente a un destino externo, como un servidor de registros o un servicio de administración de registros basado en la nube. Para ello, NXLog utiliza conceptos llamados Salidas y rutas. Las salidas son módulos que proporcionan funcionalidad para enviar registros a un destino, como un archivo o un servidor remoto. Las rutas son las rutas que toma un mensaje de registro de una entrada (como el módulo im_msvistalog) a una salida (como un servicio de administración de registros).
Para reenviar registros, agregue un módulo de salida en su nxlog.conf archivo de configuración. A continuación, agregue un módulo de ruta para enviar registros de las entradas elegidas a las salidas elegidas. En este ejemplo, estamos enviando registros como syslog sobre TCP al NOMBRE de HOST del host sobre el puerto predeterminado de syslog 514. Creamos una ruta que toma registros de la entrada de eventlog y los envía a la nueva salida (llamada out):
<Output out>Module om_tcpHost HOSTNAMEPort 514</Output><Route 1>Path eventlog => out</Route>
Varias soluciones de administración de registros ofrecen instrucciones de configuración específicas para el registro de Windows. Loggly es un ejemplo de un proveedor y tiene información más detallada sobre la configuración de NXLog para recopilar sus archivos de registro en su guía, Logging from Windows.
Cifrar registros con TLS
De forma predeterminada, los registros enviados a través de Internet se transmiten en texto claro. Esto significa que los fisgones pueden interceptar y ver sus datos de registro. Es una práctica recomendada cifrar los datos de registro cuando están en tránsito, especialmente si contienen información confidencial, como detalles de identificación personal, datos regulados por el gobierno o información financiera. El protocolo más común para cifrar la comunicación syslog es TLS, o Seguridad de la capa de Transporte.
TLS encripta los registros, lo que evita que nadie husmee en los datos confidenciales de los registros. La mejor práctica no es registrar información como contraseñas, pero algunas aplicaciones lo hacen de todos modos. El cifrado TLS ayuda a mantener estos datos más seguros. El cifrado evita que las partes maliciosas ubicadas entre las fuentes y los destinos de los registros lean o modifiquen sus datos de registro.
Este es un ejemplo de configuración de NXLog con cifrado TLS para Loggly.
- Descargue el certificado digital de Loggly desde la página de configuración de NXLog TLS.
- Copie el archivo de certificado digital a su directorio de certificados NXLog:
copie loggly_full.crt C:/Program Archivos * / nxlog / cert - Configure su módulo de salida con om_ssl y la ubicación del certificado. El puerto de registro de sistema predeterminado para los registros cifrados es 6514. AllowUntrusted FALSE impide una conexión con el servidor si el certificado no es de confianza o está autofirmado:
<Output out>Module om_sslHost server.example.comPort 6514CAFile %CERTDIR%/example.crtAllowUntrusted FALSE<Output>