IPTABLES 将流量从 192.168.1.1 端口 21516 路由到 192.168.2.3 端口 80

IPTABLES 将流量从 192.168.1.1 端口 21516 路由到 192.168.2.3 端口 80

我正在使用 Debian/Linux Bullseye(版本 11)

我想要完成的是设置一个 TabloTV,以便使用 IPTABLES 通过 Linux 防火墙进行端口转发。我的Linux防火墙有两个以太网卡(实际为eth0 enp0s25)和eth1(例如内部)以及两个单独的网络,用于MASQ和FORWARD流量。

  • eth0运行 192.168.1.0/24 (或enp0s25在我的具体情况下))
  • MASQ b/w 和端口全部转发
  • eth1运行 192.168.2.0/24

但是,我想要做的是在防火墙内设置一台特定计算机来执行以下操作:

  • (将流量从防火墙 IP 192.168.1.1 端口 21516 重定向到 192.168.2.3 上的端口 80)192.168.2.3:80 到外部端口号 21516
  • (将流量从防火墙 IP 192.168.1.1 端口 21517 重定向到 192.168.2.3 上的端口 8887)192.168.2.3:8887 到外部端口号 21517

恰好我的防火墙外部 IP 是 192.168.1.1,但我的内部防火墙 IP 是 192.168.2.1,那么我尝试将端口流量重新路由到的内部计算机是 192.168.2.3。

我已经尝试过以下方法:

  • 这些线路之前曾作为 MASQ 的一部分存在
    sudo iptables -A FORWARD -d 192.168.2.0/24 -j ACCEPT 
    sudo iptables -A FORWARD -s 192.168.2.0/24 -j ACCEPT 
    
  • 然后我添加了以下几行:
    sudo iptables -A POSTROUTING -s 192.168.2.0/24 -o tun0 -j MASQUERADE #this is allow traffic to run on my VPN
    sudo iptables -A POSTROUTING -s 192.168.2.0/24 -o enp0s25 -j MASQUERADE #this is allow traffic to run between eth0 and eth1
    sudo iptables -A PREROUTING -p tcp -m tcp --dport 21516 -j DNAT --to-destination 192.168.2.3:80 
    sudo iptables -A PREROUTING -p tcp -m tcp --dport 21517 -j DNAT --to-destination 192.168.2.3:8887
    sudo iptables -A POSTROUTING -d 192.168.2.3/32 -p tcp -m tcp --dport 80 -j SNAT --to-source 192.168.1.1:21516 
    sudo iptables -A POSTROUTING -d 192.168.2.3/32 -p tcp -m tcp --dport 8887 -j SNAT --to-source 192.168.1.1:21517
    

仍然对我不起作用,有人有什么想法吗?

相关内容