我使用ConfigServer Firewall(csf)运行cPanel / WHM。
我想转发我的networking服务器上的端口8080到一个IP的内部服务器可以说10.1.1.1这是在端口80上运行一个networking服务器。我该怎么做?
我的WAN IP在eth0上运行使用eth1接口连接内部服务器。
什么是适当的IPtables cmd来做到这一点?
像这样的东西应该工作
sudo /sbin/iptables -t nat -I PREROUTING -i eth0 -p tcp -m tcp --dport 8080 -j DNAT --to-destination 10.1.1.1:80
如果您还没有这样做,您可能还需要启用IP转发
/sbin/sysctl -w net.ipv4.ip_forward=1
并使其永久编辑/etc/sysctl.conf并设置
net.ipv4.ip_forward = 1
编辑:
由于您的FORWARD链上的策略是DROP,您将需要允许数据包通过。 我不认为你现在的FORWARD规则是做任何有用的事情,所以删除它。
使能从eth0:8080发送到FORWARD的数据包发送到10.1.1.1
/sbin/iptables -I FORWARD -p tcp -m tcp -d 10.1.1.1 --destination-port 80 -j ACCEPT
允许数据包也以另一种方式
/sbin/iptables -I FORWARD -i eth1 -p tcp -m tcp -j ACCEPT
你想要进一步限制后者。
就像是:
iptables -A PREROUTING -t nat -i eth1 -p tcp \ --dport 8888 -j DNAT --to 10.1.1.1:80
发送端口8888上的请求。
iptables -A INPUT -p tcp -m state --state NEW --dport 8888 -i eth1 -j ACCEPT
允许传入的连接吨端口8888。