最近,一台内网FTP服务器接了双线,为了保证FTP服务器的安全,做了端口过滤,只开通了几个常用的端口,当然也开通了FTP的21号端口,可是出现一个怪现状,客户端与FTP服务器连接的时候,用户密码验证没问题,就是打不开目录。后来查看了一些资料,发现原来FTP还需要用到一个数据端口。解决办法很简单,到FTP软件中设置一下,然后把这些数据端口启用就行。
在Gene6中,打开域属性,找到IP绑定,修改里面的被动端口范围就行。
默认的数据端口是20号,所以在做端口限制的时候,如果需要启用FTP,请不要把20号禁用。
FTP的两种模式
FTP有两种模式,分别是主动模式(port模式)和被动模式(pasv模式)。
主动模式,客户端会选择一个随机端口和FTP服务器的21号端口进行连接,21号端口是用来传输命令的,FTP服务器会用自己的20号端口连接客户端刚才分配的端口,建立数据通道,进行数据传输。当客户端发送了ls、dir、get等指令的时候,FTP服务器会主动把内容"推送"到客户端。
当我们使用局域网,共享一个公网出口的时候,服务器不可能和局域网内的主机直接连接,要经过NAT,所以被动模式就出现了。被动模式的时候,初始化的连接过程是一样的,但当客户端发送ls、dir、get等要求返回数据的命令时,它会向FTP服务器发送pasv指令,告诉服务器自己要连接FTP服务器的某一端口(就是数据端口),建立数据通道。通俗地说,就是服务器给你打开一扇门,你要什么自己进去拿。
说的挺好的,这些东西对做网站的人来说不错的哦~