GNU/Linux >> Tutoriales Linux >  >> Cent OS

Rsyslog:cómo enviar archivos de registro a un servidor remoto en CentOS/RHEL 6,7

Necesidad de un servidor Rsyslog centralizado

Cada sistema *NIX tiene algún tipo de función de registro que producirá registros de texto que se pueden escribir en una ubicación arbitraria en un dispositivo de almacenamiento (normalmente, de forma predeterminada en una partición de disco local). Ahora, esto es esencial pero también puede producir problemas como:

  • Debe tener espacio de almacenamiento adecuado en el servidor local para guardar los registros.
  • Debes poner en marcha la rotación para evitar que crezcan demasiado.
  • Si los registros contienen información confidencial, como el número de tarjeta de crédito, desea que se almacenen en una ubicación segura, preferiblemente no en el servidor local.
  • Puede perder los registros si se produce un desastre en el servidor y los datos no se pueden recuperar.

Para evitar todos estos problemas, podemos usar un servidor syslog centralizado. El servidor syslog centralizado proporciona la seguridad, el almacenamiento adecuado, la función de copia de seguridad centralizada, etc.

La publicación describe los pasos para configurar Rsyslog para enviar archivos de registro a un servidor remoto mediante TCP y UDP.

Configuración del servidor Rsyslog centralizado

1. Edite /etc/rsyslog.conf y descomente las siguientes líneas:

Para TCP;

# vi /etc/rsyslog.conf
$ModLoad imtcp
$InputTCPServerRun 514

Para UDP;

# vi /etc/rsyslog.conf
$ModLoad imudp
$UDPServerRun 514
Nota :Puede usar el modo TCP y UDP para transferir registros al servidor rsyslog remoto. Pero recomendaría usar UDP ya que es mucho más fácil en el servidor del cliente en términos de rendimiento. El único inconveniente de usar UDP es que se pueden perder algunos mensajes de registro si el servidor está demasiado ocupado para recibir los paquetes UDP. Use TCP donde sus registros sean críticos; de lo contrario, quédese con UDP.

2. Guarde el archivo y reinicie el servicio rsyslog.

# service rsyslog restart          ### CentOS/RHEL 6
# systemctl restart rsyslog        ### CentOS/RHEL 7

Configuración del cliente Rsyslog

1. Edite /etc/rsyslog.conf en el servidor del cliente y agregue las siguientes líneas. Cuando antepone su host remoto con un solo @ símbolo, está utilizando UDP. Para usar TCP, use @@ en su lugar.

Para UDP

# vi /etc/rsyslog.conf
# remote host is: name/ip:port, e.g. 192.168.0.1:514, port optional
#*.* @remote-host:514
*.* @x.x.x.x:514

Para TCP

# vi /etc/rsyslog.conf
# remote host is: name/ip:port, e.g. 192.168.0.1:514, port optional
#*.* @@remote-host:514
*.* @@x.x.x.x:514

Aquí, reemplace x.x.x.x con su servidor rsyslog centralizado. Si no desea enviar registros con todas las gravedades incluidas (*.*), puede editar la última línea con algo como:

*.info      @x.x.x.x:514

2. Guarde el archivo y reinicie el servicio rsyslog.

# service rsyslog restart        ### CentOS/RHEL 6
# systemctl restart rsyslog        ### CentOS/RHEL 7

Verificación de la configuración

Puede utilizar el “registrador ” para generar un mensaje de registro manualmente y ver si el servidor syslog remoto lo recibe correctamente.

En el servidor del cliente:

# logger "Test message from the system `hostname`"

En el servidor rsyslog centralizado:

# tail /var/log/messages  
June 15 12:32:01 geeklab root: Test message from the system geeklab

Ejecutar Rsyslog en un puerto no estándar

Si desea ejecutar rsyslog en un puerto que no sea el puerto predeterminado 514, deberá realizar cambios adicionales en selinux. Para ver la configuración actual de los puertos SELinux para rsyslog:

# semanage port -l| grep syslog
syslog_tls_port_t              tcp      6514, 10514
syslog_tls_port_t              udp      6514, 10514
syslogd_port_t                 tcp      601, 20514
syslogd_port_t                 udp      514, 601, 20514

Para agregar un puerto UDP 541 a SELinux, use el comando:

# semanage port -a -t syslogd_port_t -p udp 541

Verifique si el puerto se agrega a la configuración de SELinux:

# semanage port -l| grep syslog
syslog_tls_port_t              tcp      6514, 10514
syslog_tls_port_t              udp      6514, 10514
syslogd_port_t                 tcp      601, 20514
syslogd_port_t                 udp      541, 514, 601, 20514


Cent OS
  1. Cómo instalar Puppet en CentOS 8 / RHEL 8

  2. Cómo configurar el servidor SysLog en CentOS 7 / RHEL 7

  3. Cómo configurar el servidor NFS en CentOS 7 / RHEL 7

  4. Cómo cambiar el directorio de registro predeterminado (/var/log) en Rsyslog para CentOS/RHEL 6,7

  5. Cómo enviar registros de auditoría al servidor Rsyslog remoto en CentOS/RHEL 6,7

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

Cómo instalar el servidor Redis en CentOS 8 / RHEL 8

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

Cómo instalar Zabbix Server 4.x en CentOS 6 / RHEL 6

Cómo instalar el servidor Zabbix 5.0/4.0 en CentOS 7/RHEL 7

Cómo configurar el servidor VNC en CentOS/RHEL 6