在iptables的前端端口到内部服务器

我使用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。