将公共 IP 端口转发到不同接口上的内部服务器

将公共 IP 端口转发到不同接口上的内部服务器

你好,我正在尝试将 WAN 接口上的公共 IP:端口转发到 LAN 上的服务器

我的服务器有两个接口

  • ens19 [广域网]
  • ens18 [局域网]

然后我有另一台服务器连接到同一个 LAN。

我正在尝试将该 wan ip:port 转发到我的第二台服务器 lan ip:port

我已经尝试过以下命令

iptables -t nat -A POSTROUTING --out-interface ens18 -j MASQUERADE
iptables -A FORWARD --in-interface ens19 -j ACCEPT
iptables -t nat -A PREROUTING -p tcp -i ens19 -m tcp --dport 1522 -j DNAT --to-destination 10.74.72.52:22

当我尝试 ssh 我的 wanip:1522 时,连接超时

Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
default           203.0.113.1  0.0.0.0         UG        0 0          0 ens19
localnet        *               255.255.255.0   U         0 0          0 ens18
  203.0.113.92  *               255.255.255.224 U         0 0          0 ens19

我已在 systemctl 中启用了 ipv4 转发

答案1

用于tcpdump观察路由器和接收服务器上接口上的流量。

确保接收服务器的默认路由指向路由器。

您对输出接口 ens18 (LAN) 执行 MASQUERADE,并允许 ens19 (WAN) 上的所有内容进入。您是否切换了接口的描述?另一方面,传入请求将来自 WAN,因此将 ens19 设置为 WAN 是正确的。

相关内容