❶ 如何为被动模式FTP服务器配置Windows防火墙 详细�0�3
通过打开到 TCP 端口号 21 的“命令通道”连接,标准模式 FTP 客户端会启动到服务器的会话。客户端通过将 PORT 命令发送到服务器请求文件传输。然后,服务器会尝试启动返回到 TCP 端口号 20 上客户端的“数据通道”连接。客户端上运行的典型防火墙将来自服务器的此数据通道连接请求视为未经请求,并会丢弃数据包,从而导致文件传输失败。 Windows Vista 和 Windows Server 2008 中的 高级安全 Windows 防火墙 支持有状态 FTP ,该 FTP 允许将端口 20 上的入站连接请求与来自客户端的先前出站 PORT 命令相匹配。但是,如果您通过 SSL 使用 FTP 来加密和保护 FTP 通信,则防火墙不再能够检查来自服务器的入站连接请求,并且这些请求会被阻止。 为了避免此问题, FTP 还支持“被动”操作模式,客户端在该模式下启动数据通道连接。客户端未使用 PORT 命令,而是在命令通道上发送 PASV 命令。服务器使用 TCP 端口号进行响应,客户端应连接到该端口号来建立数据通道。默认情况下,服务器使用极短范围( 1025 到 5000 )内的可用端口。为了更好保护服务器的安全,您可以限制 FTP 服务使用的端口范围,然后创建一个防火墙规则:仅在那些允许的端口号上进行 FTP 通信。 本主题将讨论执行以下操作的方法: 1. 配置 FTP 服务以便仅将有限数量的端口用于被动模式 FTP 2. 配置入站防火墙规则以便仅在允许的端口上进行入站 FTP 连接 以下过程显示在 Internet 信息服务 (IIS) 7.0 版上配置 FTP 服务的步骤。如果您使用其他 FTP 服务,请查阅产品文档以找到相应的步骤。配置对 SSL 的支持不在本主题的讨论范围之内。有关详细信息,请参阅 IIS 文档。 配置 FTP 服务以便仅将有限数量的端口用于被动模式 FTP 1. 在 IIS 7.0 管理器中的“连接”窗格中,单击服务器的顶部节点。 2. 在细节窗格中,双击“FTP 防火墙支持”。 3. 输入您希望 FTP 服务使用的端口号的范围。例如,41000-41099 允许服务器同时支持 100 个被动模式数据连接。 4. 输入防火墙的外部 IPv4 地址,数据连接通过该地址到达。 5. 在“操作”窗格中,单击“应用”保存您的设置。 还必须在 FTP 服务器上创建防火墙规则,以在前一过程中配置的端口上允许入站连接。尽管您可以创建按编号指定端口的规则,但是,创建打开 FTP 服务所侦听的任何端口的规则更为容易。通过按前一过程中的步骤操作,您可限制 FTP 侦听的端口。 配置入站防火墙规则以便仅允许到 FTP 所侦听端口的入站 FTP 连接 1. 打开管理员命令提示符。依次单击“开始”、“所有程序”和“附件”,右键单击“命令提示符”,然后单击“以管理员身份运行”。 2. 运行下列命令: 复制代码 netsh advfirewall firewall add rule name=”FTP Service” action=allow service=ftpsvc protocol=TCP dir=in 3. 最后,禁用有状态 FTP 筛选,以使防火墙不会阻止任何 FTP 通信。 复制代码 netsh advfirewall set global StatefulFTP disable Windows Firewall and non-secure FTP traffic Windows firewall can be configured from command line using netsh command. 2 simple steps are required to setup Windows Firewall to allow non-secure FTP traffic 1) Open port 21 on the firewall netsh advfirewall firewall add rule name="FTP (no SSL)" action=allow protocol=TCP dir=in localport=21 2) Activate firewall application filter for FTP (aka Stateful FTP) that will dynamically open ports for data connections netsh advfirewall set global StatefulFtp enable
❷ 通过FTP软件的PASV模式,建立与服务器的被动防火墙连接。。。。怎么看不懂啊 教教我
FTP协议有两种工作方式:PORT方式和PASV方式,中文意思为主动式和被动式。
PORT(主动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。
当需要传送数据时,客户端在命令链路上用 PORT命令告诉服务器:“我打开了****端口,你过来连接我”。于是服务器从20端口向客户端的****端口发送连接请求,建立一条数据链路来传送数据。
PASV(被动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。
当需要传送数据时,服务器在命令链路上用 PASV命令告诉客户端:“我打开了****端口,你过来连接我”。于是客户端向服务器的****端口发送连接请求,建立一条数据链路来传送数据。
从上面可以看出,两种方式的命令链路连接方法是一样的,而数据链路的建立方法就完全不同。而FTP的复杂性就在于此。
FTP服务器端的注意事项
一、FTP服务器是公网IP,用公网动态域名;或是内网IP,用内网专业版TrueHost
1、服务器如果安装了防火墙,请记住要在防火墙上打开FTP端口(默认是21)。
2、所有FTP服务器软件都支持PORT方式。至于PASV方式,大部分FTP服务器软件都支持。支持PASV方式的FTP服务器软件,也可以设置为只工作在PORT方式上。
3、为了PASV方式能正常工作,需要在FTP服务器软件上为PASV方式指定可用的端口范围(设置方法)。此外,还要在服务器的防火墙上打开这些端口。当客户端以PASV方式连接服务器的时候,服务器就会在这个端口范围里挑选一个端口出来,给客户端连接。
二、FTP服务器是内网IP,用内网动态域名标准版cm*natpro*y
这种情况下,FTP服务器不需要做特殊设置,只要支持PASV方式就可以了。大部分FTP服务器软件都支持PASV方式。
FTP客户端的注意事项
请注意:选择用PASV方式还是PORT方式登录FTP服务器,选择权在FTP客户端,而不是在FTP服务器。
一、客户端只有内网IP,没有公网IP
从上面的FTP基础知识可知,如果用PORT方式,因为客户端没有公网IP,FTP将无法连接客户端建立数据链路。因此,在这种情况下,客户端必须要用PASV方式,才能连接FTP服务器。大部分FTP站长发现自己的服务器有人能登录上,有人登录不上,典型的错误原因就是因为客户端没有公网IP,但用了IE作为FTP客户端来登录(IE默认使用PORT方式)。
作为FTP站长,有必要掌握FTP的基础知识,然后指导您的朋友如何正确登录您的FTP。
二、客户端有公网IP,但安装了防火墙
如果用PASV方式登录FTP服务器,因为建立数据链路的时候,是由客户端向服务器发送连接请求,没有问题。反过来,如果用PORT方式登录FTP服务器,因为建立数据链路的时候,是由服务器向客户端发送连接请求,此时连接请求会被防火墙拦截。如果要用PORT方式登录FTP服务器,请在防火墙上打开 1024以上的高端端口。
三、连接用内网标准版cm*natpro*y搭建的FTP服务,必须要用PASV方式。连接任何公网FTP服务器、或用内网专业版TrueHost搭建的FTP服务器,PORT方式和PASV方式都可以使用。
当然,使用PORT方式的时候,还要满足上面的两个条件。
四、常见的FTP客户端软件PORT方式与PASV方式的切换方法。
大部分FTP客户端默认使用PASV方式。IE默认使用PORT方式。
在大部分FTP客户端的设置里,常见到的字眼都是“PASV”或“被动模式”,极少见到“PORT”或“主动模式”等字眼。因为FTP的登录方式只有两种:PORT和PASV,取消PASV方式,就意味着使用PORT方式。
IE:
工具 -> Internet选项 -> 高级 -> “使用被动FTP”(需要IE6.0以上才支持)。
CuteFTP:
Edit -> Setting -> Connection -> Firewall -> “PASV Mode”
或
File -> Site Manager,在左边选中站点 -> Edit -> “Use PASV mode”
FlashGet:
工具 -> 选项 -> 代理服务器 -> 直接连接 -> 编辑 -> “PASV模式”
FlashFTP:
选项 -> 参数选择 -> 代理/防火墙/标识 -> “使用被动模式”
或
站点管理 -> 对应站点 -> 选项 -> “使用被动模式”
或
快速连接 -> 切换 -> “使用被动模式”
LeechFTP:
Option -> Firewall -> Do not Use
五、请尽量不要用IE作为FTP客户端
IE只是个很粗糙的FTP客户端工具。首先,IE6.0以下的版本不支持PASV方式;其次,IE在登录FTP的时候,看不到登录信息。在登录出错的时候,无法找到错误的原因。在测试自己的FTP网站的时候,强烈建议不要使用IE。
FTP建站的详细配置过程
请参考这个网页的说明来配置:
使用Serv-U建立FTP网站
高级话题
一、为什么没有公网IP,也能使用PORT方式登录FTP?
NAT 网关的工作方式是在TCP/IP数据包的包头里找局域网的源地址和源端口,替换成网关的地址和端口。对数据包里的内容,是不会改变的。而使用PORT方式登录FTP的时候,IP地址与端口信息是在数据包里面的,而不是在包头。因此,没有公网IP,使用PORT方式是无法从internet上的ftp服务器下载数据的。
但是,极少数的NAT网关也支持PORT方式。这些NAT网关连数据包里面的内容都扫描,扫描到 PORT指令后会替换PORT方式的IP和端口。在这种NAT网关下面,用PORT方式就没问题了。不过,这些网关也只扫描21端口的数据包,如果FTP 服务器不是用默认的21端口,也无法使用PORT方式。
二、内网可以用PORT访问其他FTP,为什么不能用PORT访问自己的TrueHost FTP?
下面要讨论的问题,只是为了说明一些原理,是不影响实际使用的。如果您没有兴趣深究这些原理,不必花时间看。
内网用户通过支持PORT方式的NAT网关,访问自己本机利用TrueHost建立的FTP服务器,FTP命令链路的建立过程如下:
FTP客户端
10.10.0.1
端口*** <==> ISP NAT网关
61.144.1.2
端口**** <==> TH服务器
*.*.*.*
端口21 <==> TH客户端 <==> 用户FTP服务器
10.10.0.1
端口21
FTP客户端通过ISP的NAT网关、科迈TrueHost服务器、TrueHost客户端,连接用户本机的FTP服务器的21端口。
当需要下载数据的时候,FTP客户端通过这条命令链路,向FTP服务器发送PORT命令。假设命令为:
PORT 10,10,0,1,30,4 (即IP=10.10.0.1 端口=30*256+4=7684)
当命令通过ISP的NAT网关的时候,NAT网关判断目的端口是21,并且是PORT命令,于是,修改命令里的IP和端口,替换为自己的IP和端口,比如:
PORT 61,144,1,2,50,6 (即IP=61.144.1.2 端口=50*256+6=12806)
用户的FTP服务器最终收到的是上面这个PORT命令。于是,FTP服务器向这个IP和端口发送连接请求,建立数据链路。
用户FTP服务器
10.10.0.1
端口20 <==> ISP NAT网关
61.144.1.2
端口12806 <==> FTP客户端
10.10.0.1
端口7684
但是,因为NAT网关的公网IP只能接收外来的连接请求。就是说,61.144.1.2:12806只能接收其他公网IP的连接请求,对于从NAT内部(10.10.0.1:20)发起的连接请求,是无法建立连接的。为什么?原因很简单,因为内网IP要访问外网,必须要通过NAT建立映射。于是FTP数据链路无法建立。于是,用户无法在自己的机器上通过21端口访问自己的TrueHost FTP。
我们再来看看,如果FTP端口不是21,比如是22,会发生什么情况呢?在FTP客户端发送PORT命令的时候,NAT网关检测到目标端口是22,因为支持PORT的 NAT网关只监视目的端口是21的数据包,发现目的端口是22的数据包,不做任何处理,完全放行。于是FTP服务器收到的PORT命令依然是PORT 10,10,0,1,30,4。于是FTP服务器向这个IP和端口发送连接请求。
用户FTP服务器
10.10.0.1
端口20 <==> FTP客户端
10.10.0.1
端口7684
这种情况下命令链路就可以建立起来了。而且是等于本机连接本机,速度飞快。
综上所述,内网用户无法用PORT方式通过21端口访问自己的TrueHost FTP服务器。如果FTP端口不是21,则可以访问,而且实际上是本机连接本机。
❸ 关于FTP被动模式与主动模式中防火墙过滤情况!
主动模式和被动模式是针对服务器而言。ftp需要建立两个连接(命令连接和数据连接),主动方式的命令连接由客户机发起,数据连接由服务器发起,这样客户端的防火墙可能会阻拦;被动连接的两个连接都由客户机发起,客户机的防火墙不会阻拦(就像设置一个门不是为了关自己)。这是主体思想,具体的怎么连接你上网搜一下,很多的。
回答问题:
不会,一般服务器都是先前设置好的。
这里考虑的防火墙主要是在建立连接时的作用。
见上。
❹ 为什么ftp协议要采用主动和被动两种模式,有什么好处
FTP是一种文件传输协议,它支持两种模式, 一种方式叫做Standard(也就是Active, 主动方式),一种是Passive(也就是PASV, 被动方式)。Standard模式FTP的客户端发送 PORT命令到FTPserver。 Passive模式FTP的客户端发送PASV命令到 FTPServer。 下面介绍一个这两种方式的工作原理: Standard模式FTP客户端首先和FTP Server的TCP21端口建立连接, 通过这个通道发送命令, 客户端需要接收数据的时候在这个通道上发送PORT命令。 PORT命令包含了客户端用什么端口接收数据。 在传送数据的时候,服务器端通过自己的TCP 20端口发送数据。FTP server必须和客户端建立一个新的连接用来传送数据。 Passive模式在建立控制通道的时候和Standard模式 类似,当客户端通过这个通道发送PASV命令的时候,FTP server打开一个位于1024和5000之间的随机端口并且 通知客户端在这个端口上传送数据的请求,然后FTP server将通过这个端口进行数据的传送,这个时候FTP server不再需要建立一个新的和客户端之间的连接。 现在的FTP软件里面包括在IE5以上的版本里面也已经支持这两 种模式了。一般一些FTP客户端的软件就比较好设置了, 一般都有一个PASV的选项,比如CuteFTP, 传输的方式都有Standard和PASV的选项, 可以自己进行选择; 另外在IE里面如果要设置成PASV模式的话可以选中工具- Internet选项-高级-为FTP站点启用文件夹视图, 否则就采用Standard模式。 很多防火墙在设置的时候都是不允许接受外部发起的连接的, 所以FTP的Standard模式在许多时候在内部网络的机器通 过防火墙出去的时候受到了限制,因为从服务器的TCP 20无法和内部网络的客户端建立一个新的连接,造成无法工作。 当然也可以设置成功, 首先要创建一条规则就是允许内部的IP连接外部的IP的21端口 ;第二条就是禁止外部IP的TCP20端口连接内部IP的< 1024的端口,这条是为了防止外部连接内部的常规端口; 第三条验证ACK是否等于1, 这个的原理就参见TCP建立连接的三次握手吧。 所以如果安全的配置的话非常困难, 这个时候就想起来了PASV模式,因为不用建立新的连接, 所以也就不会涉及到后面的问题了。 但是管理员可能不想使用PASV模式,因为这个时候FTP Server会开放一个随机的高端口, 尽管在IIS4和IIS5里面端口的范围是1024-5000, 但是许多FTPServer的端口范围达到了1024- 65535, 这个时候在这个主动开放的随机端口上是有完全的访问权限的, 如果IIS也要设置成开放的端口为1024-65535, 具体方法如下: 1.regedt32 2.找到HKEY_LOCAL_MACHINE\ SYSTEM\CurrentControlSet\ Services\Tcpip\Parameters 3.编辑-添加-数值 ValueName:MaxUserPortData Type:REG_DWORDValue:65534< forexample> 所以如果遇到了有防火墙的话或者怕配置麻烦的话还是采用PASV 模式比较好些, 但是如果真的对安全的需求很高的话建议采用Standard模式 。
❺ 如何设置windows自带的ftp使用被动模式上传
主动式有利于服务器端管理
但是可能会被客户端防火墙拦截
被动式由于数据传输由客户端发起出所有不会被客户端防火墙拦截
但是不利于服务器管理
使用windows
server搭建完毕
双击FTP防火墙
填写端口和IP即可
例如填写5000-5100,即为允许100个被动连接(此时可能为灰色需要开通防火墙)
如果端口位置为灰色,需执行以下命令添加防火墙策略
允许ftp
netsh
advfirewall
firewall
add
rule
name="FTP
Service"
action=allow
service=ftpsvc
protocol=TCP
dir=in
netsh
advfirewall
firewall
set
global
StatefulFTP
disable
添加完毕再看端口可以输入数值
输入数值
和外部连接的IP地址
点击应用
此时再次使用被动式连接
即可成功连接
按:
测试发现关闭防火墙无效,填写被动式端口依然为灰色.
必须添加2条命令
❻ 如何设置FTP的主动模式和被动模式
一、什么是主动FTP
主动模式的FTP工作原理:客户端从一个任意的非特权端口N连接到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连接方式。这就是所谓的被动方式,或者叫做PASV,当客户端通知服务器它处于被动模式时才启用。
在被动方式FTP中,命令连接和数据连接都由客户端发起,这样就可以解决从服务器到客户端的数据端口的入方向连接被防火墙过滤掉的问题。
当开启一个 FTP连接时,客户端打开两个任意的非特权本地端口(N > 1024和N+1)。第一个端口连接服务器的21端口,但与主动方式的FTP不同,客户端不会提交PORT命令并允许服务器来回连它的数据端口,而是提交 PASV命令。这样做的结果是服务器会开启一个任意的非特权端口(P > 1024),并发送PORT P命令给客户端。然后客户端发起从本地端口N+1到服务器的端口P的连接用来传送数据。
对于服务器端的防火墙来说,必须允许下面的通讯才能支持被动方式的FTP:
1、 从任何大于1024的端口到服务器的21端口(客户端初始化的连接)
2、 服务器的21端口到任何大于1024的端口(服务器响应到客户端的控制端口的连接)
3、 从任何大于1024端口到服务器的大于1024端口(客户端初始化数据连接到服务器指定的任意端口)
4、 服务器的大于1024端口到远程的大于1024的端口(服务器发送ACK响应和数据到客户端的数据端口)
以上关于主动和被动FTP的解释,可以简单概括为以下两点:
1、主动FTP:
命令连接:客户端 >1024端口 -> 服务器 21端口
数据连接:客户端 >1024端口 <- 服务器 20端口
2、被动FTP:
命令连接:客户端 >1024端口 -> 服务器 21端口
数据连接:客户端 >1024端口 -> 服务器 >1024端口
三、主动模式ftp与被动模式FTP优点和缺点:
主动FTP对FTP服务器的管理和安全很有利,但对客户端的管理不利。因为FTP服务器企图与客户端的高位随机端口建立连接,而这个端口很有可能被客户端的防火墙阻塞掉。被动FTP对FTP客户端的管理有利,但对服务器端的管理不利。因为客户端要与服务器端建立两个连接,其中一个连到一个高位随机端口,而这个端口很有可能被服务器端的防火墙阻塞掉。
❼ 什么是ftp主动模式和被动模式
FTP是仅基于TCP的服务,不支持UDP。 与众不同的是FTP使用2个端口,一个数据端口和一个命令端口(也可叫做控制端口)。通常来说这两个端口是21(命令端口)和20(数据端口)。但FTP 工作方式的不同,数据端口并不总是20。这就是FTP主动与被动模式的最大不同之处。
(一)主动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连接方式。这就是所谓的被动方式,或者叫做PASV,当客户端通知服务器它处于被动模式时才启用。
在被动方式FTP中,命令连接和数据连接都由客户端发起,这样就可以解决从服务器到客户端的数据端口的入方向连接被防火墙过滤掉的问题。
当开启一个 FTP连接时,客户端打开两个任意的非特权本地端口(N > 1024和N+1)。第一个端口连接服务器的21端口,但与主动方式的FTP不同,客户端不会提交PORT命令并允许服务器来回连它的数据端口,而是提交 PASV命令。这样做的结果是服务器会开启一个任意的非特权端口(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服务器企图与客户端的高位随机端口建立连接,而这个端口很有可能被客户端的防火墙阻塞掉。被动FTP对FTP客户端的管理有利,但对服务器端的管理不利。因为客户端要与服务器端建立两个连接,其中一个连到一个高位随机端口,而这个端口很有可能被服务器端的防火墙阻塞掉。
幸运的是,有折衷的办法。既然FTP服务器的管理员需要他们的服务器有最多的客户连接,那么必须得支持被动FTP。我们可以通过为FTP服务器指定一个有 限的端口范围来减小服务器高位端口的暴露。这样,不在这个范围的任何端口会被服务器的防火墙阻塞。虽然这没有消除所有针对服务器的危险,但它大大减少了危 险。
简而言之:
主动模式(PORT)和被动模式(PASV)。主动模式是从服务器端向客户端发起连接;被动模式是客户端向服务器端发起连接。两者的共同点是都使用 21端口进行用户验证及管理,差别在于传送数据的方式不同,PORT模式的FTP服务器数据端口固定在20,而PASV模式则在1025-65535之间随机
FTP主动模式与被动模式的解决与原理
FTP是File Transfer Protocol(文件传输协议)的缩写,用来在两台计算机之间互相传送文件。相比于HTTP,FTP协议要复杂得多。复杂的原因,是因为FTP协议要用到两个TCP连接,一个是命令链路,用来在FTP客户端与服务器之间传递命令;另一个是数据链路,用来上传或下载数据。
FTP协议有两种工作方式:PORT方式和PASV方式,中文意思为主动式和被动式。
PORT(主动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。当需要传送数据时,客户端在命令链路上用PORT命令告诉服务器:“我打开了XXXX端口,你过来连接我”。于是服务器从20端口向客户端的XXXX端口发送连接请求,建立一条数据链路来传送数据。
PASV(被动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。当需要传送数据时,服务器在命令链路上用PASV命令告诉客户端:“我打开了XXXX端口,你过来连接我”。于是客户端向服务器的XXXX端口发送连接请求,建立一条数据链路来传送数据。
概括:
--------------------------------------------------------------------------------
主动模式:服务器向客户端敲门,然后客户端开门
被动模式:客户端向服务器敲门,然后服务器开门
所以,如果你是如果通过代理上网的话,就不能用主动模式,因为服务器敲的是上网代理服务器的门,而不是敲客户端的门
而且有时候,客户端也不是轻易就开门的,因为有防火墙阻挡,除非客户端开放大于1024的高端端口
❽ server2008 上用 ftp7.5 要在防火墙里开放哪些端口啊
20号端口,用于FTP控制端口,21号端口,用于FTP传输端口;
不知道你知道不知道FTP的主动模式和被动模式,一般客户机访问FTP用的都是被动模式,被动模式服务器会任意打开一个高端口,让客户机连进来。也就是说,除了开启20、21号端口外,还要开一些高于1024的端口,用于客户机访问FTP。
❾ FTP主动模式和被动模式的区别
一、什么是主动FTP
主动模式的FTP工作原理:客户端从一个任意的非特权端口N连接到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连接方式。这就是所谓的被动方式,或者叫做PASV,当客户端通知服务器它处于被动模式时才启用。
在被动方式FTP中,命令连接和数据连接都由客户端发起,这样就可以解决从服务器到客户端的数据端口的入方向连接被防火墙过滤掉的问题。
当开启一个
FTP连接时,客户端打开两个任意的非特权本地端口(N
>
1024和N+1)。第一个端口连接服务器的21端口,但与主动方式的FTP不同,客户端不会提交PORT命令并允许服务器来回连它的数据端口,而是提交
PASV命令。这样做的结果是服务器会开启一个任意的非特权端口(P
>
1024),并发送PORT
P命令给客户端。然后客户端发起从本地端口N+1到服务器的端口P的连接用来传送数据。
对于服务器端的防火墙来说,必须允许下面的通讯才能支持被动方式的FTP:
1、
从任何大于1024的端口到服务器的21端口(客户端初始化的连接)
2、
服务器的21端口到任何大于1024的端口(服务器响应到客户端的控制端口的连接)
3、
从任何大于1024端口到服务器的大于1024端口(客户端初始化数据连接到服务器指定的任意端口)
4、
服务器的大于1024端口到远程的大于1024的端口(服务器发送ACK响应和数据到客户端的数据端口)
以上关于主动和被动FTP的解释,可以简单概括为以下两点:
1、主动FTP:
命令连接:客户端
>1024端口
->
服务器
21端口
数据连接:客户端
>1024端口
<-
服务器
20端口
2、被动FTP:
命令连接:客户端
>1024端口
->
服务器
21端口
数据连接:客户端
>1024端口
->
服务器
>1024端口
三、主动模式ftp与被动模式FTP优点和缺点:
主动FTP对FTP服务器的管理和安全很有利,但对客户端的管理不利。因为FTP服务器企图与客户端的高位随机端口建立连接,而这个端口很有可能被客户端的防火墙阻塞掉。被动FTP对FTP客户端的管理有利,但对服务器端的管理不利。因为客户端要与服务器端建立两个连接,其中一个连到一个高位随机端口,而这个端口很有可能被服务器端的防火墙阻塞掉。