FTP主动模式与被动模式
关于FTP下载的被动模式与主动模式

主题: 关于FTP下载的被动模式与主动模式
日期: 2003年12月31日 8:52
FTP的连接一般是有两个连接的,一个是客户程和服务器传输命令的,另一
个是数据传送的连接。FTP服务程序一般会支持两种不同的模式,一种是Port模式,一
器发送一条PASV命令,服务段接受到命令后打开一个端口并告诉客户段“我已打开了一
个端口,你此时可以来连接了”客户段(下载工具)接受到信息后,就去连接服务段已
经打开了的端口,从而完成数据连接,所有ftp下载的数据流都将通过这个端口传送。
如果您连接到INTERNET的方式如下图,你需要设置成为PASV mode模式传送
从上图中我们可以看出,路由上有两个ip一个是内网ip(也就是你的网关地
址)另外一个是外网IP,你所有LAN中的计算机都是共享这个218.63.1.5访问INTERNET的
(中间通过了192.168.1.1这个网关),让我们来看一个连接的详细过程,以便您更进一
从上面的解释中,大家可以看到两种模式主要的不同是数据连接建立的不
同,对于Port模式,是客户端C在本地打开一个端口等服务端S去连接建立数据连接;而
Pasv模式就是服务端S打开一个端口等待客户端C去建立一个数据连接。
我需要把传送模式设置成PASV mode吗?
步了解为什么需要设置成为PASV mode 传送:
当ห้องสมุดไป่ตู้通过下载工具或使用浏览器下载影片的时候就开始连接FTP服务器, 当
FTP服务收到你的连接请求后发送应答信息给客户并开始等待用户的认证信息——>认证
FTP协议中的主动模式与被动模式详解

FTP协议中的主动模式与被动模式详解FTP(File Transfer Protocol,文件传输协议)是一种用于在网络上进行文件传输的标准协议。
在FTP协议中,主动模式(Active Mode)和被动模式(Passive Mode)是两种常见的连接方式。
本文将详细解释FTP协议中的主动模式与被动模式的原理、特点和使用场景。
一、主动模式(Active Mode)主动模式是FTP协议中最早的一种连接方式。
在主动模式下,客户端主动发起控制连接,并通过数据连接与服务端进行数据传输。
在主动模式中,客户端首先与FTP服务器的默认端口(端口号为21)建立控制连接。
控制连接的建立过程涉及到三次握手,以确保双方正常通信。
建立成功后,客户端发送PORT命令,通知服务器客户端的数据传输端口。
服务器接收到PORT命令后,通过控制连接向客户端发起数据连接。
客户端接收到服务器的连接请求后,通过数据连接进行文件的传输。
主动模式的优点是连接的主动性强,适用于FTP客户端位于防火墙后的情况。
然而,主动模式也存在一些缺点。
首先,由于服务器需要主动向客户端发起连接请求,因此必须允许服务器主动连接客户端的数据端口,这在某些情况下可能会被防火墙拦截。
其次,在主动模式下,FTP服务器必须确定客户端的IP地址和端口,这对服务器的资源消耗较大。
因此,在现代网络环境下,被动模式逐渐成为了主流。
二、被动模式(Passive Mode)被动模式是FTP协议中现代化的一种连接方式。
在被动模式下,客户端与服务器之间的控制连接和数据连接都是由客户端发起。
在被动模式中,客户端首先与FTP服务器的默认端口(端口号为21)建立控制连接,控制连接的建立过程同样包括三次握手。
建立成功后,客户端发送PASV命令,通知服务器切换至被动模式。
服务器接收到PASV命令后,随机选择一个端口,将该端口号返回给客户端。
客户端通过控制连接接收到服务器返回的端口号后,便通过该端口与服务器建立数据连接。
FTP主动模式及被动模式

