GNU/Linux >> Tutoriales Linux >  >> Debian

Cómo configurar el servidor Rsyslog en Debian 11 (Bullseye)

Los archivos de registro son cruciales para sondear y solucionar errores. Son los primeros archivos que los administradores de sistemas examinan para determinar la causa probable de un error y, al hacerlo, encontrar soluciones para resolver el problema. En una infraestructura con decenas o cientos de servidores y otros dispositivos, administrar archivos de registro puede ser un desafío. Y aquí es donde entra en juego rsyslog.

Rsyslog es un programa de registro de código abierto que facilita el reenvío de archivos de registro a un servidor de registro centralizado en una red IP. Con el registro centralizado, los administradores pueden controlar fácilmente los archivos de registro de múltiples sistemas desde un punto central. En esta publicación, lo guiaremos a través de la instalación y configuración de Rsyslog Server en Debian 11.

Configuración de laboratorio

Para demostrar cómo se puede usar Rsyslog para enviar archivos de registro desde un sistema cliente al servidor Rsyslog, vamos a tener una configuración de laboratorio simple como se muestra

  • Servidor Rsyslog:    Debian 11               IP:192.168.1.151
  • Cliente Rsyslog:       Ubuntu 20.04      IP:10.20.0.170

Paso 1)  Configurar Rsyslog en el servidor

Como se mencionó anteriormente, Rsyslog funciona en un modelo cliente-servidor y comenzaremos configurando Rsyslog en el servidor Debian 11. En Debian 11, Rsyslog viene instalado de forma predeterminada. Si por alguna razón Rsyslog no está presente, puede instalarlo usando el comando:

$ sudo apt install -y rsyslog

Tras la instalación, puede verificar su estado de ejecución de la siguiente manera:

$ sudo systemctl status rsyslog

A continuación, configuraremos rsyslog para que se ejecute en modo servidor. El archivo de configuración es el archivo /etc/rsyslog.conf. Entonces, edítelo usando su editor de texto preferido.

$ sudo vi /etc/rsyslog.conf

Continúe y descomente las siguientes líneas que permiten la recepción de syslog UDP y TCP desde clientes remotos.

# provides UDP syslog reception
module(load="imudp")
input(type="imudp" port="514")

# provides TCP syslog reception
module(load="imtcp")
input(type="imtcp" port="514")

A continuación, pegue las siguientes líneas para definir la plantilla que utilizará el demonio Rsyslog para almacenar los registros entrantes de los sistemas cliente.

$template remote-incoming-logs,"/var/log/%HOSTNAME%/%PROGRAMNAME%.log"
*.* ?remote-incoming-logs

Los archivos de registro utilizarán la siguiente convención de nomenclatura:

  • /%HOSTNAME%/:este es el nombre de host del sistema cliente.
  • /%PROGRAMNAME%/:identifica el programa cliente que creó el archivo de registro.

Para aplicar los cambios, reinicie el demonio rsyslog.

$ sudo systemctl restart rsyslog

De forma predeterminada, rsyslog escucha el puerto 514. Puede confirmar que este es el puerto que escucha el demonio rsyslog ejecutando el comando ss.

$ sudo ss -tunlp | grep 514

Paso 2)  Configure las reglas del cortafuegos para rsyslog

El demonio Rsyslog se está ejecutando en el servidor como se esperaba. Si está ejecutando un firewall UFW, asegúrese de habilitar el puerto 514 para permitir la entrada de mensajes de registro.

$ sudo ufw allow 514/tcp
$ sudo ufw allow 514/udp

Luego, vuelva a cargar el cortafuegos para aplicar la regla de cortafuegos de la siguiente manera.

$ sudo ufw reload

El siguiente paso será configurar el sistema cliente Ubuntu para enviar archivos de registro al servidor rsyslog.

Paso 3)  Configurar el sistema cliente rsyslog

El paso final es configurar el sistema cliente para enviar archivos de registro al servidor rsyslog. Inicie sesión en el cliente y, una vez más, asegúrese de que el demonio rsyslog esté instalado y en ejecución.

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

$ sudo vi /etc/rsyslog.conf

Navegue hasta el final del archivo y agregue estas líneas.

#Enable sending system logs over UDP to rsyslog server
*.* @rsyslog-ip-address:514

#Enable sending system logs over TCP to rsyslog server
*.* @@rsyslog-ip-address:514

Estas líneas indican al cliente que envíe los archivos de registro a través de los protocolos UDP y TCP al servidor rsyslog. Tenga en cuenta que la primera línea tiene un solo símbolo @ que significa UDP y la segunda línea tiene dos  @@ símbolos para significar el protocolo TCP.

Si el servidor remoto experimenta algún tiempo de inactividad y desea conservar sus registros, puede configurar el búfer de la cola del disco agregando las líneas que se muestran.

##Establecer cola de disco cuando el servidor rsyslog esté inactivo:

$ActionQueueFileName queue
$ActionQueueMaxDiskSpace 1g
$ActionQueueSaveOnShutdown on
$ActionQueueType LinkedList
$ActionResumeRetryCount -1

A continuación se muestra un resumen de todas las modificaciones a la configuración del cliente.

Guardar y salir del archivo. Ahora reinicie el servicio rsyslog para que los cambios surtan efecto.

$ sudo systemctl restart rsyslog

En este punto, el sistema cliente debería enviar los archivos de registro al servidor rsyslog. Volvamos al servidor y averigüémoslo.

Paso 4)  Ver los archivos de registro del Cliente

Todos los archivos de registro (incluidos los servidores) se almacenan en el directorio /var/log/. Para ver los registros del cliente, ejecute el siguiente comando:

$ ls /var/log/

Los archivos de registro del cliente se guardarán en un directorio que corresponde al nombre de host del sistema del cliente, como se muestra a continuación.

Puede ver más los archivos de registro contenidos en el directorio de registro principal.

$ sudo ls -l /var/log/ubuntu-20-04/

Para ver registros en tiempo real, use el comando tail como se muestra. Aquí, estamos viendo los registros del usuario sudo.

$ sudo tail -f /var/log/ubuntu-20-04/sudo.log

Hemos instalado correctamente rsyslog y lo hemos configurado para permitir el envío de archivos de registro al servidor rsyslog desde el sistema cliente. Ahora puede configurar tantos sistemas cliente como desee para enviar registros al servidor rsyslog para lograr una estructura de administración de registros centralizada.

Eso es todo de este post, espero que lo hayas encontrado informativo. Comparta sus consultas y comentarios en la sección de comentarios a continuación.

Lea también :Cómo rotar y comprimir archivos de registro en Linux con Logrotate


Debian
  1. Cómo configurar vsftpd en Debian

  2. Cómo configurar el servidor Rsyslog en Ubuntu 18.04 LTS

  3. Cómo configurar el servidor Rsyslog en Debian 11

  4. Configurar el servidor Rsyslog en Ubuntu 20.04 - ¿Cómo hacerlo?

  5. Configurar el servidor Rsyslog en Debian 10/Debian 11 (Bullseye) - ¿Guía paso a paso?

Cómo instalar el servidor MySQL 8.0 en Debian 11 Bullseye

Cómo instalar el servidor y cliente Telnet en Debian 11 Bullseye linux

Cómo instalar Discourse en el servidor Debian 11 Bullseye

Cómo configurar el servidor OpenLDAP en Debian 10

Cómo actualizar Debian 10 a Debian 11 Bullseye

Cómo:Configuración inicial del servidor Debian 8.2