Rackspace防火墙/网关设置

我有rackspace帐户,并希望有这样的设置:

防火墙/网关

eth0 – 公网IP(56.XXX)

eth1 – 私有IP(10.XXX)

Ubuntu 10.10。 接受来自Internet的连接,并将端口80路由到node1(10.xxx)

节点1

eth0 – 禁用公网IP(56.XXX)

eth1 – 私有IP(10.XXX)

Ubuntu 10.10。 该服务器是Web服务器。

题:

我一遍又一遍地search如何做到这一点,我不知道我需要采取的步骤。 Rackspace给我这些IP,我不控制(在这一点上)这些节点的IP是什么,但他们每个都在eth0上有一个公有IP,在eth1上有私有IP。

如何将防火墙/网关的端口80请求成功转发到node1

编辑:这是我的iptables设置

# Generated by iptables-save v1.4.4 on Fri Jun 17 18:09:39 2011 *nat :PREROUTING ACCEPT [0:0] :OUTPUT ACCEPT [1:452] :POSTROUTING ACCEPT [1:452] -A PREROUTING -i eth0 -p tcp -m tcp --dport 80 -j DNAT --to-destination 10.182.33.191:80 COMMIT # Completed on Fri Jun 17 18:09:39 2011 # Generated by iptables-save v1.4.4 on Fri Jun 17 18:09:39 2011 *filter :INPUT ACCEPT [154:11452] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [81:9672] -A INPUT -i eth0 -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT COMMIT # Completed on Fri Jun 17 18:09:39 2011 

您可以在防火墙主机上使用一些iptables规则来做到这一点。 我假设你已经使用iptables,因为你把它称为“防火墙”主机:

 iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j DNAT --to 10.xxx:80 iptables -A INPUT -p tcp -m state --state NEW --dport 80 -i eth0 -j ACCEPT 

第一个规则为eth0端口80上的数据包设置端口。 它将它们转发到10.xxx:80(在这里input你的node1 IP)。 第二个规则允许eth0的端口80上的新的传入连接。 当然,你需要这个实际上允许数据包到达防火墙。

不要忘记保存你的iptablesconfiguration并在系统启动时加载它。 我使用iptables-persistant包来达到这个目的,但是Ubuntu没有保存和加载防火墙的标准方法。