FTP主动模式及被动模式FTP(文件传输协议)是一种用于在网络上传输文件的标准协议。
它允许用户通过网络将文件从一台计算机传输到另一台计算机。
在FTP中,有两种常见的数据传输模式,即主动模式和被动模式。
本文将介绍这两种模式的工作原理和应用场景。
主动模式(Active Mode)在FTP主动模式中,客户端首先与服务器的端口21建立控制连接。
当需要传输文件时,客户端会随机选择一个高于1024的端口号,并通过控制连接向服务器发送PORT命令,指定该端口号。
服务器收到PORT命令后,会主动在端口20上建立一个数据连接,并通过该连接发送文件给客户端。
主动模式的优点是服务器主动连接客户端,无需过多配置客户端的防火墙或路由器。
然而,由于主动模式需要在客户端和服务器之间建立两个连接(控制连接和数据连接),并且需要动态分配端口号,因此其配置和维护相对较为复杂。
被动模式(Passive Mode)在FTP被动模式中,客户端同样首先与服务器的端口21建立控制连接。
当需要传输文件时,客户端发送PASV命令给服务器。
服务器收到PASV命令后,会在一个高于1024的端口号范围内,随机选择一个端口号,并将该端口号作为响应返回给客户端。
客户端收到服务器返回的端口号后,会在该端口上主动建立一个数据连接,并通过该连接与服务器进行文件传输。
被动模式下,服务器充当被动接收数据的角色,而客户端则主动连接服务器。
被动模式相对于主动模式来说,更加适用于在网络环境较为复杂的情况下进行文件传输。
由于被动模式下只需要建立一个连接,且无需动态分配端口号,因此在防火墙和路由器后面的客户端可以更方便地与服务器进行通信。
主动模式与被动模式的对比主动模式和被动模式在文件传输过程中的工作原理有所不同,因此它们适用的网络环境也不同。
主动模式适用于位于防火墙后面的客户端。
由于主动模式需要服务器主动连接客户端,因此需要开放防火墙的一些端口,以允许服务器建立数据连接。
ftp规则

ftp规则FTP规则FTP(File Transfer Protocol,文件传输协议)是一种用于在网络上进行文件传输的标准协议。
它主要用于在客户端和服务器之间传输文件,是网络传输中非常常见的一种方式。
本文将详细介绍FTP 规则的相关内容。
一、FTP的基本原理FTP使用客户端-服务器模式进行文件传输。
客户端通过FTP软件与服务器进行连接,然后使用FTP命令与服务器进行交互,完成文件的上传、下载和管理等操作。
二、FTP的连接方式1. 主动模式(Active Mode):在主动模式下,客户端主动建立与服务器的数据连接。
客户端在连接服务器之前必须开放一个端口,用于接收服务器返回的数据。
2. 被动模式(Passive Mode):在被动模式下,服务器主动建立与客户端的数据连接。
客户端只需要建立控制连接,无需开放额外的端口。
三、FTP的常用命令1. 登录命令:用户需要输入用户名和密码以登录FTP服务器。
2. 上传命令:将本地文件上传到服务器。
3. 下载命令:将服务器文件下载到本地。
4. 删除命令:删除服务器上的文件。
5. 重命名命令:对服务器上的文件进行重命名。
6. 创建目录命令:在服务器上创建新的目录。
7. 列出目录命令:查看服务器上指定目录的文件列表。
四、FTP的安全性由于FTP传输的数据是明文的,因此在网络传输过程中容易被窃听和篡改。
为了提高FTP的安全性,可以采用以下措施:1. 使用SSL/TLS协议:通过加密FTP连接,确保数据的机密性和完整性。
2. 使用SFTP协议:SFTP(SSH File Transfer Protocol)是基于SSH协议的安全文件传输协议,比传统的FTP更加安全可靠。
五、FTP的应用场景FTP的应用场景非常广泛,主要包括以下几个方面:1. 网站建设:开发人员使用FTP上传网站文件到服务器,实现网站的发布和更新。
2. 文件备份:将重要数据备份到远程服务器,确保数据安全。
ftp两种工作方式

