|
发表于 2005-1-7 11:16:49
|
显示全部楼层
大哥们好,小弟发表下自己的看法,希望各位大哥能够斧正
我觉得可能是由于路由的问题,我以前这样也遇到这样的问题,客户端在访问vsftp服务器的时候会分别使用port,pasv模式,关键是这样,我通过微软cmd使用ftp命令(当时我在内网使用iptable防火墙)能够登陆上ftp服务器,但无法显示目录,我打开debug命令查看发现
ftp> debug
Debugging On .
ftp> ls
---> PORT 192,168,0,103,15,213
200 PORT command successful. Consider using PASV.
---> NLST
150 Here comes the directory listing.
原来在客户端发送port命令的时候告诉服务器是开的192.168.0.103的4053端口,当然采用主动模式当然无法访问到,这种情况下只能采用被动的访问方式
当时我也是对这个问题不知所然
后来直到我在内网用iptables映射ftp服务器的时候我发现客户端出现了这样的问题
200 Switching to ASCII mode.
PORT 192,168,0,103,16,224
500 Illegal PORT command.
PASV
227 Entering Passive Mode (192,168,0,77,175,76)
LIST
425 Security: Bad IP connecting.
原来当时我的客户端和服务端都在内网,并且没有实现路由跟踪,我无论使用主动还是被动模式,都是传递给对方是内网地址,当然就无法登陆了
后来我看了一些大哥的帖子增加了执行模块
/sbin/depmod -a
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe ip_nat_ftp
就一切OK了,现在在内网我用客户端可以用PORT访问对方任何可以使用主动访问的ftp服务器,而外网也可以访问用被动的方式访问我的在内网映射的ftp服务器
但是我对路由跟踪不是很了解对
/sbin/depmod -a
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe ip_nat_ftp
也是不得甚解,请各位大哥帮忙,告诉一下小弟。 |
|