ftp为什么上传失败:,第1张

FlashFXP 20中文版:选项--参数选择--代理/防火墙/标识--将“使用被动模式”前复选框中的打勾去掉

2、 Cute FTP 35英文版:FTP—Settings—Options—Firewall,将“PASV mode”前复选框中的打勾去掉。

3、 Cute FTP35中文版:FTP—设置—选项—防火墙,“PASV方式(A)”前复选框中的打勾去掉。

4、 Leap FTP272:Sites—Site Manager—Advanced,将“Use PASV mode”前复选框中的打勾去掉。

Cute FTP 编辑—》设置->连接->防火墙->去掉pasv的勾

FlashFXP 选项——》参数选择-》链接-》代理 去掉使用被动模式前的勾

FTP是File Transfer Protocol(文件传输协议)的缩写,用来在两台计算机之间互相传送文件。FTP协议有两种工作方式:PORT方式和PASV方式,中文意思为主动式和被动式。

PORT(主动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。当需要传送数据时,

服务器从20端口向客户端的空闲端口发送连接请求,建立一条数据链路来传送数据。

PASV(被动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。当需要传送数据时,客户端向服务器的空闲端口发送连接请求,建立一条数据链路来传送数据。

因为PORT方式在传送数据时,由服务器主动连接客户端,所以,如果客户端在防火墙或NAT网关后面,用PORT方式将无法与Internet上的FTP服务器传送文件。这种情况需要使用PASV方式。几乎所有的ftp客户端软件都支持这两种方式。特殊的典型例子是ie,ie默认是用PORT方式的。如果要在ie里启用PASV方式,请打开ie,在菜单里选择:工具 -> Internet选项 -> 高级,在“使用被动ftp”前面打上钩(需要IE60以上才支持)。”

请采纳。

FTP基础知识

您是否正准备搭建自己的FTP网站?您知道FTP协议的工作机制吗?您知道什么是PORT方式?什么是PASV方式吗?如果您不知道,或没有完全掌握,请您坐下来,花一点点时间,细心读完这篇文章。所谓磨刀不误砍柴功,掌握这些基础知识,会令您事半功倍。否则,很可能折腾几天,最后一事无成。

FTP基础知识

FTP是File Transfer Protocol(文件传输协议)的缩写,用来在两台计算机之间互相传送文件。相比于HTTP,FTP协议要复杂得多。复杂的原因,是因为FTP协议要用到两个TCP连接,一个是命令链路,用来在FTP客户端与服务器之间传递命令;另一个是数据链路,用来上传或下载数据。

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,用内网动态域名标准版cmnatproy

这种情况下,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以上的高端端口。

三、连接用内网标准版cmnatproy搭建的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”(需要IE60以上才支持)。

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客户端工具。首先,IE60以下的版本不支持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客户端

101001

端口 <==> ISP NAT网关

6114412

端口 <==> TH服务器

端口21 <==> TH客户端 <==> 用户FTP服务器

101001

端口21

FTP客户端通过ISP的NAT网关、科迈TrueHost服务器、TrueHost客户端,连接用户本机的FTP服务器的21端口。

当需要下载数据的时候,FTP客户端通过这条命令链路,向FTP服务器发送PORT命令。假设命令为:

PORT 10,10,0,1,30,4 (即IP=101001 端口=30256+4=7684)

当命令通过ISP的NAT网关的时候,NAT网关判断目的端口是21,并且是PORT命令,于是,修改命令里的IP和端口,替换为自己的IP和端口,比如:

PORT 61,144,1,2,50,6 (即IP=6114412 端口=50256+6=12806)

用户的FTP服务器最终收到的是上面这个PORT命令。于是,FTP服务器向这个IP和端口发送连接请求,建立数据链路。

用户FTP服务器

101001

端口20 <==> ISP NAT网关

6114412

端口12806 <==> FTP客户端

101001

端口7684

但是,因为NAT网关的公网IP只能接收外来的连接请求。就是说,6114412:12806只能接收其他公网IP的连接请求,对于从NAT内部(101001: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服务器

101001

端口20 <==> FTP客户端

101001

端口7684

这种情况下命令链路就可以建立起来了。而且是等于本机连接本机,速度飞快。

综上所述,内网用户无法用PORT方式通过21端口访问自己的TrueHost FTP服务器。如果FTP端口不是21,则可以访问,而且实际上是本机连接本机。

上面的文字,仅仅是为了说明一些原理,不影响实际使用。如果本机访问本机,还要通过FTP的话,就有画蛇添足之嫌了。

是指:uplink口,上联至上层交换机的端口。

3750的20端口设置成上联口与外网互连,并且将该20端口模式设置为路由模式。

路由模式的设置命令为:

switch(config)#intf0/20

switch(config-if)#noswitchport

开启路由的命令为:switch(config)#iprouting

扩展资料:

常用端口及端口号:

1、HTTP协议代理服务器常用端口号:80/8080/3128/8081/9080

2、SOCKS代理协议服务器常用端口号:1080

3、FTP(文件传输)协议代理服务器常用端口号:21

4、Telnet(远程登录)协议代理服务器常用端口:23

5、HTTP服务器,默认的端口号为80/tcp(木马Executor开放此端口);

6、HTTPS(securelytransferringwebpages)服务器,默认的端口号为443/tcp443/udp;

7、Telnet(不安全的文本传送),默认端口号为23/tcp(木马TinyTelnetServer所开放的端口);

8、FTP,默认的端口号为21/tcp(木马DolyTrojan、Fore、InvisibleFTP、WebEx、WinCrash和BladeRunner所开放的端口);

9、TFTP(TrivialFileTransferProtocol),默认的端口号为69/udp;

10、SSH(安全登录)、SCP(文件传输)、端口重定向,默认的端口号为22/tcp;

11、SMTPSimpleMailTransferProtocol(E-mail),默认的端口号为25/tcp(木马Antigen、EmailPasswordSender、HaebuCoceda、ShtrilitzStealth、WinPC、WinSpy都开放这个端口);

-上联口

分类: 电脑/网络 >> 操作系统/系统故障

问题描述:

FTP 使用的是什么协议

我的服务器装了Serv-U以后,我把其它的端口都封了,只留TCP的21

但FTP无法连接,如果把封端口的策略取消,就一切正常!~

解析:

FTP是仅基于TCP的服务,不支持UDP。 与众不同的是FTP使用2个端口,一个数据端口和一个命令端口(也可叫做控制端口)。通常来说这两个端口是21-命令端口和20-数据端口。但当我们发现根据(FTP工作)方式的不同数据端口并不总是20时,混乱产生了。

主动FTP

主动方式的FTP是这样的:客户端从一个任意的非特权端口N(N>;1023)连接到FTP服务器的命令端口,也就是21端口。然后客户端开始监听端口N+1,并发送FTP命令“port N+1”到FTP服务器。接着服务器会从它自己的数据端口(20)连接到客户端指定的数据端口(N+1)。

针对FTP服务器前面的防火墙来说,必须允许以下通讯才能支持主动方式FTP:

任何端口到FTP服务器的21端口 (客户端初始化的连接 S<-C)

FTP服务器的21端口到大于1023的端口(服务器响应客户端的控制端口 S->C)

FTP服务器的20端口到大于1023的端口(服务器端初始化数据连接到客户端的数据端口 S->C)

大于1023端口到FTP服务器的20端口(客户端发送ACK响应到服务器的数据端口 S<-C)

被动FTP

为了解决服务器发起到客户的连接的问题,人们开发了一种不同的FTP连接方式。这就是所谓的被动方式,或者叫做PASV,当客户端通知服务器它处于被动模式时才启用。

在被动方式FTP中,命令连接和数据连接都由客户端,这样就可以解决从服务器到客户端的数据端口的入方向连接被防火墙过滤掉的问题。当开启一个FTP连接时,客户端打开两个任意的非特权本地端口(N >; 1023和N+1)。第一个端口连接服务器的21端口,但与主动方式的FTP不同,客户端不会提交PORT命令并允许服务器来回连它的数据端口,而是提交PASV命令。这样做的结果是服务器会开启一个任意的非特权端口(P >; 1023),并发送PORT P命令给客户端。然后客户端发起从本地端口N+1到服务器的端口P的连接用来传送数据。

对于服务器端的防火墙来说,必须允许下面的通讯才能支持被动方式的FTP:

从任何端口到服务器的21端口 (客户端初始化的连接 S<-C)

服务器的21端口到任何大于1023的端口 (服务器响应到客户端的控制端口的连接 S->C)

从任何端口到服务器的大于1023端口 (入;客户端初始化数据连接到服务器指定的任意端口 S<-C)

服务器的大于1023端口到远程的大于1023的端口(出;服务器发送ACK响应和数据到客户端的数据端口 S->C)

端口80

http端口

用于网页浏览。木马executor开放此端口。

端口110

服务sun公司的rpc服务所有端口

用于文件服务器

端口135

主要用于使用rpc(remote

procedure

call,远程过程调用)协议并提供dcom(分布式组件对象模型)服务

通过rpc可以保证在一台计算机上运行的程序可以顺利地执行远程计算机上的代码;使用dcom可以通过网络直接进行通信,

能够跨包括http协议在内的多种网络传输。

还有些dos攻击直接针对这个端口。

端口139

通过这个端口进入的连接试图获得netbios/smb服务。网上邻居发现协议

这个协议被用于windows文件和打印机共享和samba。

端口443

服务https

网页浏览端口,能提供加密和通过安全端口传输的另一种http

端口445

此端口可以在局域网中轻松访问各种共享文件夹或共享打印机

端口995

好像是用于收邮件用的端口

端口3128

这是本地计算机打开的一个随即端口

这要根据你运行的软件来识别

FTP使用传输层的TCP协议。

TCP旨在适应支持多网络应用的分层协议层次结构。 连接到不同但互连的计算机通信网络的主计算机中的成对进程之间依靠TCP提供可靠的通信服务。

TCP假设它可以从较低级别的协议获得简单的,可能不可靠的数据报服务。 原则上,TCP应该能够在从硬线连接到分组交换或电路交换网络的各种通信系统之上操作。

扩展资料:

TCP连接每一方的接收缓冲空间大小都固定,接收端只允许另一端发送接收端缓冲区所能接纳的数据,TCP在滑动窗口的基础上提供流量控制,防止较快主机致使较慢主机的缓冲区溢出。

作为IP数据报来传输的TCP分片到达时可能会失序,TCP将对收到的数据进行重新排序,将收到的数据以正确的顺序交给应用层。

TCP将保持它首部和数据的检验和,这是一个端到端的检验和,目的是检测数据在传输过程中的任何变化。如果收到分片的检验和有差错,TCP将丢弃这个分片,并不确认收到此报文段导致对端超时并重发。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » ftp为什么上传失败:

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情