被动模式的FTP通常用在处于防情况下,防火墙通常配置为不允许外界访问防火墙之后主机,而只允许由防火墙之后的主机发起的连接请求通过。因此,在这种情况下不能使用主动模式的FTP传输,而被动模式的FTP可以良好的工作。
活动目录的安装向导的命令:dcpromo
客户机加域时,出现了无法加域,提示指定的网络名格式无效,解决方法:域服务器的TCP/IP中的高级中,把Wins里选中“禁用tcp/ip上的netbios”改为启用tcp/ip上的netbios
在被动模式下,FTP库户端随机开启一个大于1024的端口N向服务器的21号端口发起连接,同时会开启N+1号端口。然后向服务器发送PASV命令,通知服务器自己处于被动模式。服务器收到命令后,会开放一个大于1024的端口P进行监听,然后用PORT P命令通知客户端,自己的数据端口是P。客户端收到命令后,会通过N+1号端口连接服务器的端口P,然后在两个端口之间进行数据传输。
FTP两种工作模式:主动模式(Active FTP)和被动模式(Passive FTP)
在主动模式下,FTP客户端随机开启一个大于1024的端口N向服务器的21号端口发起连接,然后开放N+1号端口进行监听,并向服务器发出PORT N+1命令。服务器接收到命令后,会用其本地的FTP数据端口(通常是20)来连接客户端指定的端口N+1,进行数据传输。
FTP主动模式(Port)和被动模式(Passive)的区别

FTP主动模式(Port)和被动模式(Passive)的区别
1、FTP的PORT(主动模式):
PORT中⽂称为主动模式,⼯作的原理: FTP客户端(1024以上端⼝)连接到FTP服务器的21端⼝,发送⽤户名和密码登录,
登录成功后要list列表或者读取数据时,客户端随机开放⼀个端⼝(1024以上),发送 PORT命令到FTP服务器,告诉服务器客户端采⽤主动模式并开放端⼝;
FTP服务器收到PORT主动模式命令和端⼝号后,通过服务器的20端⼝和客户端开放的端⼝连接,发送数据,原理如下图:
2、PASV(被动模式):
PASV是Passive的缩写,中⽂成为被动模式,⼯作原理:FTP客户端(1024以上端⼝)连接到FTP服务器的21端⼝,发送⽤户名和密码登录,登录成功后要list列表或者读取数据时,
发送PASV命令到FTP服务器,服务器在本地随机开放⼀个端⼝(1024以上),然后把开放的端⼝告诉客户端,客户端再连接到服务器开放的端⼝进⾏数据传输,原理如下图:
两种模式的⽐较:
从上⾯的运⾏原来看到,主动模式与被动模式,建⽴连接的过程是⼀样的,差别在于数据传输。
主动模式传送数据时是“服务器(20端⼝)连接到客户端的端⼝,进⾏数据传输;
被动模式传送数据是客户端连接到服务器的端⼝(1024以上端⼝),然后再进⾏数据传输。
主动模式需要客户端必须开放端⼝给服务器,很多客户端都是在防⽕墙内,开放端⼝给FTP服务器访问⽐较困难。
被动模式只需要服务器端开放端⼝给客户端连接就⾏了。
FTP主动模式和被动模式

FTP主动模式和被动模式基于Centos7、vsftpd3.0.20、前导:ftp通信中存在两种连接:控制连接:⽤于传递控制命令及其他⼩数据量通信。
数据连接:⽤于传输⽂件数据流。
根据数据连接的建⽴⽅式分为主动模式(active mode)和被动模式(passive mode),主动和被动都是以ftp服务端为中⼼来说的。
主动模式:顾名思义,主动模式就是ftp-erver主动发起通向ftp-client的数据连接。
被动模式:同理,被动模式就是ftp-erver不发起连接,⽽是被动接受ftp-client发起的数据连接。
ftp仍然属于tcp连接,故需三次握⼿。
⼀、主动模式:vim /etc/vsftpd/vsftpd.confpasv_enable=NO #1.关闭passive模式port_enable=YES #2.启⽤active模式connect_from_port_20=YES #3.允许从20端⼝连接,主动模式使⽤20端⼝进⾏数据传输pasv_min_port=3000 #active模式下属⽆效配置pasv_max_port=4000 #active模式下属⽆效配置systemctl restart vsftpd #重启ftp服务ftp -A 192.168.50.87 #以active模式连接ftp-server,⼀定要加参数【-A】连接过程:1. client⽤⼤于1024的任意端⼝(如1025)连接server的21端⼝,建⽴控制连接(controll-connection),⽤于控制通信。
2. client另起⼀个⼤于1024的端⼝(如1026),并通过控制连接将此端⼝告诉server,server使⽤其20端⼝主动与此端⼝建⽴数据连接(data-connection)。
⼆、被动模式:vim /etc/vsftpd/vsftpd.confpasv_enable=YES #1.开启被动模式,如果不配置pasv_enable=NO,默认是passive模式#默认值为0,表⽰取任意(1024 – 65535端⼝),把端⼝范围设在⽐较⾼的⼀段范围内,⽐如3000-4000pasv_min_port=3000 #2.指定数据连接端⼝下界pasv_max_port=4000 #3.指定数据连接端⼝上界systemctl restart vsftpd #重启ftp服务ftp -p 192.168.50.87 #以passive模式连接ftp-server,【-p】为可选参数连接过程:1. client⽤⼤于1024的任意端⼝(如1025)连接server的21端⼝,建⽴控制连接(controll-connection),⽤于控制通信。
FTP的主动模式和被动模式是什么意思

