FTP协议分析(主动模式和被动模式)

 今天本来计划分析下suricata中协议识别和解析的代码的,准备先从ftp协议开始看,不过看了一会儿代码后,还是觉得有必要对ftp协议的细节先熟悉熟悉。

目录

1、FTP环境搭建工具

2、FTP协议介绍

3、FTP文件操作命令列表

4、FTP请求码列表

5、FTP响应码列表

6、FTP两种工作模式

6.1 FTP主动模式流程

6.1.1 IPv4主动模式报文交互流程

6.1.2 IPv6主动模式报文交互流程

6.2 FTP被动模式流程

6.2.1 IPv4被动模式报文交互流程

6.2.2 IPv6被动模式报文交互流程


1、FTP环境搭建工具

1)FTP客户端:

  • Windows系统:FlashFXP 或者 浏览器 或者 文件管理器

  • Linux系统:ftp命令

2)FTP服务器:

  • Windows系统:  FileZilla Server 或者 3CDaemon(不支持IPv6)或者 自带的IIS

  • Linux系统:vsftpd

本篇文章,我的FTP客户端和服务器都是在windows系统上。

2、FTP协议介绍

 FTP协议(File Transfer Protocol,文件传输协议)是一种用于计算机之间传输文件的标准网络协议。它允许用户在不同的计算机之间进行文件传输和共享。通过FTP协议,用户可以通过网络连接到远程计算机上的FTP服务器,并进行文件上传、下载和管理。

FTP协议的功能非常简单,它不仅可以支持不同平台之间的文件传输,而且还支持多用户和多任务处理。FTP客户端和FTP服务器分别作为不同的实体进行交互。FTP客户端掌握了可以在一个远程服务器上实现的文件系统,而FTP服务器则允许用户上传、下载、删除和修改文件。FTP协议主要有两种模式:主动模式和被动模式。主动模式中,客户端向服务器发送命令,并侦听服务器发送的数据连接。被动模式中,服务器向客户端发送端口号,并侦听客户端连接的数据。FTP协议默认使用TCP协议传输,其控制连接是通过TCP的21端口,数据连接则是通过TCP的20端口。

需要注意的是,FTP协议并没有对数据进行加密处理,因此在数据传输过程中存在安全问题。有一些扩展了FTP协议的协议(比如Secure File Transfer Protocol、SSH File Transfer Protocol等),则包含了加密处理来保证数据的安全传输。

3、FTP文件操作命令列表

序号

命令

 说明

1

 ls

 显示服务器上的目录

2

 get

从服务器下载指定文件到客户端

3

 put

 从客户端传送指定文件到服务器

4

 open

 连接ftp服务器

5

 quit

 断开连接并退出ftp服务器

6

 cd directory

 改变服务器的当前目录为directory

7

 lcd directory

 改变本地的当前目录为directory

8

 bye

 退出ftp命令状态

9

 ascii

 设置文件传输方式为ASCII模式

10

 binary

 设置文件传输方式为二进制模式

11

 !

 执行本地主机命令

12

 cd

 切换远端ftp服务器上的目录

13

 cdup

 上一层目录

14

 close

 在不结束ftp进程的情况下,关闭与ftp服务器的连接

15

 delete

 删除远端ftp服务器上的文件

16

 get

 下载

17

 hash

 显示#表示下载进度

18

 mdelete

 删除文件,模糊匹配

19

 mget

 下载文件,模糊匹配

20

 mput

 上传文件,模糊匹配

21

&nb

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值