概括

概括

概括

有一个 virtualbox 主机 (1.1.1.5) 和一个路由客户机 (1.1.1.6)。某些东西将客户机上端口 25 上的任何流量(无论是传入还是传出)重定向到 1.1.1.5 端口 2525,但我找不到是什么原因。

当然,这篇文章中的 ips 和 mac 已经改变。

设置

我有以下设置:

  • 有一个 IP 为 1.1.1.5 的 debian 根服务器,托管一个 virtualbox 服务器
  • 第二个 IP(1.1.1.6)被路由到该服务器
  • 第二个 IP 被路由到虚拟网络接口“virbr1”,该接口由 debian virtualbox 客户邮件服务器使用
  • 在根服务器上,iptables 正在运行并配置了 ufw

设置工作完美无缺 - 我可以 ping 1.1.1.6 上的邮件服务器并访问其 Web 界面等,邮件服务器可以访问互联网,一切正常,除了一个端口:尝试访问端口 25 上的邮件服务器不起作用。

这与 ISP 阻止端口 25 或类似的东西无关,它更为复杂。请继续阅读 :)

问题诊断

从外部进行 Telnet

当我尝试从另一台服务器进行 telnet 时:

telnet 1.1.1.6 25

连接将超时。在主机系统 (1.1.1.5) 的 syslog 中,出现了来自 ip 表的以下消息:

[UFW BLOCK] IN=eth0 OUT= MAC=c8:c8:c8:c8:c8:c8:c8:fe:3d:46:e6:0f:08:00 SRC=2.2.2.5 DST=1.1.1.5 LEN=64 TOS=0x00 PREC=0x00 TTL=55 ID=45855 DF PROTO=TCP SPT=64059 DPT=2525 WINDOW=65535 RES=0x00 SYN URGP=0

有一个重要的事情这里要注意:我试图连接到 1.1.1。6在港口二十五,但 iptables 阻止发生在 1.1.1 上。5在港口2525

从访客机上进行 Telnet 连接

当我通过 SSH 连接到邮件服务器 guest 并且通过 telnet 连接到另一台服务器时:

telnet 9.9.9.5 25

连接也会超时。请注意,所有其他端口或连接均正常工作。在主机系统的日志中,会出现以下乱码消息:

[UFW BLOCK] IN=virbr1 OUT= MAC=aa:aa:ab:ac:ad:af:af:ag:ag SRC=1.1.1.6 DST=1.1.1.5 LEN=60 TOS=0x10 PREC=0x00 TTL=64 ID=3529 DF PROTO=TCP SPT=45250 DPT=2525 WINDOW=14600 RES=0x00 SYN URGP=0

需要注意的是:DST 应该是 9.9.9.5,但它是主机服务器 IP。DPT 应该是 25,但它是 2525。

假设

看起来主机系统 1.1.1.5 上的某些东西将通过它的端口 25 上的所有流量重定向到其自身的端口 2525。

寻找原因

我尝试了以下方法来查找此行为的原因:

  • netstat -lnp主机上没有显示任何与端口 25 或 2525 绑定的内容
  • 中的配置文件/etc/ufw,尤其是 before.rules,除了必要的-A ufw-before-forward -i eth0 -d 1.1.1.6 -p tcp --dport 25 -j ACCEPT
  • 使用iptables -L -n | grep "25"仅显示前向链中上面提到的规则
  • 即使ufw logging high在上文提到的阻止消息之前,系统日志也不包含与所讨论的数据包相关的任何内容
  • 禁用防火墙并ufw disable不能解决问题
  • 没有配置文件提到 2525:egrep -R "2525" /etc不返回任何内容。

所以现在,我一头雾水。我该如何进一步诊断这个问题?可能是什么原因造成的?

答案1

解决方案很简单:我不知道它iptables -L -n不显示所有规则,但您必须指定iptables -t nat -L显示预路由表。它包含端口 2525 的重定向。不知道它来自哪里,但删除它解决了问题。

所以,孩子们:如果您尝试诊断 iptables 路由问题,请注意存在多个表并检查 nat 表。

除此之外,很抱歉我问了这个问题,但没什么用。

相关内容