① 搭建如圖所示的拓撲,將linux系統分配兩個網卡,一個網卡在Vware3子網中,一個網卡在Vware2子網中,同時將ftp服務器的網卡分到Vware3子網中,將外網的一台主機的網卡分到Vware2子網中
給linux創建兩個接口,,一個接口的ip地址是202.1.1.1,另一個是192.168.1.1
同時給外網的主機配置ip地址,此地址在202.1.1.0/24網段,給服務器配置ip地址,此地址在192.168.1.0/24網段
現在開啟linux的路由功能 代碼:echo '1' > /proc/sys/net/ipv4/ip_forward
用服務器ping外網主機測試是否能通信息
現在配置防火牆規則
#加載ftp轉發模塊
modprobe ip_nat_ftp
modprobe ip_conntrack_ftp
# 清除先前的設定
iptables -F
iptables -F -t mangle
iptables -F -t nat
# 設定filter table的預設政策
iptables -P INPUTDROP
iptables -P OUTPUT DROP
iptables -P FORWARDDROP
# 啟動內部對外轉址
iptables -t nat -APOSTROUTING -o eth1 -s 192.168.1.0/24 -j SNAT --to-source 202.1.1.1
#設置FORWARD轉發規則
iptables -A FORWARD -i eth0 -o eth1 -p tcp -d 202.1.1.2 --dport 21 -j ACCEPT
iptables -A FORWARD -i eth0 -o eth1 -p tcp -d 202.1.1.2 --dport 20 -j ACCEPT
#設置允許established, related的數據通過FORWARD鏈
iptables –A FORWARD–s 202.1.1.2–m state - -state established,related–j ACCEPT
現在再用服務器ping外網主機測試是否能通信息
這時候外網訪問ftp服務器會出現下面的問題
解決方法:打開客戶端的internet浏覽器,選擇工具,選擇internet選項,選擇高級,取消勾選“使用被動ftp”,之後再次測試,就會成功。