¿Puede un servidor Syslog reconocer el sistema operativo de un cliente?

¿Puede un servidor Syslog reconocer el sistema operativo de un cliente?

Recientemente configuré un servidor syslog central. Los registros se organizan en archivos, en carpetas con el nombre de las máquinas cliente (mediante DNS) y se analizan con logcheck.

Algunas de las máquinas cliente tienen más de un sistema operativo (es decir, Linux y Windows) y terminan teniendo la misma dirección IP y nombre de host. El resultado es que los registros de Windows (mensajes) y los registros de Linux terminaron en el mismo archivo, lo que nos hizo a mí y a logcheck bastante infelices. Estoy interesado en mantener separados los registros de diferentes sistemas operativos.

Mi solución ha sido hacer que syslog escuche en múltiples puertos y configurar syslog/rsyslog en las máquinas cliente de Linux y Windows para usar un número de puerto diferente. De esta manera puedo redirigir fácilmente los registros a los archivos apropiados según su fuente.

Sin embargo, no estoy del todo convencido de la elegancia de la solución: nmap puede detectar el sistema operativo del cliente a través de la huella digital de la pila TCP/IP.

¿Existe alguna forma de configurar Syslog-ng para redirigir los datos entrantes según el sistema operativo de una máquina cliente?

Respuesta1

Su enfoque con diferentes puertos para máquinas Linux y Windows no está nada mal.

Alternativas:

  • usar el programa como destino en syslog-ng (por ejemplo, su script personalizado que verifica el sistema operativo actual de la máquina cliente y escribe en linux.log o windows.log): lento y poco confiable.
  • usar match(...) en el filtro syslog-ng para distinguir entre cadenas de syslog de Linux y Windows (no estoy seguro de que pueda ser fácil y confiable a menos que pueda colocar alguna subcadena de marcador en el syslog del cliente) y usar dicho filtro para seleccionar el archivo de registro de destino.

Difícilmente se pueden recomendar ambos.

Otro truco más puede ser utilizar el transporte tcp para syslog desde clientes Linux y udp desde Windows. Luego puede configurar destinos de archivos con filtro de protocolo.

información relacionada