LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 660|回复: 1

请各位看一下这个iptables做的NAT有什么问题~~

[复制链接]
发表于 2005-8-10 18:32:36 | 显示全部楼层 |阅读模式
请各位帮忙看一下这个iptables做的NAT有什么问题

用3台电脑模拟了一下NAT,具体配置如下:
A机:10.187.0.1/255.0.0.0
B机:eth0: 10.187.0.2/255.0.0.0
     eth1: 192.168.0.1/255.255.255.0
C机:192.168.0.2/255.255.255.0

其中A模拟外网的机器,B作NAT,C为内网
三台机器都开了ftp服务

结果A->C(透过B的4421端口映射), C->A, C->B的ftp server连接都没问题,但是A->B的ftp server就不行,无法进入pasv模式,只能以port方式连接~~

大家帮忙看一下这个脚本问题出在哪?

小弟菜鸟~~各位帮帮忙啊~~~

echo 1 >/proc/sys/net/ipv4/ip_forward

/sbin/modprobe iptable_filter
/sbin/modprobe ip_tables
/sbin/modprobe iptable_nat
/sbin/modprobe ip_nat_ftp
/sbin/modprobe ip_conntrack_ftp

/sbin/iptables -F INPUT
/sbin/iptables -F FORWARD
/sbin/iptables -F OUTPUT
/sbin/iptables -F POSTROUTING -t nat
/sbin/iptables -F PREROUTING -t nat

/sbin/iptables -P INPUT DROP
/sbin/iptables -P FORWARD DROP
/sbin/iptables -P OUTPUT ACCEPT

/sbin/iptables -A INPUT -i lo -j ACCEPT
/sbin/iptables -A INPUT -i eth1 -j ACCEPT
/sbin/iptables -A INPUT -i eth0 -d 10.187.0.2 -p tcp --dport 52700 -j ACCEPT (B的ftp server端口52700)
/sbin/iptables -A INPUT -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT

/sbin/iptables -A FORWARD -s 192.168.0.0/24 -j ACCEPT
/sbin/iptables -A FORWARD -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT

/sbin/iptables -t nat -A POSTROUTING -o eth0 -s 192.168.0.0/24 -j SNAT --to 10.187.0.2

/sbin/iptables -t nat -A PREROUTING -i eth0 -d 10.187.0.2 -p tcp --dport 4421 -j DNAT --to 192.168.0.2:21
/sbin/iptables -t nat -A POSTROUTING -o eth0 -s 192.168.0.2 -p tcp --sport 21 -j SNAT --to 10.187.0.2:4421
/sbin/iptables -A FORWARD -i eth0 -d 192.168.0.2 -p tcp --dport 21 -j ACCEPT(C的ftp server端口21)
 楼主| 发表于 2005-8-11 11:51:18 | 显示全部楼层
自己顶一下
/sbin/iptables -A INPUT -i eth0 -d 10.187.0.2 -p tcp --dport 52700 -j ACCEPT (B的ftp server端口52700)
/sbin/iptables -A INPUT -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT
按说有上面这句就应该能能实现pasv了,应该说pasv所用的端口都是52700发起的吧。。

现在我加上sbin/iptables -A INPUT -i eth0 -d 10.187.0.2 -p tcp --dport 50001:50300 -j ACCEPT
同时把ftp server的pasv端口也限制在50001-50300,倒是正常了,但感觉这样不太安全啊,这300个端口一直是开放的,请高人们看一下吧~~谢谢了~~
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表