当前位置:首页 » 文件管理 » ftp开启被动模式

ftp开启被动模式

发布时间: 2023-02-21 01:53:15

1. iis的ftp防火墙就是开启被动模式吗

iis的ftp防火墙就是开启被动模式。在被动模式下,FTP客户端随机开启一个大于1024的端口N向服务器的21号端口发起连接,发送用户名和密码进行登陆,会开启N+1端口。向服务器发送PASV命令,通知服务器自己处于被动模式。服务器收到命令后,会开放一个大于1024的端口P(端口P的范围是可以设置的,后面会说到这个是很重要的)进行监听,用PORTP命令通知客户端,自己的数据端口是P。客户端收到命令后,会通过N+1号端口连接服务器的端口P,在两个端口之间进行数据传输。

2. 请问用IIS搭建FTP服务器,在哪里设置"主动模式"和"被动模式"

FTP两种工作模式:主动模式(Active FTP)和被动模式(Passive FTP)

在主动模式下,FTP客户端随机开启一个大于1024的端口N向服务器的21号端口发起连接,然后开放N+1号端口进行监听,并向服务器发出PORT N+1命令。服务器接收到命令后,会用其本地的FTP数据端口(通常是20)来连接客户端指定的端口N+1,进行数据传输。
在被动模式下,FTP库户端随机开启一个大于1024的端口N向服务器的21号端口发起连接,同时会开启N+1号端口。然后向服务器发送PASV命令,通知服务器自己处于被动模式。服务器收到命令后,会开放一个大于1024的端口P进行监听,然后用PORT P命令通知客户端,自己的数据端口是P。客户端收到命令后,会通过N+1号端口连接服务器的端口P,然后在两个端口之间进行数据传输。
总的来说,主动模式的FTP是指服务器主动连接客户端的数据端口,被动模式的FTP是指服务器被动地等待客户端连接自己的数据端口。
被动模式的FTP通常用在处于防火墙之后的FTP客户访问外界FTp服务器的情况,因为在这种情况下,防火墙通常配置为不允许外界访问防火墙之后主机,而只允许由防火墙之后的主机发起的连接请求通过。因此,在这种情况下不能使用主动模式的FTP传输,而被动模式的FTP可以良好的工作。

