我的局域网中正在运行 checkmk。我想监控 dmz 中的 Linux 虚拟机。因此,我在 Linux 虚拟机上安装了代理,并为其启用了 ipv4,但由于未发现代理正在运行,checkmk 找不到任何服务。
所有 lan-hosts 都可以通过带有防火墙的路由器访问 dmz 中的主机。我在 linux vm 上添加了静态路由以及防火墙规则,以便 linux vm 能够访问监控端口上的 checkmk,在我看来这应该没有必要。无论如何它都不起作用。
因此我允许 dmz 中的 linux vm 的所有端口和所有协议在防火墙中 checkmk - 但它无论如何都不起作用。
我可以从 Linux 虚拟机 ping 到 checkmk,我可以从 Linux 虚拟机使用 ssh 到 checkmk,但 TCP 端口 6556 似乎被过滤了(nmap 表示)。我也无法使用 telnet 访问该端口。
我使用 tcpdump 监控流量,同时尝试使用 checkmk 查找代理,结果如下:
checkmk (局域网) 192.168.200.93
11:52:10.161596 IP 192.168.200.93.54568 > 192.168.250.5.6556: Flags [S], seq 1804524389, win 64240, options [mss 1460,sackOK,TS val 929690233 ecr 0,nop,wscale 7], length 0
11:52:11.181705 IP 192.168.200.93.54568 > 192.168.250.5.6556: Flags [S], seq 1804524389, win 64240, options [mss 1460,sackOK,TS val 929691253 ecr 0,nop,wscale 7], length 0
11:52:13.197715 IP 192.168.200.93.54568 > 192.168.250.5.6556: Flags [S], seq 1804524389, win 64240, options [mss 1460,sackOK,TS val 929693269 ecr 0,nop,wscale 7], length 0
11:52:27.171005 IP 192.168.200.93 > 192.168.250.5: ICMP echo request, id 2259, seq 0, length 76
11:52:27.171923 IP 192.168.250.5 > 192.168.200.93: ICMP echo reply, id 2259, seq 0, length 76
11:52:27.171994 IP 192.168.200.93 > 192.168.250.5: ICMP echo request, id 2259, seq 1, length 76
11:52:27.172407 IP 192.168.250.5 > 192.168.200.93: ICMP echo reply, id 2259, seq 1, length 76
11:52:27.172439 IP 192.168.200.93 > 192.168.250.5: ICMP echo request, id 2259, seq 2, length 76
11:52:27.172875 IP 192.168.250.5 > 192.168.200.93: ICMP echo reply, id 2259, seq 2, length 76
11:52:27.172904 IP 192.168.200.93 > 192.168.250.5: ICMP echo request, id 2259, seq 3, length 76
11:52:27.173326 IP 192.168.250.5 > 192.168.200.93: ICMP echo reply, id 2259, seq 3, length 76
11:52:27.173363 IP 192.168.200.93 > 192.168.250.5: ICMP echo request, id 2259, seq 4, length 76
11:52:27.173784 IP 192.168.250.5 > 192.168.200.93: ICMP echo reply, id 2259, seq 4, length 76
Linux 虚拟机(dmz) 192.168.250.5
11:52:23.672563 ARP, Request who-has 192.168.250.5 tell 192.168.250.2, length 46
11:52:23.672614 ARP, Reply 192.168.250.5 is-at 02:6a:ef:43:81:37 (oui Unknown), length 28
11:52:27.174672 IP 192.168.250.2 > 192.168.250.5: ICMP echo request, id 2259, seq 0, length 76
11:52:27.174742 IP 192.168.250.5 > 192.168.250.2: ICMP echo reply, id 2259, seq 0, length 76
11:52:27.175350 IP 192.168.250.2 > 192.168.250.5: ICMP echo request, id 2259, seq 1, length 76
11:52:27.175362 IP 192.168.250.5 > 192.168.250.2: ICMP echo reply, id 2259, seq 1, length 76
11:52:27.175803 IP 192.168.250.2 > 192.168.250.5: ICMP echo request, id 2259, seq 2, length 76
11:52:27.175815 IP 192.168.250.5 > 192.168.250.2: ICMP echo reply, id 2259, seq 2, length 76
11:52:27.176264 IP 192.168.250.2 > 192.168.250.5: ICMP echo request, id 2259, seq 3, length 76
11:52:27.176275 IP 192.168.250.5 > 192.168.250.2: ICMP echo reply, id 2259, seq 3, length 76
11:52:27.176728 IP 192.168.250.2 > 192.168.250.5: ICMP echo request, id 2259, seq 4, length 76
11:52:27.176739 IP 192.168.250.5 > 192.168.250.2: ICMP echo reply, id 2259, seq 4, length 76
路由器在 dmz 中的 IP 为 192.168.250.2。因此,如您所见,checkmk 向 192.168.250.5:6556 发送 SYN 以查找代理 - 但包未到达 Linux VM。之后,checkmk 向 Linux VM 发送 ping/ICMP echo 请求,此操作有效,因为 Linux VM 使用 ICMP echo 回复进行响应。路由器正确转发了 ICMP 包,但未转发通过端口 6556 的 TCP SYN 包。
这里可能有什么问题?路由器是基于 OpenWRT 的 turris omnia。因此可以添加 iptables 规则。
有任何想法吗?
答案1
嗯,我发现了问题 - 虚拟化系统中的 linux vm 的防火墙阻止了端口。经典...转储