Red Hat Training

A Red Hat training course is available for RHEL 8

13.4. Configuración del registro remoto a través de UDP

La aplicación Rsyslog permite configurar un sistema para recibir información de registro de sistemas remotos. Para utilizar el registro remoto a través de UDP, configure tanto el servidor como el cliente. El servidor receptor recoge y analiza los registros enviados por uno o varios sistemas cliente. Por defecto, rsyslog utiliza UDP en el puerto 514 para recibir información de registro de sistemas remotos.

13.4.1. Configuración de un servidor para recibir información de registro remoto a través de UDP

Siga este procedimiento para configurar un servidor para recoger y analizar los registros enviados por uno o más sistemas cliente a través del protocolo UDP.

Requisitos previos

  • La utilidad rsyslog está instalada.

Procedimiento

  1. Opcional: Para utilizar un puerto diferente al predeterminado para el tráfico de rsyslog 514 :

    1. Añade el tipo de SELinux syslogd_port_t a la configuración de la política de SELinux, sustituyendo portno por el número de puerto que quieres que use rsyslog:

      # semanage port -a -t syslogd_port_t -p udp portno
    2. Configure firewalld para permitir el tráfico entrante de rsyslog, sustituyendo portno por el número de puerto y zone por la zona que desea que utilice rsyslog:

      # firewall-cmd --zone=zone --permanent --add-port=portno/udp
      success
    3. Recarga las reglas del firewall:

      # firewall-cmd --reload
  2. Cree un nuevo archivo .conf en el directorio /etc/rsyslog.d/, por ejemplo, remotelogserv.conf, e inserte el siguiente contenido:

    # Define templates before the rules that use them
    ### Per-Host Templates for Remote Systems ###
    template(name="TmplAuthpriv" type="list") {
        constant(value="/var/log/remote/auth/")
        property(name="hostname")
        constant(value="/")
        property(name="programname" SecurePath="replace")
        constant(value=".log")
        }
    
    template(name="TmplMsg" type="list") {
        constant(value="/var/log/remote/msg/")
        property(name="hostname")
        constant(value="/")
        property(name="programname" SecurePath="replace")
        constant(value=".log")
        }
    
    # Provides UDP syslog reception
    module(load="imudp")
    
    # This ruleset processes remote messages
    ruleset(name="remote1"){
         authpriv.*   action(type="omfile" DynaFile="TmplAuthpriv")
          *.info;mail.none;authpriv.none;cron.none
    action(type="omfile" DynaFile="TmplMsg")
    }
    
    input(type="imudp" port="514" ruleset="remote1")

    Donde 514 es el número de puerto que rsyslog utiliza por defecto. Puede especificar un puerto diferente en su lugar.

  3. Reinicie el servicio rsyslog.

    # systemctl restart rsyslog
  4. Opcional: Si rsyslog no está habilitado, asegúrese de que el servicio rsyslog se inicie automáticamente tras el reinicio:

    # systemctl enable rsyslog

Verificación

  1. Verifique la sintaxis del archivo /etc/rsyslog.conf y de todos los archivos .conf en el directorio /etc/rsyslog.d/:

    # rsyslogd -N 1
    rsyslogd: version 8.1911.0-2.el8, config validation run (level 1), master config /etc/rsyslog.conf
    rsyslogd: End of config validation run. Bye.

Recursos adicionales

  • Las páginas de manual rsyslogd(8), rsyslog.conf(5), semanage(8), y firewall-cmd(1)
  • La documentación basada en el navegador, que puede instalar desde el paquete rsyslog-doc, en file:///usr/share/doc/rsyslog/html/index.html