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

Как настроить доступ к портам с ограничениями для zabbix агента и сервера через брандмауэр?

Мой агент / сервер настроен правильно, я знаю это, потому что он работал. Я только что внес изменения в брандмауэр на стороне агента, ограничив доступ к порту 10050, но разрешив доступ к серверу следующим образом:

$ firewall-cmd --new-zone=zabbix
$ firewall-cmd --reload
$ firewall-cmd --get-zones
$ firewall-cmd --permanent --zone=zabbix --add-rich-rule='
  rule family="ipv4"
  source address="<<server_ip>>"
  port protocol="tcp" port="10050" accept'
$ firewall-cmd --reload
$ firewall-cmd --zone=zmonitor --list-all

Теперь возникла проблема со связью. Журнал агента сообщает следующее:

 no active checks on server [<<server_ip>>:10051]: host [<<hostname>>.local] not found

Сервер сообщает следующее:

 cannot send list of active checks to "<<agent_ip>>": host [<<hostname>>.local] not found

Веб-сервер Zabbix сообщает о следующей проблеме:

Get value from agent failed: cannot connect to [[<<Agent_IP>>]:10050]: [113] No route to host

Что не так с --add-rich-rule?

Первые две ошибки не связаны. Они сообщают вам, что имя хоста неправильно настроено для активных проверок (и соединение работает от агента к серверу).

Последняя ошибка, похоже, не связана с брандмауэром, по крайней мере, судя по сообщению об ошибке «Нет маршрута к хосту». Это скорее проблема маршрутизации / конфигурации сети.

Чтобы убедиться в этом, вы можете попробовать временно выключить брандмауэр на агенте и выполнить telnetting от сервера к агенту через порт 10050.