很多人误认为利用WINDOWS组件IIS来构建的FTP服务器没有实用价值,只能做一些测试和学习。主要是FTP服务的PORT和PASV两种连接模式下防火墙难以设置。对于PORT模式,客户端无法在此环境下运行,因为 FTP 服务必须向 FTP 客户端发出新的连接请求,防火墙会将这些连接检测为未经请求的连接尝试,并因此而将它们断开。防火墙管理员可能也不希望使用PASV模式 FTP 服务器,因为该 FTP 服务可以打开任何短暂的端口号。如果防火墙配置允许未经请求的连接完全访问所有的短暂端口,则可能会是不安全的。
从实用的角度来看,建立一个默认短暂端口范围有限制的PASV模式 FTP 服务方案应该是较好的选择。下面通过一个实例,说明如何在Windows 2003 中利用IIS组件架设PASV模式FTP服务。
1建立一个PORT模式的FTP服务
1.1安装“文件传输协议(FTP)服务”组件
安装步骤:
控制面板--->添加删除程序--->添加删除windows组件--->应用程序服务器--->Internet信息服务(IIS)--->文件传输协议(FTP)服务
将“文件传输协议(FTP)服务”复选框钩上,插入windows 2003安装盘或选择windows 2003安装路径,直至安装结束。
1.2FTP主目录及用户权限的配置
主目录:D:/soft/ftpup
拥有读写权限而不允许其它用户访问的用户:
ww1用户拥有 ww1目录的读写权限,位置在:D:/soft/ftpup/LocalUser/ww1
XX1用户拥有 XX1目录的读写权限,位置在:D:/soft/ftpup/LocalUser/XX1
允许匿名用户只读访问:
Everyone 拥有 public目录的只读权限,位置在:D:/soft/ftpup/LocalUser/public
创建 ww1和xx1用户并设置密码
建立相应的目录,并设置对应的权限。
1.3创建FTP站点
通过“控制面板 ---> 管理工具 ---> Internet信息服务(IIS)管理器 ---> Internet信息服务--->本地计算机---> FTP 站点”标签,右击“FTP 站点”--->新建--->FTP 站点,进入FTP站点建立向导:站点描述--->IP地址和端口设置--->隔离用户--->FTP站点主目录(D:/soft/ftpup ),直到向导结束。
右击刚建立的FTP站点,在“安全帐户”选项卡上选中“允许匿名用户连接”。至此,一个PORT模式的FTP站点架设完成。
可以关闭防火墙在客户端进行测试是否符合要求。
2将FTP站点设置成PASV模式
2.1启用直接编辑元数据库
打开 IIS Microsoft 管理控制台 (MMC):控制面板 ---> 管理工具---> Internet信息服务(IIS)管理器 ---> Internet信息服务--->本地计算机
右击本地计算机节点,选择属性,选择启用直接编辑元数据库复选框。
2.2 修改端口号 方法 1 通过 ADSUTIL 脚本配置 PassivePortRange
运行cmd.exe程序进入命令行模式,并输入以下命令:
C:/Inetpub/AdminScripts/adsutil.vbs set /MSFTPSVC/PassivePortRange "5500-5550"
这样就将FTP服务器上TCP 默认短暂端口范围限制在5500-5550范围内,如果同时连接数量较多,可适当进行调整。
用以下命令查看PassivePortRange:
C:/Inetpub/AdminScripts/adsutil.vbs get /MSFTPSVC/PassivePortRange 方法 2 通过修改配置文件 打开下面这个文件 : 1. C:/WINDOWS/system32/inetsrv/MetaBase.xml 搜索 MaxConnections 这个字段 在 MaxConnections 下面新加一行被动模式的配置信息,修改后的配置文件为 LogType="1" MSDOSDirOutput="TRUE" MaxClientsMessage=" " MaxConnections="100000" PassivePortRange="5500-5550"
3.windows 2003 中防火墙的设置
3.1打开FTP控制端口TCP 21(如果更改端口号,这里要做相应的更改)
在命令行输入:
NETSH FIREWALL ADD PORTOPENING TCP 21 FTPPort21
3.2打开PassivePortRange 5500-5550的TCP端口
建立以下批处理文件并运行(例如:ftpport.bat):
ECHO OPENING FIREWALL PORTS 5500-5550
FOR /L %%I IN (5500,1,5550) DO NETSH FIREWALL ADD PORTOPENING TCP %%I FTPPort%%I
iisreset /restart
ECHO FINISHED
Pause
至此,整个服务架设完成,可在启用防火墙的情况下进行测试。

3. 如何设置windows自带的ftp使用被动模式上传

主动式有利于服务器端管理 但是可能会被客户端防火墙拦截

被动式由于数据传输由客户端发起出所有不会被客户端防火墙拦截 但是不利于服务器管理

使用windows server搭建完毕 双击FTP防火墙

按: 测试发现关闭防火墙无效,填写被动式端口依然为灰色. 必须添加2条命令

4. 如何设置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客户端的管理有利,但对服务器端的管理不利。因为客户端要与服务器端建立两个连接,其中一个连到一个高位随机端口,而这个端口很有可能被服务器端的防火墙阻塞掉。

5. 使用被动ftp模式需要关掉吗

使用被动ftp模式不需要关掉。在被动方式FTP中,命令连接和数据连接都由客户端,这样就可以解决从服务器到客户端的数据端口的入方向连接被防火墙。

ftp的工作原理

FTP 采用 Internet 标准文件传输协议 FTP 的用户界面, 向用户提供了一组用来管理计算机之间文件传输的应用程序。FTP 是基于客户模型而设计的,在客户端与 FTP 服务器之间建立两个连接。开发任何基于 FTP 的客户端软件都必须遵循 FTP 的工作原理。

FTP 的独特的优势同时也是与其它客户服务器程序最大的不同点就在于它在两台通信的主机之间使用了两条 TCP 连接,一条是数据连接,用于数据传送;另一条是控制连接,用于传送控制信息命令和响应。

这种将命令和数据分开传送的思想大大提高了 FTP 的效率,而其它客户服务器应用程序一般只有一条 TCP 连接。图 1 给出了 FTP 的基本模型。客户有三个构件:用户接口、客户控制进程和客户数据传送进程。

6. 被动FTP模式是什么模式

在被动方式FTP中,命令连接和数据连接都由客户端,这样就可以解决从服务器到客户端的数据端口的入方向连接被防火墙过滤掉的问题。

