Назад | Перейти на главную страницу

возникли проблемы с rsyslog forward и включением исходного IP или зеркала iptables при использовании ufw

Как я могу получить rsyslog зеркалировать трафик без изменений (включая исходный IP) в другой порт?

У меня много устройств, отправляющих данные в порт 514 но мне нужно два разных приложения на сервере для получения этих данных.

Я пробовал добавить в конец /etc/rsyslog.conf

*.* @@127.0.0.1:1514

# also tried
*.* @127.0.0.1:1514

Приложение слушает 1514 получить все данные, но исходный адрес всегда 127.0.0.1. Если я отправляю логи прямо в порт 1514 приложение слушает 1514 см. правильный адрес источника, но теперь rsyslog не видит данных, так как прослушивает порт 514.

Как я могу получить rsyslog зеркалировать трафик без изменений (включая исходный IP) в другой порт?

По какой-то причине следующие iptables правила в качестве альтернативы приведенному выше не перенаправляют трафик на сервер Ubuntu 18.04LTS для решения проблемы, поэтому я надеялся, что есть способ настроить мой /etc/rsyslog.conf Чтобы убедиться 1514 увидел первоисточник вместо 127.0.0.1.

Пример альтернативного правила iptables, которое не зеркалирует трафик (или, по крайней мере, graylog его не видит).

iptables -t mangle -A PREROUTING -p tcp --dport 514 -j TEE --gateway 127.0.0.2
iptables -t nat -A PREROUTING -d 127.0.0.2 -p tcp --dport 514 -j DNAT --to 127.0.0.1:1514

iptables -t mangle -A PREROUTING -p udp --dport 514 -j TEE --gateway 127.0.0.2
iptables -t nat -A PREROUTING -d 127.0.0.2 -p udp --dport 514 -j DNAT --to 127.0.0.1:1514

Обратите внимание, что мой ufw правила 22 ALLOW Anywhere и 514 ALLOW Anywhere