Ⅰ 如何设置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(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三次握手);
Ⅲ Linux里面FTP主被动模式区别是什么
题主你好,
首先要说的是FTP的通信是由两部分组成的: 发送命令 + 传输数据.
换种说法就是: 发送命令 与 传输数据 是走的两条道(不同的tcp连接).
发送命令 这条道方向是固定的, 总是由客户端向服务端发起请求把这条道铺起来.
而 传输数据 这条道方向就不是固定的了, 可能与 发送命令 一样, 也是由客户端向服务端发起请求, 还可能是反向的,即由服务端向客户端发起请求来铺起传输数据的这条道.
而题主的问题里所说的FTP主动被模式其实指的就是 传输数据 这条道的铺设到底是 谁向谁发起请求? 这里的主被动是根据 服务端 来说的, 即 服务端主动向客户端发起的就是所谓的主动模式, 反之, 客户端向服务端发起的(服务端被连接),即是被动模式
最后再说下区别: 一开始的ftp只有主动模式,即服务端主动向客户端发请求建立连接,然后利用建立的这个连接进行数据传输. 但后来客户端这边的防火墙很多时候为了安全考虑只相信自己向外发送的请求, 不相信外面连进来的请求,会把从外向内的请求给截断,说白了就是数据传输这条道没建成, 数据肯定就传输不了的. 所以后来又开发了被动模式,让客户端主动向服务端发请求建立连接, 这样防火墙一看是从自己家主动发出去的,就不会拦截,这样路铺好了, 数据自然能成功传输了.
写在最后: 希望可以帮到题主, 欢迎追问.
Ⅳ 使用被动ftp模式需要关掉吗
使用被动ftp模式不需要关掉。在被动方式FTP中,命令连接和数据连接都由客户端,这样就可以解决从服务器到客户端的数据端口的入方向连接被防火墙。
ftp的工作原理
FTP 采用 Internet 标准文件传输协议 FTP 的用户界面, 向用户提供了一组用来管理计算机之间文件传输的应用程序。FTP 是基于客户模型而设计的,在客户端与 FTP 服务器之间建立两个连接。开发任何基于 FTP 的客户端软件都必须遵循 FTP 的工作原理。
FTP 的独特的优势同时也是与其它客户服务器程序最大的不同点就在于它在两台通信的主机之间使用了两条 TCP 连接,一条是数据连接,用于数据传送;另一条是控制连接,用于传送控制信息命令和响应。
这种将命令和数据分开传送的思想大大提高了 FTP 的效率,而其它客户服务器应用程序一般只有一条 TCP 连接。图 1 给出了 FTP 的基本模型。客户有三个构件:用户接口、客户控制进程和客户数据传送进程。
Ⅳ 大白话解释一下“被动FTP模式”是什么意思
为了解决服务器发起到客户的连接的问题,另一种不同的ftp连接模式出现了。这就是所谓
的被动模式,或者叫做pasv,当客户端通知服务器它处于被动模式时才启用。
Ⅵ ftp的两种传输模式简述
当FTP工作在主动模式下时,客户端首先发起连接请求,与服务器的21号端口建立控制连接,连接成功后,客户端方借此发送命令。若客户端需要传输数据,客户端会通过已建立的连接通道向服务器发送信息,告知服务器客户端中接收数据的端口,之后服务器则通过20号端口连接到客户端指定的端口并传送数据,在主动模式下,控制连接的发起方是FTP客户机,而数据连接的发起方为FTP服务器。
当FTP工作在被动模式下时,客户端首先发起连接请求,与服务器的21号端口建立控制连接。之后仍由客户端发送信息,请求与服务器建立数据连接,服务器接收到此请求后,会随机打开一个高端端口(端口号一般大于1024),并将该端口号告知客户端,此时客户端与服务器的该端口再建立数据连接,通过该通道进行数据传递。在被动模式下,控制连接和数据连接的发起方都为客户机。关于FTP的知识,可以到黑马程序员学习,这些知识免费学哦!