当开启一个FTP连接时,客户端打开两个任意的非特权本地端口。第一个端口连接服务器的21端口,但与主动方式的FTP不同,客户端不会提交PORT命令并允许服务器来回连它的数据端口,而是提交PASV命令。

这样做的结果是服务器会开启一个任意的非特权端口,并发送PORT P命令给客户端。然后客户端发起从本地端口N+1到服务器的端口P的连接用来传送数据。

(6)ftp开启被动模式扩展阅读

FTP的传输有两种方式:ASCII、二进制。

1、ASCII传输方式

假定用户正在拷贝的文件包含的简单ASCII码文本,如果在远程机器上运行的不是UNIX,当文件传输时ftp通常会自动地调整文件的内容以便于把文件解释成另外那台计算机存储文本文件的格式。

但是常常有这样的情况,用户正在传输的文件包含的不是文本文件,它们可能是程序,数据库,字处理文件或者压缩文件。在拷贝任何非文本文件之前,用binary 命令告诉ftp逐字拷贝。

2、二进制传输模式

在二进制传输中,保存文件的位序,以便原始和拷贝的是逐位一一对应的。即使目的地机器上包含位序列的文件是没意义的。例如,macintosh以二进制方式传送可执行文件到Windows系统,在对方系统上,此文件不能执行。

如在ASCII方式下传输二进制文件,即使不需要也仍会转译。这会导致损坏数据。

7. FTP主动模式和被动模式的区别

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

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

8. win2008配置FTP服务器,出现227错误,如何开启FTP的被动模式

做了一个下划线,修改与2020年2月17号下午

发布文章以来,很多朋友找我问具体的配置,说实话,当初配置的迷迷糊糊的,也忘记当时到底有没有配置好。

无论如何,过去了,大家用心得方法吧。

大家不需要再自己手工配置了,2020年2月10号左右,我使用了免费的filezilla配置一下。

因为我是阿里云,所以,在配置的时候,还需要进入阿里云的安全规则里,开启21端口,和你所需要的端口。

服务器上,装filezilla的服务端。

电脑上,用filezilla的客户端。

阿里云的配置,跟网上的很多教程,有点不一样,所以,我贴出来,给大家看看。

https://www.cnblogs.com/leowork/p/setup_ftp_server.html

---------------------------------------------------------------------------------------

以下内容是以前的。

2017.08.23 14:17:28字数 657阅读 1,179

本文配置win2008 FTP服务器,基于以下几点。

1.win2008服务器

2.使用win2008自带的FTP功能

3.配置特定账户的FTP,不配置FTP隔离用户。

其他条件下,自行寻找其他文档。另注:相关操作,都在IIS7,或者IIS7.5管理器中进行。一点都不需要IIS6。网上有些教程,是忽悠我的。

本人配置FTP服务器遇到的错误

一.账号密码明明是对的,内网,外网都无法访问。这是权限问题。需要三件事,确定权限 。

1.在服务器管理中,新建用户,配置账号密码。这是你准备使用的FTP账号,密码

2.新建FTP目录,配置目录的权限,右键文件属性,安全,添加,高级搜索,立刻查找,找到刚建的FTP用户名,添加所有权限,应用。

3.新建FTP站点的时候,到了用户选项,选择基本,输入FTP账号密码,上面的匿名选项,可以忽略。

4.绑定IP的时候,绑定到指定IP,或者不填。

这四点保证了,FTP账号的访问权权限,可以进入外网和内网的测试。

二.内网能访问,外网访问的时候,出现227.这是服务器配置的遇到的防火墙问题。

网上建议在连接FTP的时候,选择主动模式。(具体操作是。如果是浏览器访问服务器,设置IE禁止被动访问,如果是FTP软件访问服务器,也选择主动模式。)

然而,这其实是服务器自身的配置问题。需要在服务器端解决。

1.在IIS7界面,选择FTP站点,进入FTP防火墙选项。

a.查看端口范围。如果是灰色0-0.那就到IIS最顶端的服务器站点配置里配置端口。

很多人建立FTP站点以后,在IIS管理界面。发现FTP端口范围是灰色的,无法修改。那是因为,你要从最上级的服务器级别的站点设置。我的设置是1025-2000.

b.配置防火墙外网IP,这里必须要填,填上服务器的外网IP就好了。

2.防火墙允许程序选项。 允许windows主服务程序的运行。(2B的微软,在2003,2008服务器里都默认禁止了win主服务。这里需要允许程序运行,增加一条就好了。win2008,是svchost.exe,  win2003 是inetsrv.exe)

