searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

ftp主动模式和被动模式区别

2023-10-30 01:54:31
336
0
FTP Port(主动)模式
客户端从一个任意的大于1023的端口连接到FTP服务器的命令端口,也就是21端口。然后客户端开始监听端口N+1,并发送FTP命令“port N+1”到FTP服务器。接着服务器会从它自己的数据端口(20)连接到客户端指定的数据端口。针对FTP服务器前面的防火墙来说,必须允许以下通讯才能支持主动方式FTP:任何端口到FTP服务器的21端口 网络连通性;FTP服务器的21端口到客户端大于1023的端口(服务器响应客户端的控制端口);FTP服务器的20端口到客户端大于1023的端口(服务器端初始化数据连接到客户端的数据端口);大于1023端口到FTP服务器的20端口(客户端发送ACK响应到服务器的数据端口)
 
 

被动模式(PASV)

被动模式的工作原理:FTP客户端连接到FTP服务器的21端口,发送用户名和密码登录,登录成功后要list列表或者读取数据时,发送PASV命令到FTP服务器, 服务器在本地随机开放一个端口(1024以上),然后把开放的端口告诉客户端, 客户端再连接到服务器开放的端口进行数据传输,原理如下图:

 

从上面的运行原理可以看到,主动模式和被动模式区别简单概述为:

a. 主动模式传送数据时是“服务器”连接到“客户端”的端口;被动模式传送数据是“客户端”连接到“服务器”的端口。

b. 主动模式需要客户端必须开放端口给服务器,很多客户端都是在防火墙内,开放端口给FTP服务器访问比较困难;被动模式只需要服务器端开放端口给客户端连接就行了。

在日常使用中,会有业务程序无法直接访问ftp的情况,需要使用代理服务器进行传输,但一般代理服务器不支持随机端口的代理(如nginx),可是使用ftp.proxy工具作为ftp服务的代理中间件。
0条评论
0 / 1000
张****浩
2文章数
0粉丝数
张****浩
2 文章 | 0 粉丝
张****浩
2文章数
0粉丝数
张****浩
2 文章 | 0 粉丝
原创

ftp主动模式和被动模式区别

2023-10-30 01:54:31
336
0
FTP Port(主动)模式
客户端从一个任意的大于1023的端口连接到FTP服务器的命令端口,也就是21端口。然后客户端开始监听端口N+1,并发送FTP命令“port N+1”到FTP服务器。接着服务器会从它自己的数据端口(20)连接到客户端指定的数据端口。针对FTP服务器前面的防火墙来说,必须允许以下通讯才能支持主动方式FTP:任何端口到FTP服务器的21端口 网络连通性;FTP服务器的21端口到客户端大于1023的端口(服务器响应客户端的控制端口);FTP服务器的20端口到客户端大于1023的端口(服务器端初始化数据连接到客户端的数据端口);大于1023端口到FTP服务器的20端口(客户端发送ACK响应到服务器的数据端口)
 
 

被动模式(PASV)

被动模式的工作原理:FTP客户端连接到FTP服务器的21端口,发送用户名和密码登录,登录成功后要list列表或者读取数据时,发送PASV命令到FTP服务器, 服务器在本地随机开放一个端口(1024以上),然后把开放的端口告诉客户端, 客户端再连接到服务器开放的端口进行数据传输,原理如下图:

 

从上面的运行原理可以看到,主动模式和被动模式区别简单概述为:

a. 主动模式传送数据时是“服务器”连接到“客户端”的端口;被动模式传送数据是“客户端”连接到“服务器”的端口。

b. 主动模式需要客户端必须开放端口给服务器,很多客户端都是在防火墙内,开放端口给FTP服务器访问比较困难;被动模式只需要服务器端开放端口给客户端连接就行了。

在日常使用中,会有业务程序无法直接访问ftp的情况,需要使用代理服务器进行传输,但一般代理服务器不支持随机端口的代理(如nginx),可是使用ftp.proxy工具作为ftp服务的代理中间件。
文章来自个人专栏
文章 | 订阅
0条评论
0 / 1000
请输入你的评论
0
0