Seguridad

Cómo enviar registros de Linux a un servidor remoto

Cómo enviar registros de Linux a un servidor remoto
La razón principal para aplicar el registro remoto es la misma razón por la cual se recomienda una partición / var dedicada: una cuestión de espacio, pero no solo. Al enviar registros a un dispositivo de almacenamiento dedicado, puede evitar que sus registros ocupen todo el espacio mientras mantiene una enorme base de datos histórica para permitir errores.

Cargar registros a un host remoto nos permite centralizar informes para más de un dispositivo y mantener una copia de seguridad del informe para investigar en caso de que algo falle y nos impida acceder a los registros localmente.

Este tutorial muestra cómo configurar un servidor remoto para alojar registros y cómo enviar estos registros desde dispositivos cliente y cómo clasificar o dividir registros en directorios por host cliente.

Para seguir las instrucciones, puede usar un dispositivo virtual, tomé un VPS de nivel gratuito de Amazon (si necesita ayuda para configurar un dispositivo de Amazon, tienen un excelente contenido dedicado en LinuxHint en https: // linuxhint.com / category / aws /). Tenga en cuenta que la IP pública del servidor es diferente a su IP interna.

Antes de comenzar:

El software utilizado para enviar registros de forma remota es rsyslog, viene de forma predeterminada en Debian y distribuciones de Linux derivadas, en caso de que no lo tenga ejecutado:

# sudo apt install rsyslog

Siempre puede verificar el estado de rsyslog ejecutando:

# estado de rsyslog del servicio sudo

Como puede ver, el estado en la captura de pantalla es activo, si su rsyslog no está activo, siempre puede iniciarlo ejecutando:

# sudo service rsyslog start

O

# systemctl iniciar rsyslog

Nota: Para obtener información adicional sobre todas las opciones para administrar los servicios de Debian, consulte Detener, iniciar y reiniciar servicios en Debian.

Iniciar rsyslog no es relevante en este momento porque necesitaremos reiniciarlo después de realizar algunos cambios.

Cómo enviar registros de Linux a un servidor remoto: el lado del servidor

En primer lugar, en el servidor edite el archivo / etc / resyslog.conf usando nano o vi:

# nano / etc / rsyslog.conf

Dentro del archivo, descomente o agregue las siguientes líneas:

módulo (load = "imudp")
entrada (tipo = "imudp" puerto = "514")
módulo (load = "imtcp")
entrada (tipo = "imtcp" puerto = "514")

Anteriormente descomentamos o agregamos recepciones de registros a través de UDP y TCP, puede permitir solo uno de ellos o ambos, una vez que se hayan descomentado o agregado, deberá editar las reglas de su firewall para permitir registros entrantes, para permitir la recepción de registros a través de la ejecución de TCP:

# ufw permite 514 / tcp

Para permitir la ejecución de registros entrantes a través del protocolo UDP:

# ufw permite 514 / udp

Para permitir a través de TCP y UDP, ejecute los dos comandos anteriores.

Nota: para obtener más información sobre UFW, puede leer Trabajar con firewalls de Debian (UFW).

Reinicie el servicio rsyslog ejecutando:

# sudo service rsyslog restart

Ahora continúe en el cliente para configurar el envío de registros, luego regresaremos al servidor para mejorar el formato.

Cómo enviar registros de Linux a un servidor remoto: el lado del cliente

En el cliente que envía registros agregue la siguiente línea, reemplazando la IP 18.223.3.241 para la IP de su servidor.

*.* @@ 18.223.3.241: 514

Salga y guarde los cambios presionando CTRL + X.

Una vez editado, reinicie el servicio rsyslog ejecutando:

# sudo service rsyslog restart

En el lado del servidor:

Ahora puede verificar los registros dentro de / var / log, al abrirlos notará fuentes mixtas para su registro, el siguiente ejemplo muestra registros de la interfaz interna de Amazon y del cliente Rsyslog (Montsegur):

Un zoom lo muestra claro:

Tener archivos mixtos no es cómodo, a continuación editaremos la configuración de rsyslog para separar los registros según la fuente.

Para discriminar registros dentro de un directorio con el nombre del host del cliente, agregue las siguientes líneas al servidor / etc / rsyslog.conf para instruir a rsyslog cómo guardar registros remotos, para hacerlo dentro del rsyslog.conf agregue las líneas:

$ template RemoteLogs, "/ var / log /% HOSTNAME% /.Iniciar sesión"
*.* ?RemoteLogs
& ~

Salga de guardar cambios presionando CTRL + X y reinicie rsyslog en el servidor nuevamente:

# sudo service rsyslog restart

Ahora puede ver nuevos directorios, uno llamado ip-172.31.47.212 que es la interfaz interna de AWS y otra llamada "montsegur" como el cliente rsyslog.

Dentro de los directorios puede encontrar los registros:

Conclusión:

El registro remoto ofrece una gran solución a un problema que puede hacer que los servicios caigan si el almacenamiento del servidor se llena de registros, como se dijo al principio, también es una necesidad en algunos casos en los que el sistema puede dañarse seriamente sin permitir el acceso a los registros. , en tales casos, un servidor de registro remoto garantiza el acceso del administrador del sistema al historial del servidor.

La implementación de esta solución es técnicamente bastante fácil e incluso gratuita, considerando que no se necesitan grandes recursos y los servidores gratuitos como los niveles gratuitos de AWS son buenos para esta tarea, si aumenta la velocidad de transferencia de registros, puede permitir solo el protocolo UDP (a pesar de perder confiabilidad). Existen algunas alternativas a Rsyslog como: Flume o Sentry, pero rsyslog sigue siendo la herramienta más popular entre los usuarios y administradores de sistemas de Linux.

Espero que haya encontrado útil este artículo sobre Cómo enviar registros de Linux a un servidor remoto.

Vulkan para usuarios de Linux
Con cada nueva generación de tarjetas gráficas, vemos que los desarrolladores de juegos superan los límites de la fidelidad gráfica y se acercan un pa...
OpenTTD frente a Simutrans
Crear su propia simulación de transporte puede ser divertido, relajante y extremadamente atractivo. Es por eso que debes asegurarte de probar tantos j...
Tutorial de OpenTTD
OpenTTD es uno de los juegos de simulación empresarial más populares que existen. En este juego, necesitas crear un maravilloso negocio de transporte....