3.添加入站规则。

a.开始添加入站规则。命名为FTP PASV端口(主要是好记,可以随便叫)。

b.属性设置里,端口配置,填上1025-2000,跟步骤1对应。

c.程序和服务选项,选择所有符合指定条件的程序。

d.程序和服务选项.服务--设置--仅应用于服务。

至此,设置完成。不需要重启服务器,只需要重启IIS。如何重启IIS,不需要从命令中重启,只需要在IIS服务器级别的那个网站选项上,右键。

也不需要重启FTP服务。真不行才重启FTP服务。net  stop ftpsvc ,net start ftp ftpsvc。

四.WIN2008的FTP服务器配置,以及FTP防火墙的配置至此完成。有不会的,联系我,QQ:909743105.

此文作为记录,以免自己忘记。

9. FTP主动模式和被动模式!

FTP(File Transfer Protocol,文件传输协议) 是 TCP/IP 协议组中的协议之一。FTP协议包括两个组成部分,其一为FTP服务器,其二为FTP客户端。其中FTP服务器用来存储文件,用户可以使用FTP客户端通过FTP协议访问位于FTP服务器上的资源。在开发网站的时候,通常利用FTP协议把网页或程序传到Web服务器上。此外,由于FTP传输效率非常高,在网络上传输大的文件时,一般也采用该协议。

默认情况下FTP协议使用TCP端口中的 20 和 21 这两个端口,其中20用于传输数据,21用于传输控制信息。但是,是否使用20作为传输数据的端口与FTP使用的传输模式有关,如果采用主动模式,那么数据传输端口就是20;如果采用被动模式,则具体最终使用哪个端口要服务器端和客户端协商决定。

FTP支持两种模式,它在工作运行时也主要是这两种模式,一种模式叫作Standard也被称为PORT方式和 主动方式 ,另一种模式叫作Passive也叫作PASV, 被动方式 。Standard模式FTP的客户端发出PORT命令到服务器,Passive模式FTP的客户端发送PASV命令到FTP Server中,从而保证文件相互传输正常。

我们使用华为的模拟器Ensp来做一个小实验。

FTP三次握手有两次,第一次的TCP三次握手是控制层的握手,第二次是数据层的TCP三次握手

(1)服务器打开端口 21,等待连接;

(2)客户端(100.1.12.1)发起控制连接的建立请求,服务器响应连接,控制连接建立,使用TCP 三次握手(第一次TCP三次握手);

随机端口的计算

可以看到PORT为 10,0,0,2,8,6

随机端口计算为: 8*256+6=2054

(3)客户端通过控制连接发送 PORT 命令(在应用层数据中带有自己的 ip 地址和临时端口),将客户端数据连接的临时端口号告诉服务器

(4)服务器的 20 号端口与客户端建立起数据连接,使用TCP 三次握手(第二次TCP三次握手);

点击登出后控制端口断开连接

FTP三次握手有两次,第一次的TCP三次握手是控制层的握手,第二次是数据层的TCP三次握手

(1)服务器打开端口 21,等待连接

(2)客户端发起控制连接的建立请求,服务器响应连接,控制连接建立,使用TCP 三次握手(第一次TCP三次握手);

(3)客户端通过控制连接发送命令字 PASV,告知服务器处于被动模式;

(4)服务器回应,将服务器数据连接的临时端口号(2060)告诉客户端;

(5)客户端与服务器的临时端口建立起数据连接,使用TCP 三次握手(第二次TCP三次握手);

热点内容
java返回this 发布:2025-10-20 08:28:16 浏览:842
制作脚本网站 发布:2025-10-20 08:17:34 浏览:1105
python中的init方法 发布:2025-10-20 08:17:33 浏览:812
图案密码什么意思 发布:2025-10-20 08:16:56 浏览:978
怎么清理微信视频缓存 发布:2025-10-20 08:12:37 浏览:868
c语言编译器怎么看执行过程 发布:2025-10-20 08:00:32 浏览:1217
邮箱如何填写发信服务器 发布:2025-10-20 07:45:27 浏览:440
shell脚本入门案例 发布:2025-10-20 07:44:45 浏览:320
怎么上传照片浏览上传 发布:2025-10-20 07:44:03 浏览:996
python股票数据获取 发布:2025-10-20 07:39:44 浏览:964