ftp的主动模式active mode和被动模式 passive mode的配置和区别

摘要:
ftp的主动模式和被动模式之间的配置和区别。默认模式为被动模式。Ftp A3.3.3.3在活动模式下连接到Ftp服务器时,-A2>必须添加;ftpclient通过第23个数据包的端口21告诉服务器数据传输联系端口43187(大于1024的任何端口)。
ftp的主动模式active mode和被动模式 passive mode的配置和区别
2017年05月08日 17:47:16
阅读数:21768

本文主要记录的是在linux上的区别,弄了一整天才整明白区别快哭了

ftp模式分为主动模式(active mode)和被动模式(passive mode),ftp是tcp连接,所以要进行三次握手

1. active和passive模式的配置:

在命令行输入vim /etc/vsftpd/vsftpd.conf:

1> active mode:

pasv_enable=NO     (passive模式关闭)
pasv_min_port=3000
pasv_max_port=4000
port_enable=YES    (active模式开启)
connect_from_port_20=YES  (即默认情况下,FTP PORT主动模式进行数据传输时使用20端口(ftp-data)。YES使用,NO不使用。)

2>passive mode:

pasv_enable=YES
pasv_min_port=3000  
pasv_max_port=4000

设定在PASV模式下,建立数据传输所可以使用port范围的下界和上界,0 表示任意(1024 – 65535端口)。默认值为0。把端口范围设在比较高的一段范围内,比如3000-4000。

在linux上,如果不配置pasv_enable=NO,默认是passive模式。

2.  service vsftpd restart 重启ftp服务;

3.  通过命令行连接ftp server:

1> active mode:   ftp -A 3.3.3.3   

active模式连接ftp server时一定要加-A

2> passive mode: 可以直接使用  ftp 3.3.3.3   也可以使用 ftp -p 3.3.3.3

4.   ftp client: 192.168.168.169   ftp server: 3.3.3.3

1> active 模式:

     在active模式下,如下图抓的包中,在命令连接部分(ftp类型的包),client端使用的端口是36439,这个端口是大于1024的任意端口,ftp server端用的端口是21:

ftp的主动模式active mode和被动模式 passive mode的配置和区别第2张

如下图,在active模式下,要传输数据时,ftp client通过第23个包通过21号端口告诉server数据传输联系端口43187(大于1024的任意端口),并进行listen,server端用端口20主动和client端43187建立数据传输通道,并传输数据(第30,32,34个包)。这里是server知道了client端的数据通道监听端口后,主动建立了数据传输通道,所以是主动模式。

ftp的主动模式active mode和被动模式 passive mode的配置和区别第3张

在active模式下,数据传输部分(FTP-DATA类型的包),ftp-server端用的端口是20,默认情况下,FTP PORT主动模式进行数据传输时使用20端口,ftp-client端用的是43187端口,是上一步client发给server的数据传输监听端口。

ftp的主动模式active mode和被动模式 passive mode的配置和区别第4张

总结:active 模式

ftp的主动模式active mode和被动模式 passive mode的配置和区别第5张

2> passive 模式:

     在passive 模式下,如下图所抓的包中,在命令部分(ftp类型的包),client端使用的端口是36434,这个端口是大于1024的任意端口,ftp server用的端口是21.

ftp的主动模式active mode和被动模式 passive mode的配置和区别第6张

在passive模式下,如下图的第28个包,是由client端发起PASV(passive mode)的数据传输通道连接请求,所以为被动模式。ftp的主动模式active mode和被动模式 passive mode的配置和区别第7张

而在passive模式的数据传输部分(FTP-DATA类型的包),ftp-server端用的端口是3542,这个端口是在/etc/vsftpd/vsftpd.conf文件中passive模式下设置的端口范围(3000-4000,可以自己设置)中任意选的一个端口,ftp-client端用的是53001端口,是大于1024的任意一个端口。

ftp的主动模式active mode和被动模式 passive mode的配置和区别第8张

总结:

passive模式

ftp的主动模式active mode和被动模式 passive mode的配置和区别第9张

免责声明:文章转载自《ftp的主动模式active mode和被动模式 passive mode的配置和区别》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇C++开发必看 四种强制类型转换的总结 [转]jsp页面实现增删修改和查询下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

linux查看端口占用

今天发现服务器上mysql 3306端口起不来,老提示端口已经被占用。 使用命令: ps -aux | grep mysql 发现并没有3306端口的mysql进程。 使用命令:netstat –anp 查看所有的进程和端口使用情况。发现下面的进程列表,其中最后一栏是PID/Program name  假设我们发现3306端口被PID为1234的tomc...

netstat命令

netstat命令各个参数说明如下:   -t : 指明显示TCP端口   -u : 指明显示UDP端口   -l : 仅显示监听套接字(所谓套接字就是使应用程序能够读写与收发通讯协议(protocol)与资料的程序)   -p : 显示进程标识符和程序名称,每一个套接字/端口都属于一个程序。   -n : 不进行DNS轮询,显示IP(可以加速操作) 即可...

查看监听端口号,以及关闭进程

查看本机的监听端口号netstat -an 回车 此命令可以查看本机已经启动的监听端口 -------------------------------------------------------------------------------------------------- 在windows命令行窗口下执行:   C:>netstat -a...

前后端分离的变化,以及前后端对接需要关注的点

1. 前言 随着互联网的高速发展,前端页面的展示、交互体验越来越灵活,响应体验也要求越来越高,后端服务的高并发、高可用、高性能、高扩展等特性的要求也愈加苛刻,从而导致前后端研发各自专注于自己擅长的领域深耕细作。 然而这带来了新的问题: 前后端的对接界面双方却关注甚少,没有任何接口约定规范情况下各自撸起袖子就是干,导致我们在产品项目开发过程中,前后端的接口联...

Eclipse中启动Tomcat服务器产生错误的原因及解决方案

弄了一个下午才弄好,就是出现这样的错误,纠结了一个下午,现在拿出来分享一下!希望对各位朋友有用!Eclipse中启动Tomcat服务器产生错误通常有以下几种: 1.严重: Error initializing endpoint java.net.BindException: Address already in use:...

Vim 快捷键整理

一、移动光标 1、左移h、右移l、下移j、上移k 2、向下翻页ctrl + f,向上翻页ctrl + b 3、向下翻半页ctrl + d,向上翻半页ctrl + u 4、移动到行尾$,移动到行首0(数字),移动到行首第一个字符处^ 5、移动光标到下一个句子 ),移动光标到上一个句子( 6、移动到段首{,移动到段尾} 7、移动到下一个词w,移动到上一个词b...