У меня несколько www серверов в DMZ. Мой сервер мониторинга и сбора журналов находится в моей локальной сети. Нет такого общения, как
WWW server in DMZ ----> monitor server in LAN
.
Я могу подключить DMZ из своей локальной сети
LAN --via proxy--> WWW server in DMZ
.
Я собираюсь использовать syslog-ng. Проблема в том, что syslog-ng работает в архитектуре клиент-сервер, и клиенты подключаются к серверу для отправки журналов.
Есть ли способ настроить syslog-ng в каком-либо пассивном режиме, чтобы сервер (в моей локальной сети) подключался к клиентам (DMZ) и собирал журналы?
РЕДАКТИРОВАТЬ: Я читал о прокси Zabbix (zabbix может отслеживать журналы) ... И теоретически, полагаясь на документы zabbix, можно будет заставить мой сценарий работать. Кто-нибудь может это подтвердить?
А как насчет туннелирования, т.е. использования Stunnel? Для каждого сервера DMZ, подлежащего мониторингу:
Примечание: это может работать через брандмауэр / NAT (согласно вашему заголовку), но не через прокси (согласно содержанию вашего вопроса).
это мощь не поможет, но я расскажу, как это решить. По сути, мы используем несколько DMZ.
Поэтому хосты в DMZ1, которым необходимо централизованно вести системный журнал / scp-файлы / отправлять отчеты по электронной почте, делают это через хост управления в DMZ2. Информация о хосте управления затем может быть получена внутренним хостом.
Я не знаю о syslog-ng, но я знаю, что Splunk можно настроить для периодического сбора и индексации файлов журналов из клиентских систем. В противном случае лучшее, что я думаю, вы могли бы сделать, это настроить задание cron на своем сервере журналов для синхронизации файлов с чем-то вроде /var/log/clientN/*.log
, и вручную вызвать logrotate на клиенте.