zoukankan      html  css  js  c++  java
  • ftp的主动模式active mode和被动模式 passive mode的配置和区别

    连接地址:https://blog.csdn.net/zhangyuan12805/article/details/71425385

    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:

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

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

    总结:active 模式

    2> passive 模式:

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

    在passive模式下,如下图的第28个包,是由client端发起PASV(passive mode)的数据传输通道连接请求,所以为被动模式。

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

    总结:

    passive模式

  • 相关阅读:
    WeihanLi.Npoi 1.10.0 更新日志
    消除代码中的坏味道,编写高质量代码
    代码重构之法——方法重构分析
    使用 C# 捕获进程输出
    .net core 中的经典设计模式的应用
    JDBC 规范中文版 4.2 -第一章 简介
    基础回顾-线程的几种状态
    一文读懂BeanFactory和FactoryBean区别
    阿里云云计算ACA 第三章 阿里云存储服务
    阿里云云计算ACA 第二章 阿里云弹性计算
  • 原文地址:https://www.cnblogs.com/js1314/p/13952609.html
Copyright © 2011-2022 走看看