如何使用防火墙为 zabbix 代理和服务器配置限制端口访问?

如何使用防火墙为 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 Web Server 报告以下问题:

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

出什么问题了--add-rich-rule

答案1

前两个错误没有关系。它们告诉您,主动检查的主机名配置有误(并且从代理到服务器的连接正常)。

最后一个错误似乎与防火墙无关,至少从错误消息“没有到主机的路由”来看是这样。这更可能是路由/网络配置问题。

为了验证这一点,您可以尝试暂时关闭代理箱上的防火墙,然后从服务器通过端口 10050 进行 telnet 到代理。

相关内容