关于FTP主动模式与被动模式的一点理解-阿里云开发者社区

开发者社区> 安全> 正文
登录阅读全文

关于FTP主动模式与被动模式的一点理解

简介: 又一次面试的时候,面试像这样问我:请简述FTP的主动模式与被动模式的区别?FTP这玩意不是天天都要用到的么,看起来这么简单的问题我居然回答不上来,好尴尬!经过几天的思考与理解,终于有点眉目,拙见让诸位见笑了。
又一次面试的时候,面试像这样问我:请简述FTP的主动模式与被动模式的区别?FTP这玩意不是天天都要用到的么,看起来这么简单的问题我居然回答不上来,好尴尬!经过几天的思考与理解,终于有点眉目,拙见让诸位见笑了。

主动模式中FTP的客户端发送 PORT 命令到FTP服务器。被动模式中FTP的客户端发送 PASV命令到 FTP 服务器。

我们可以通过以下图片及文字理解每种FTP方式是怎样工作的。

主动模式(服务器向客户端敲门,然后客户端开门)FTP:

客户机与服务器之间建立连接时,客户机是大于1024的端口上,服务器是20端口。

客户机的端口是大于1024的,而服务器的端口是21端口接收请求,而是20端口给客户机回应。

允许FTP客户机从大于1024的端口连接服务器的21端口。

允许FTP服务器从21端口回应FTP客户机中大于1024端口的网络连接。

允许FTP服务器从20端口主动连接FTP客户机中大于1024的端口。

允许FTP客户机从大于1024的端口回应来自FTP服务器的20端口的网络连接。

命令连接:客户端 >1024端口 -> 服务器 21端口

数据连接:客户端 >1024端口


被动模式(客户端向服务器敲门,然后服务器开门)FTP:

客户机与服务器之间建立连接都是在大于1024的端口上的。

客户机的端口是大于1024的,而服务器的端口是21端口接收请求,而是从大于1024端口给客户机回应。

允许FTP客户机从大于1024的端口连接服务器的21端口。

允许FTP服务器从21端口回应FTP客户机中大于1024端口的网络连接。

允计FTP客户机从大于1024的端口连接FTP服务器的大于1024端口。

允许FTP服务器从大于1024的端口回应来自FTP客户机大于1024端口的网络连接。

命令连接:客户端 >1024端口 -> 服务器 21端口

数据连接:客户端 >1024端口 -> 服务器 >1024端口


主动模式对便于FTP服务器的管理,不便于对客户端进行管理。因为FTP服务器企图与客户端的高位随机端口建立连接,而这个端口很有可能被客户端的防火墙所阻塞。被动模式对FTP便于对客户端进行管理,不便于对服务器端进行管理。因为客户端要与服务器端建立两个连接,其中一个连到一个高位随机端口,而这个端口很有可能被服务器端的防火墙阻塞掉。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
+ 订阅

云安全开发者的大本营

其他文章
最新文章
相关文章