当前位置:首页 » 文件管理 » ftp主动被动

ftp主动被动

发布时间: 2022-02-09 05:03:25

㈠ 为什么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模式 。

㈡ 什么是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的解释,可以简单概括为以下两点:
1、主动FTP:
命令连接:客户端 >1024端口 -> 服务器 21端口
数据连接:客户端 >1024端口 <- 服务器 20端口
2、被动FTP:
命令连接:客户端 >1024端口 -> 服务器 21端口
数据连接:客户端 >1024端口 -> 服务器 >1024端口

㈣ 如何设置FTP的主动模式和被动模式

设置FTP的主动模式和被动模式,用到的工具:8uftp,步骤如下:

  1. 打开8uftp软件,点击编辑菜单--选项:

注意事项:适用于8uftp.

㈤ 请高手介绍一下ftp的主动连接和被动连接

自己看,不用加分,其实就是协商的过程,很容易理解.
http://www.lovim.com/dbbs/redirect.php?tid=7&goto=lastpost

ftp的两种连接模式PASV(被动)和PORT(主动)

FTP基础知识 FTP是File Transfer Protocol(文件传输协议)的缩写,用来在两台计算机之间互相传送文件。相比于HTTP,FTP协议要复杂得多。复杂的原因,是因为FTP协议要用到两个TCP连接,一个是命令链路,用来在FTP客户端与服务器之间传递命令;另一个是数据链路,用来上传或下载数据。 FTP协议有两种工作方式:PORT方式和PASV方式,中文意思为主动式和被动式。 Port模式:ftp server:tcp 21 <------client:dynamicftp server:tcp 20 ------>client:dynamic Pasv模式:ftp server:tcp 21 <----client:dynamicftp server:tcp dynamic <----client:dynamic PORT(主动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。当需要传送数据时,客户端在命令链路上用PORT命令告诉服务器:“我打开了XXXX端口,你过来连接我”。于是服务器从20端口向客户端的XXXX端口发送连接请求,建立一条数据链路来传送数据。 PASV(被动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。当需要传送数据时,服务器在命令链路上用PASV命令告诉客户端:“我打开了XXXX端口,你过来连接我”。于是客户端向服务器的XXXX端口发送连接请求,建立一条数据链路来传送数据。 从上面可以看出,两种方式的命令链路连接方法是一样的,而数据链路的建立方法就完全不同。而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服务器主动与被动的区别

用默认被动连接的方式就可以了

主动连接方式没用过 不清楚

ftp软件都默认是这个模式的

㈧ 如何判断ftp当前是主动模式 被动模式设置

FTP只通过TCP连接,没有用于FTP的UDP组件.FTP不同于其他服务的是它使用了两个端口, 一个数据端口和一个命令端口(或称为控制端口)。通常21端口是命令端口,20端口是数据端口。当混入主动/被动模式的概念时,数据端口就有可能不是20了。

主动模式FTP:
主动模式下,FTP客户端从任意的非特殊的端口(N > 1023)连入到FTP服务器的命令端口--21端口。然后客户端在N+1(N+1 >= 1024)端口监听,并且通过N+1(N+1 >= 1024)端口发送命令给FTP服务器。服务器会反过来连接用户本地指定的数据端口,比如20端口。
以服务器端防火墙为立足点,要支持主动模式FTP需要打开如下交互中使用到的端口:
l FTP服务器命令(21)端口接受客户端任意端口(客户端初始连接)
l FTP服务器命令(21)端口到客户端端口(>1023)(服务器响应客户端命令)
l FTP服务器数据(20)端口到客户端端口(>1023)(服务器初始化数据连接到客户端数据端口)
l FTP服务器数据(20)端口接受客户端端口(>1023)(客户端发送ACK包到服务器的数据端口)
用图表示如下:

在第1步中,客户端的命令端口与FTP服务器的命令端口建立连接,并发送命令“PORT 1027”。然后在第2步中,FTP服务器给客户端的命令端口返回一个"ACK"。在第3步中,FTP服务器发起一个从它自己的数据端口(20)到客户端先前指定的数据端口(1027)的连接,最后客户端在第4步中给服务器端返回一个"ACK"。
主动方式FTP的主要问题实际上在于客户端。FTP的客户端并没有实际建立一个到服务器数据端口的连接,它只是简单的告诉服务器自己监听的端口号,服务器再回来连接客户端这个指定的端口。对于客户端的防火墙来说,这是从外部系统建立到内部客户端的连接,这是通常会被阻塞的。

主动FTP的例子:
下面是一个主动FTP会话的实际例子。当然服务器名、IP地址和用户名都做了改动。在这个例子中,FTP会话从 testbox1.slacksite.com (192.168.150.80),一个运行标准的FTP命令行客户端的Linux工作站,发起到testbox2.slacksite.com (192.168.150.90),一个运行ProFTPd 1.2.2RC2的Linux工作站。debugging(-d)选项用来在FTP客户端显示连接的详细过程。红色的文字是 debugging信息,显示的是发送到服务器的实际FTP命令和所产生的回应信息。服务器的输出信息用黑色字表示,用户的输入信息用粗体字表示。
仔细考虑这个对话过程我们会发现一些有趣的事情。我们可以看到当 PORT 命令被提交时,它指定了客户端(192.168.150.80)上的一个端口而不是服务器的。当我们用被动FTP时我们会看到相反的现象。我们再来关注PORT命令的格式。就象你在下面的例子看到的一样,它是一个由六个被逗号隔开的数字组成的序列。前四个表示IP地址,后两个组成了用于数据连接的端口号。用第五个数乘以256再加上第六个数就得到了实际的端口号。下面例子中端口号就是((14*256) + 178) = 3762。我们可以用netstat来验证这个端口信息。

testbox1: {/home/p-t/slacker/public_html} % ftp -d testbox2
Connected to testbox2.slacksite.com.
220 testbox2.slacksite.com FTP server ready.
Name (testbox2:slacker): slacker
---> USER slacker
331 Password required for slacker.
Password: TmpPass
---> PASS XXXX
230 User slacker logged in.
---> SYST
215 UNIX Type: L8
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
ftp: setsockopt (ignored): Permission denied
---> PORT 192,168,150,80,14,178
200 PORT command successful.
---> LIST
150 Opening ASCII mode data connection for file list.
drwx------ 3 slacker users 104 Jul 27 01:45 public_html
226 Transfer complete.
ftp> quit
---> QUIT
221 Goodbye.

㈨ FTP主动模式和被动模式的区别

FTP主动模式就是FTP会用自己的20端口去主动得跟客户端建立连接,当客户端网络做NAT的时候会发生错误。把NAT的端口认为是客户端与FTP 20端口建立连接的

被动模式就是当建立ftp连接后,客户端发送一个被动模式请求给服务器,服务器选择一个数据端口监听,并把端口告诉客户端,客户端直接向数据端口发起连接,这样,即使中间有做NAT也不影响FTP数据传输通道建立

热点内容
如何设置优酷缓存 发布:2024-10-24 04:16:44 浏览:174
服务器日记如何保留6个月 发布:2024-10-24 04:11:42 浏览:239
linux建新用户 发布:2024-10-24 04:03:06 浏览:936
java67 发布:2024-10-24 04:02:56 浏览:406
编程设计图 发布:2024-10-24 03:51:45 浏览:190
lsb算法嵌入 发布:2024-10-24 03:48:31 浏览:402
三维软件需要哪些配置 发布:2024-10-24 03:41:19 浏览:741
javascript与python 发布:2024-10-24 03:40:01 浏览:339
全部浏览器下载管理员密码多少 发布:2024-10-24 03:33:00 浏览:806
常用的图像算法 发布:2024-10-24 03:25:07 浏览:984