FTP的主动模式和被动模式是什么意思
FTP的主动和被动模式
FTP有两种使用模式:主动和被动。
主动模式要求客户端和服务器端同时打开并
且监听一个端口以建立连接。
在这种情况下,客户端由于安装了防火墙会产生一些问题。
所以,创立了被动模式。
被动模式只要求服务器端产生一个监听相应端口的进程,这样就可以绕过客户端安装了防火墙的问题。
一个主动模式的FTP连接建立要遵循以下步骤:
1.客户端打开一个随机的端口(端口号大于1024,在这里,我们称它为x),同
时一个FTP进程连接至服务器的21号命令端口。
此时,源端口为随机端口x,在客户端,远程端口为21,在服务器。
2.客户端开始监听端口(x+1),同时向服务器发送一个端口命令(通过服务器的21号命令端口),此命令告诉服务器客户端正在监听的端口号并且已准备好从此端口接收数据。
这个端口就是我们所知的数据端口。
3.服务器打开20号源端口并且建立和客户端数据端口的连接。
此时,源端口为20,远程数据端口为(x+1)。
4.客户端通过本地的数据端口建立一个和服务器20号端口的连接,然后向服务器发送一个应答,告诉服务器它已经建立好了一个连接。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
FTP主动模式与被动模式
FTP是File Transfer Protocol(文件传输协议)的缩写,用来在两台计算机之间互
相传送文件。
相比于HTTP,FTP协议要复杂得多。
复杂的原因,是因为FTP协议要用到两个TCP连接,一个是命令链路,用来在FTP客户端与服务器之间传递命令;另一个是数据链路,用来上传或下载数据。
FTP 有两种工作模式:PORT方式和Passive方式中文意思为主动模式和被动模式。
这两种模式的主要区别在于数据连接的发起方和数据连接的端口号。
在主动模式(Port)下,数据连接由服务器发起,也就是三次握手的第一次是服务器
先来的,端口号服务器端 20,客户端随机。
这时只要放行 20 和 21 就可以。
在被动模式(Passive)下,数据连接由客户端发起,也就是三次握手的第一次是客户端先来的,端口号服务器端和客户端都是随机。
被动模式解决了防火墙阻止从服务器到客户端的传入数据端口连接的问题。
主动模式的FTP服务器数据端口固定在20,而被动模式(Passive)则在1025-65535之间随机
主动模式原理
在主动模式下,FTP 客户端首先从一个随机的非特殊端口(N > 1024)连接到 FTP 服务器的命令端口(21 端口)。
然后客户端在 N+1 端口监听,并通过 N+1 端口发
送命令给 FTP 服务器。
服务器接收到客户端的命令后,会从 20 端口连接到客户端指定的数据端口(N+1
端口),然后开始传输数据。
这意味着,在主动模式下,数据连接是由服务器发起的。
被动模式原理
在被动模式下,FTP 客户端首先从一个随机的非特殊端口(N > 1024)连接到 FTP 服务器的命令端口(21 端口)。
然后客户端发送 PASV 命令,告诉服务器它希望
使用被动模式。
服务器接收到 PASV 命令后,会打开一个随机的非特殊端口(P > 1024),并将 P
端口号发送给客户端。
客户端接收到 P 端口号后,会从 N+1 端口连接到服务器的
P 端口,然后开始传输数据。
这意味着,在被动模式下,数据连接是由客户端发起的。
主动FTP
主动方式的FTP是这样的:客户端从一个任意的非特权端口N(N>1024)连接到FTP服务器的命令端口,也就是21端口。
然后客户端开始监听端口N+1,并发送FTP命令“port N+1”到FTP服务器。
接着服务器会从它自己的数据端口(20)连接到客户端指定的数据端口(N+1)。
针对FTP服务器前面的防火墙来说,必须允许以下通讯才能支持主动方式FTP:
1.任何大于1024的端口到FTP服务器的21端口。
(客户端初始化的连接)
2.FTP服务器的21端口到大于1024的端口。
(服务器响应客户端的控制端口)
3.FTP服务器的20端口到大于1024的端口。
(服务器端初始化数据连接到客
户端的数据端口)
4.大于1024端口到FTP服务器的20端口(客户端发送ACK响应到服务器的
数据端口)
被动FTP
为了解决服务器发起到客户的连接的问题,人们开发了一种不同的FTP连接方式。
这就是所谓的被动方式,或者叫做Passive,当客户端通知服务器它处于被动模式
时才启用。
在被动方式FTP中,命令连接和数据连接都由客户端发起,这样就可以解决从服
务器到客户端的数据端口的入方向连接被防火墙过滤掉的问题。
当开启一个 FTP连接时,客户端打开两个任意的非特权本地端口(N > 1024和
N+1)。
第一个端口连接服务器的21端口,但与主动方式的FTP不同,客户端不
会提交PORT命令并允许服务器来回连它的数据端口,而是提交 Passive命令。
这
样做的结果是服务器会开启一个任意的非特权端口(P > 1024),并发送PORT P
命令给客户端。
然后客户端发起从本地端口N+1到服务器的端口P的连接用来传
送数据。
对于服务器端的防火墙来说,必须允许下面的通讯才能支持被动方式的FTP:
1.从任何大于1024的端口到服务器的21端口(客户端初始化的连接)
2.服务器的21端口到任何大于1024的端口(服务器响应到客户端的控制端口
的连接)
3.从任何大于1024端口到服务器的大于1024端口(客户端初始化数据连接到
服务器指定的任意端口)
4.服务器的大于1024端口到远程的大于1024的端口(服务器发送ACK响应和
数据到客户端的数据端口)
如何选择 FTP 的工作模式
选择 FTP 的工作模式通常取决于你的网络环境和防火墙设置。
如果你的客户端防
火墙阻止了从服务器到客户端的传入数据端口连接,那么你应该选择被动模式。
在被动模式下,客户端会发起到服务器的两个连接,解决了防火墙阻止从服务器到客户端的传入数据端口连接的问题。
如果你使用的 FTP 客户端支持主动模式和被动模式,那么你可以在客户端的设置
中选择工作模式。
如果你使用命令行 FTP 客户端,那么你可以使用 passive 命令在
主动模式和被动模式之间切换。
主动与被动FTP优缺点:
主动模式的优点是它比较简单,只需要在服务器端开放20 和21 端口即可。
但是,主动模式的缺点是它可能会被客户端的防火墙阻止,因为它需要服务器主动连接到客户端的数据端口。
被动模式的优点是它解决了防火墙阻止从服务器到客户端的传入数据端口连接的问题。
在被动模式下,客户端会发起到服务器的两个连接,因此不会被客户端的防火墙阻止。
但是,被动模式的缺点是它需要在服务器端开放更多的端口,这可能会增加安全风险。
总之,选择哪种工作模式取决于你的网络环境和安全需求。
如果你的客户端防火墙阻止了从服务器到客户端的传入数据端口连接,那么你应该选择被动模式。
否则,你可以根据自己的喜好选择主动模式或被动模式。