Configurar un servidor de registro centralizado con Rsyslog en CentOS/RHEL 8

Configurar un servidor de registro centralizado con Rsyslog en CentOS/RHEL 8

Para que los administradores del sistema reconozcan o analicen problemas en un servidor CentOS 8. o RHEL 8. es importante conocer y ver los eventos que ocurrieron en el servidor en un período de tiempo particular a partir de los archivos de registro que se encuentran en/var/log el directorio en el sistema.

El Syslog. ( Protocolo de registro del sistema. El sistema en el servidor puede actuar como un punto central de monitoreo de registros a través de una red donde todos los servidores, dispositivos de red, conmutadores, enrutadores y servicios internos que crean registros, ya sean vinculados al problema interno particular o simplemente mensajes informativos pueden enviar sus registros.

En un servidor CentOS/RHEL 8. el daemon Rsyslog. es el servidor de registro más importante que viene preinstalado de forma predeterminada, seguido de Systemd Journal Daemon. ( journald. .

Rsyslog. es una utilidad de código abierto, desarrollada como un servicio de arquitectura cliente/servidor y ca n lograr ambos roles de forma independiente. Puede ejecutarse como servidor y recopilar todos los registros transmitidos por otros dispositivos a través de la red o puede ejecutarse como cliente enviando todos los eventos internos del sistema registrados a un servidor Syslog. remoto.

Requisitos

  1. Instalación de “CentOS 8.0 ″ con capturas de pantalla
  2. Instalación de RHEL 8 con capturas de pantalla

Para configurar un servidor de registro centralizado en un Servidor CentOS/RHEL 8. debe verificar y confirmar que la partición/var tiene suficiente espacio (unos pocos GB como mínimo) para almacenar todos los archivos de registro grabados en el sistema que se envían por otros dispositivos en la red. Le recomiendo que tenga una unidad separada ( LVM. o RAID. para montar el directorio/var/log/.

Cómo configurar el servidor Rsyslog en CentOS/RHEL 8

freestar.config.enabled_slots.push

1.. Como dije, El servicio Rsyslog. se instala y se ejecuta automáticamente en el servidor CentOS/RHEL 8. Para verificar que el demonio se está ejecutando en el sistema, ejecute el siguiente comando.

# systemctl status rsyslog.service  Verificar el estado de Rsyslog en CentOS 8 Verificar el estado de Rsyslog en CentOS 8 Verifique el estado de Rsyslog en CentOS 8

Si el servicio no se está ejecutando de manera predeterminada, ejecute el siguiente comando para iniciar el demonio rsyslog.

# systemctl start rsyslog.service

2.. Si la utilidad Rsyslog. no está instalada de forma predeterminada en el sistema que planea usar como servidor de registro centralizado, ejecute el siguiente comando dnf para instalar el paquete rsyslog e iniciar el demonio. .

# dnf install rsyslog # systemctl start rsyslog.service

3.. Una vez instalada la utilidad Rsyslog. ahora puede configurar rsyslog como un servidor de registro centralizado mediante abriendo el archivo de configuración principal /etc/rsyslog.conf. para recibir mensajes de registro para clientes externos.

# vi/etc/rsyslog.conf

En el /etc/rsyslog.conf. archivo de configuración, busque y unc Mencione las siguientes líneas para otorgar recepción de transporte UDP al servidor Rsyslog. a través del puerto 514. Rsyslog. utiliza el protocolo estándar UDP. para la transmisión de registros.

module (load = “imudp”) # debe hacerse solo una vez input (type = “imudp” port = “514”)  Configurar el servidor Rsyslog en CentOS 8  Configurar el servidor Rsyslog en CentOS 8 Configure el servidor Rsyslog en CentOS 8

4.. El protocolo UDP no tiene la sobrecarga TCP. y hace que la transmisión de datos sea más rápida que el protocolo TCP. Por otro lado, el protocolo UDP. no garantiza la confiabilidad de los datos transmitidos.

Sin embargo, si desea utilizar el protocolo TCP. para el registro recepción debe encontrar y descomentar las siguientes líneas en el /etc/rsyslog.conf. el archivo de configuración para configurar el demonio Rsyslog para enlazar y escuchar un socket TCP en 514. port.

module (load = “imtcp”) # necesita hacerse solo una vez input (type = “imtcp” port = “514”)

5.. Ahora cree un nuevo plantilla para recibir mensajes remotos, ya que esta plantilla guiará al servidor Rsyslog local, dónde guardar los mensajes recibidos enviados por los clientes de la red Syslog.

$ template RemoteLogs, “/var/log/% HOSTNAME%/% PROGRAMNAME%. log “*. *? RemoteLogs  Crear plantilla para el servidor Rsyslog  Crear plantilla para el servidor Rsyslog Crear plantilla para el servidor Rsyslog

La directiva $ template RemoteLogs guía al demonio Rsyslog a recopilar y escribir todos los mensajes de registro transmitidos a distintos archivos, basados ​​en el nombre del cliente e y la aplicación cliente remota que creó los mensajes según las propiedades descritas agregadas en la configuración de la plantilla:% HOSTNAME% y% PROGRAMNAME%.

Todos los archivos de registro recibidos se escribirán en el sistema de archivos local en un archivo asignado nombrado después del nombre de host de la máquina cliente y guardado en el directorio /var/log/.

La regla de redireccionamiento & ~ indica al servidor Rsyslog local que deje de procesar el mensaje de registro recibido y elimine los mensajes (no escribirlos en archivos de registro internos).

RemoteLogs es un nombre arbitrario que se le da a esta directiva de plantilla. Puede usar el nombre que desee que sea más adecuado para su plantilla.

Para configurar plantillas Rsyslog más complejas, lea el manual del archivo de configuración Rsyslog ejecutando el comando man rsyslog.conf. o consulte la documentación en línea de Rsyslog.

# man rsyslog.conf

6.. Después de realizar los cambios de configuración anteriores, puede reiniciar el demonio Rsyslog para aplicar los cambios recientes ejecutando el siguiente comando .

# service rsyslog restart

7.. Una vez que reinició el servidor Rsyslog. ahora debería actuar como un servidor de registro centralizado y registrar los mensajes de los clientes de Syslog . Para confirmar los sockets de red Rsyslog, ejecute el comando netstat y use la utilidad grep para filtrar la cadena rsyslog.

# netstat-tulpn | grep rsyslog

Si el comando netstat. no está instalado en CentOS 8. puede instalarlo usando el siguiente comando.

# dnf whatprovides netstat # dnf install net-tools  Compruebe los enchufes de escucha de Rsyslog  Verifique los enchufes de escucha de Rsyslog Verifique los enchufes de escucha de Rsyslog

8.. Si tiene SELinux. activo en CentOS/RHEL 8. ejecute el siguiente comando para permitir el tráfico rsyslog según el tipo de socket de red.

# semanage port-a-t syslogd_port_t-p udp 514 # semanage port-a-t syslogd_port_t-p tcp 514

Si el comando semanage. no se instala en CentOS 8. puede instalarlo usando el siguiente comando.

# dnf whatprovides semanage # dnf install policycoreutils-python-utils

9.. Si tiene un firewall activo en el sistema, ejecute el siguiente comando para agregar las reglas necesarias para permitir el tráfico de rsyslog en los puertos de Firewalld.

# firewall-cmd–permanent–add-port = 514/tcp # firewall-cmd–permanent–add-port = 514/udp # firewall-cmd–reload

También puede limitar las conexiones entrantes en puerto 514. de los rangos de IP incluidos en la lista blanca, como se muestra.

# firewall-cmd–permanent–add-rich-rule ‘rule family = “ipv4” dirección de origen = “ 123.123.123.0/21. puerto puerto = “514” protocolo = “tcp” accept ‘# firewall-cmd–permanent–add-rich-rule’ rule family = “ipv4” source address = “ 123.123.123.0/21. port port = “514” protocol = “udp” accept ‘# firewall-cmd–reload

¡Eso es todo! Rsyslog. ahora está configurado como un servidor de registros centralizado y puede recopilar registros de clientes remotos. En el próximo artículo, veremos cómo configurar el cliente Rsyslog en el servidor CentOS/RHEL 8.

Leave a comment

Your email address will not be published. Required fields are marked *