Linux iptables建立网关的简单实例(支持NAT及FTP连接穿透)

[+]网络拓扑:

outside? —-? eth0+虚拟机A+eth1? —-? eth0+虚拟机B

*我的试验环境如上图所示,虚拟机A的eth0接口与宿主机的连接外网的网卡桥接,所以可以等价为虚拟机A的eth0接口与外网相连,虚拟机A的eth1接口和虚拟机B的eth0接口是使用virtualbox的内网相连。 其实,采用虚拟机组网仅仅是为了方便,针对本文介绍的全部内容,这些机器是否是虚拟机并没什么影响,完全可以将上图中的虚拟机看作实体主机,后面的操作完全与是否虚拟机无关。

*Outside网络中有一台DHCP服务器,以及DNS服务器,这些也不影响本文介绍的核心内容,后面涉及到这两个服务器时会再次说明。

[+]虚拟机A和B都运行Ubuntu8.04

[+]实现思路:虚拟机A配置iptables,使虚拟机A作为这个简单网络的一个安全网关,虚拟机B透过虚拟机A访问outside网络,对外部网络的服务器进行最基本的HTTP浏览和FTP上传下载。并且在一定程度上保护虚拟机B所在的网络不受outside网络的入侵。

配置步骤如下: Continue reading