Tutorial de Syslog

“Syslog es una forma de consolidar registros de varios sistemas en un servidor Syslog remoto. El servidor Syslog tiene tres componentes clave. El primero es un oyente que utiliza UDP sobre el puerto 514 para recopilar datos de Syslog. Luego está la base de datos que almacena los datos de Syslog generados y, por último, el software de gestión y filtrado que permite filtrar los datos de Syslog para una rápida resolución de problemas.

Como administrador del sistema, es útil comprender cómo funciona Syslog y cómo configurar las máquinas cliente para canalizar sus datos de Syslog al servidor remoto. Esta guía analiza Syslog en Linux y ofrece pasos para consolidar registros en una máquina remota”.

Entendiendo Syslog

Syslog es un protocolo que se comunica mediante el puerto 514 a través de UDP y permite que los hosts transmitan registros a los servidores Syslog a través de las redes IP. El trabajo del servidor Syslog es monitorear y responder a las notificaciones de Syslog que recibe.

A través de esto, un administrador puede tener un control central de los registros de varios clientes, de modo que pueda rastrear rápidamente un error en la máquina de un cliente y, en función del mensaje de registro generado, solucionarlo.

Los clientes Syslog generan mensajes Syslog que envían al servidor Syslog. El mensaje tiene tres partes clave.

  1. Prioridad – Representa la severidad y Facilidad del mensaje. El valor de prioridad dicta la prioridad del registro dado. Utilizándolo, puede filtrar los registros según el valor de prioridad.
  2. Encabezado: representa la marca de tiempo del registro y el nombre de la máquina host/cliente que envía el mensaje de registro.
  3. Mensaje: representa el mensaje de registro real que verá un administrador al solucionar un error. El mensaje incluye detalles como las direcciones IP del host, la gravedad y el mensaje del evento.

Veamos un ejemplo de un mensaje de Syslog e identifiquemos sus distintas partes.

< 34 > 2 2022 – 10 -3T10: 30 :35.004Z linuxhint su – ID12 – BOM ‘ su root’ falló para linuxhint en / dev / pts / 4

En lo anterior, comenzaremos desde la izquierda. El 34 representa el valor de prioridad del mensaje. 2 es el número de versión del mensaje de registro. Junto a él está la marca de tiempo ISO, seguida del nombre de host . A continuación, tenemos la aplicación específica que provocó el error y su PID. Por último, tenemos la identificación del mensaje del evento y el mensaje de registro.

Trabajando con Syslog

Cada sistema genera registros para los eventos que provocan un error, como el cierre aleatorio de una aplicación. Los registros de la máquina local se almacenan en /var/log, y puede enumerar el contenido para ver los distintos

registrar archivos y directorios para su sistema usando el comando ls.

Notará en la imagen de arriba que tenemos el archivo de registro llamado syslog. Contiene los registros de su sistema; en este caso, es para sistemas Ubuntu/Debian. Para RedHat, puede encontrar mensajes en lugar de syslog.

Para ver los registros del sistema, abra el archivo de registro en tiempo real con el comando tail. Para Debian/Ubuntu, use el siguiente comando.

$ sudo tail -f / var / log / syslog

Para las máquinas cliente, las reglas sobre dónde enviar el Syslog están contenidas en el archivo de configuración rsyslog . Debe editar este archivo de configuración para configurar una máquina para que transmita sus archivos de registro a un servidor Syslog determinado.

Trabajar con el archivo de configuración rsyslog

Puede ver este archivo de configuración utilizando un editor de su elección. Vamos a abrirlo usando el editor nano .

$ sudo nano / etc / rsyslog.conf

A continuación se muestra cómo se ve el archivo de configuración.

Cualquier regla definida para su Syslog estará contenida en este archivo, incluido el servidor Syslog y su dirección IP. Creemos un servidor Syslog en una máquina remota y transmitamos los registros desde nuestra máquina cliente.

Configuración de un servidor Syslog

Para este ejemplo, estamos usando Ubuntu 22.04 como nuestro servidor.

Primero, asegúrese de tener instalado rsyslog comprobando su versión. Si no está instalado, instálelo usando apt.

$ rsyslogd- v

Lo siguiente es abrir el archivo de configuración de rsyslog usando el editor nano.

$ sudo nano / etc / rsyslog.conf

Localice el módulo y la entrada para TCP. Luego, elimínelos eliminando el # y agregando la línea a continuación para que su archivo de configuración aparezca como el de la imagen a continuación.

$ template FILENAME,” / var / log /% HOSTNAME %/ syslog.log”

* . * ?NOMBRE DE ARCHIVO </ td >

Una vez que haya editado el archivo de configuración, reinicie el rsyslog

$ sudo systemctl reiniciar rsyslog.servicio

El último paso es verificar que rsyslog esté activo y escuchando en el puerto UDP 514. Use el siguiente comando para verificar.

$ sudo netstat -pnlt

Configuración del cliente

Abra la máquina cliente y verifique que tenga rsyslog comprobando la versión.

A continuación, abra el archivo de configuración de rsyslog.

$ sudo nano / etc / rsyslog.conf

Una vez que se abra, agregue la dirección IP de su servidor usando el formato a continuación.

* . * @@< su-servidor-ip > : 514

Reinicie y habilite el rsyslog

$ sudo systemctl reiniciar rsyslog

$ sudo systemctl habilitar rsyslog

Probemos el Syslog registrando un mensaje aleatorio que debería reflejarse en el servidor Syslog del cliente.

Abra el cliente remoto y vea el Syslog del cliente en tiempo real. En la imagen a continuación, podemos ver el mensaje registrado del cliente que confirma que nuestro servidor remoto Syslog está funcionando.

Envolver

Esta guía ha presentado un tutorial práctico para comenzar con Syslog. Hemos visto cómo leer un mensaje Syslog y configurar una arquitectura cliente-servidor para Syslog. Eso es.