Недавно я установил центральный сервер системного журнала. Журналы организованы в файлы в папке, названной в честь клиентских машин (с использованием DNS), и проверяются с помощью logcheck.
На некоторых клиентских машинах установлено несколько ОС (а именно Linux и Windows), и в конечном итоге они имеют одинаковый IP-адрес и имя хоста. В результате журналы Windows (сообщения) и журналы Linux оказались в одном файле, что сильно расстроило меня и logcheck. Я заинтересован в том, чтобы журналы для разных ОС велись отдельно.
Мое решение заключалось в том, чтобы syslog прослушивал несколько портов и настраивал syslog / rsyslog на клиентских машинах Linux и Windows для использования другого номера порта. Таким образом, я могу легко перенаправить журналы в соответствующие файлы в соответствии с их источником.
Однако я не совсем уверен в элегантности этого решения - nmap может обнаруживать клиентскую ОС по отпечатку стека TCP / IP.
Есть ли способ настроить Syslog-ng для перенаправления входящих данных в соответствии с ОС клиентского компьютера?
Ваш подход с разными портами для машин Linux и Windows совсем неплох.
Альтернативы:
И то, и другое вряд ли можно рекомендовать.
Еще одна уловка может заключаться в использовании транспорта TCP для системного журнала от клиентов Linux и udp - из Windows. Затем вы можете настроить места назначения файлов с помощью фильтра по протоколу.