网络协议与攻击模拟-19-FTP协议

news2024/12/26 12:41:37

FTP 协议

1、了解 FTP 协议
2、使用在 Windows 操作系统上使用 serv - U 软件搭建 FTP 服务器
3、分析 FTP 流量

一、 FTP 协议

1、概念

FTP (文件传输协议),由两部分组成:客户端/服务器 C / S 架构,应用场景:企业内部存放公司文件,开发网站时,利用 FTP 协议将网页或程序传到网站服务器,网络中传输一些大文件也使用该协议

FTP :基于传输层 TCP 的,默认端口号(20号端口一般用于传输数据,21号端口用于传输控制信息),但是,是否使用20号端口作为传输数据端口和 FTP 的传输模式有关系

如果采用的主动模式:传输数据使用20号端口

如果采用的被动模式:传输数据使用的端口需要服务器和客户机协商决定

主动模式( port 方式)

建立连接使用21号端口,客户端通过此通道向服务器发送 port 命令,服务器从20号端口主动向客户端发起连接

被动模式( pasv ( passive )方式)

建立连接使用21号端口,客户端向服务器发送 pasv 命令,服务器收到会随机打开一个高端端口(大于1024),服务器在指定范围内的某个端口被动等待客户机连接

在这里插入图片描述

在这里插入图片描述

传输文件时的传输模式

文本模式: ASCII 模式,以文本序列传输

二进制模式: binary 模式,(视频、图片、应用程序等等)

二、 FTP 的客户端和服务端

1、服务端程序

· serv - U
. filezilla server (开源)
● vsftpd ( Linux 平台下)
. Windows server IIS ( FTP 发布服务)

2、客户端程序

命令行: ftp 192.168.10.10

资源管理器:ftp://192.168.10.10

浏览器:ftp://192.168.10.10

第三方工具
flashFXP
filezilla client
cuteftp
xftp

三、部署 FTP 服务器

1、针对于 FTP 的用户

匿名用户

anonymous 固定名称(某些 FTP 的服务端软件也可以使用 ftp 用户名作为匿名用户)

普通用户

2、针对于 SER - U 默认使用的被动模式

3、针对于FTP协议的状态码

1xx 肯定的初步答复。

110
重新启动标记答复。

120
服务已就绪,在nnn分钟后开始。

125
数据连接已打开,正在开始传输。

150 文件状态正常,准备打开数据连接。

2xx 肯定的完成答复。

200
命令确定。

202
未执行命令,站点上的命令过多。

211
系统状态,或系统帮助答复。

212
目录状态。

213
文件状态。

214
帮助消息。

215
NAME 系统类型,其中,NAME是Assigned Numbers文档中所列的正式系统名称。

220
服务就绪,可以执行新用户的请求。

221
服务关闭控制连接。如果适当,请注销。

225
数据连接打开,没有进行中的传输。

226
关闭数据连接。请求的文件操作已成功(例如,传输文件或放弃文件)。

227
进入被动模式(h1,h2,h3,h4,p1,p2)。

230
用户已登录,继续进行。

250
请求的文件操作正确,已完成。

257 已创建“PATHNAME”。

3xx 肯定的中间答复。

331
用户名正确,需要密码。

332
需要登录帐户。

350 请求的文件操作正在等待进一步的信息。

4xx 瞬态否定的完成答复

421
服务不可用,正在关闭控制连接。如果服务确定它必须关闭,将向任何命令发送这一应答。

425
无法打开数据连接。

426
Connection closed;transfer aborted.

450
未执行请求的文件操作。文件不可用(例如,文件繁忙)。

451
请求的操作异常终止:正在处理本地错误。

452 未执行请求的操作。系统存储空间不够。

5xx 永久性否定的完成答复

500
语法错误,命令无法识别。这可能包括诸如命令行太长之类的错误。

501
在参数中有语法错误。

502
未执行命令。

503
错误的命令序列。

504
未执行该参数的命令。

530
未登录。

532
存储文件需要帐户。

550
未执行请求的操作。文件不可用(例如,未找到文件,没有访问权限)。

551
请求的操作异常终止:未知的页面类型。

552
请求的文件操作异常终止:超出存储分配(对于当前目录或数据集)。

553 未执行请求的操作。不允许的文件名。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/754522.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Uniapp 版本更新

文章目录 前言Uniapp更新确定接口是否能够使用基本代码封装更新软件区别 前言 软件发布之后更新是经常出现的需求。我们希望软件能够自动连网更新软件,而不是重新去手动安装一个apk安装包。不需要更新的软件只有两个,一个是微信小程序,另一个…

C++浅谈const

在学C的时候,必不可少的是const,他或许在C语言中是可有可无的,但是在C中绝对不是,我们在学习C语言的时候,我们知道的是,经常有人说加const是为了保证“安全”,那么,所谓的“安全”是…

MFC第十六天 CFileDialog、CEdit简介、(线程)进程的启动,以及Notepad的开发(托盘技术-->菜单功能)

文章目录 CCommonDialogCFileDialogCEdit托盘技术进程的启动附录1:启动线程方式附录2:MFC对话框的退出过程 CCommonDialog 通用对话框 CCommonDialog 这些对话框类封装 Windows 公共对话框。 它们提供了易于使用的复杂对话框实现。 CFileDialog 提供用于打开或保存文件的标准对…

使用Git上传大文件模型(超过100MB)教程

目录 modelscope官方教程 服务器拒绝的解决方案 检查.gitattributes文件 modelscope官方教程 我们

Amazon 上的数字孪生:使用 L3 预测性数字孪生来预测“行为”

在上一篇博文中,我们讨论了数字孪生的定义和框架,这与我们的客户在其应用中使用数字孪生的方式一致。我们将数字孪生定义为“单个物理系统的动态数字表示,它通过数据进行动态更新以模仿物理系统的真实结构、状态和行为,从而加快获…

Vue3+ts;枚举(enum);Partial全部可选/Pick选一部分/配置 svg 图标/unplugin-vue-components组件自动按需加载

项目的创建 使用 create-vue 脚手架创建项目。 1.执行创建命令 pnpm create vue # or npm init vuelatest # or yarn create vue2.选择项目依赖内容。 ✔ Project name: … //项目名 ✔ Add TypeScript? … No / Yes ✔ Add JSX Support? … No / Yes ✔ Add Vue Router …

macOS 开发 - 纯代码生成 Window

文章目录 1、创建项目删除项目自带 window创建 BaseWindowController 继承自 NSWindowController子 WC 继承 BaseWC个人更喜欢纯代码:控制力、方便复制,不用卡卡的打开 xib 这里不使用各种项目自带的 storyboard/xib,使用纯代码创建 window(controller) 本示例代码将创建如下…

记录一下Mybatis中的if标签使用时遇到的问题

记录一下Mybatis中的if标签使用时遇到的问题 前言一、if标签遇到的问题二、if标签中""和的问题字符串等于条件的两种写法&#xff1a; 三 、总结 前言 今天在项目中进行查询时使用了if标签&#xff0c;遇到了问题&#xff1a; 开始时拉过代码来的时候是这样的 <…

Java关键字interface(接口)

文章目录 接口的理解接口的声明接口的成员说明接口的使用规则类实现接口&#xff08;implements&#xff09; 接口的多实现接口的多继承(extends)接口与实现类对象构成多态引用使用接口的静态成员使用接口的非静态方法JDK8中相关冲突问题总结小测试接口与抽象类之间的对比练习 …

不允许你不知道的 MySQL 优化实战(二)

文章目录 11、使用联合索引时&#xff0c;注意索引列的顺序&#xff0c;一般遵循最左匹配原则。12、对查询进行优化&#xff0c;应考虑在where及order by涉及的列上建立索引&#xff0c;尽量避免全表扫描。13、如果插入数据过多&#xff0c;考虑批量插入。14、在适当的时候&…

[QT编程系列-9]:C++图形用户界面编程,QT框架快速入门培训 - 3- QT窗体设计 - 自动布局

目录 3. QT窗体设计 3.7 自动布局 3.7.1 自动布局 3.7.2 在主窗口中自动布局 3.7.3 在自动布局容器中自动布局 3.7.4 在widget中自动布局 3.7.5 自动布局工件 3. QT窗体设计 3.7 自动布局 3.7.1 自动布局 在QT中&#xff0c;自动布局是一种灵活而强大的方式来管理和排…

【ArcGIS Pro二次开发】(47):要素类追加至空库(批量)

本工具主要是针对国空数据入库而做的。 如果你手头已经整理了一部分要素类数据&#xff0c;但是数据格式&#xff0c;字段值可能并没有完全按照规范设置好&#xff0c;需要将这些数据按规范批量和库&#xff0c;就可以尝试用这个工具。 准备数据&#xff1a;标准空库、你已做…

Vue源码分析拓展 - Vue 模板编译渲染函数原理分析

目录 Vue 模板编译渲染函数 编译 Vue 模板编译渲染函数原理分析.html compiletoFunctions.html compileToFunctions.js vue.2.5.1.源码学习.js 一张AI生成图~ Vue 模板编译渲染函数 new Vue():初始化 $mount:挂载 compile():编译 parse:解析 optimize&#xff1a;静态节…

身份证读卡器安卓SDK在安卓12版本targetSdkVersion=32报错解决办法

之前的东信智能的EST-100身份证读卡器安卓SDK版本V1.0.40在安卓12版本&#xff0c;targetSdkVersion32的时候会出现以下错误&#xff1a; Targeting S (version 31 and above) requires that one of FLAG_IMMUTABLE or FLAG_MUTABLE be specified when creating a PendingInten…

Nginx 解决漏洞扫描 弱CORS策略

主要在nginx配置允许通过的地址 如&#xff1a; if ($http_host !~* 192.168.0.1|127.0.0.1|localhost) { # 允许的ipreturn 403 ; }add_header Access-Control-Allow-Origin $http_origin; #跨域请求

高压放大器到底有什么作用

高压放大器是一种重要的电子元器件&#xff0c;其作用是将信号放大到更高的电压水平&#xff0c;以便供给需要高电压的负载使用。高压放大器被广泛应用于通讯设备、医疗仪器、仿真模拟、气体激光、光学器件等领域。下面安泰电子将详细介绍高压放大器的作用以及其在各领域中的应…

Win11 设置FTP服务详细教程

起因&#xff1a; 因测试需要&#xff0c;本机建立FTP服务测试使用&#xff0c;此文章用于记录使用&#xff01; 操作步骤&#xff1a; 1、配置FTP功能 ①、"winR" > 在运行窗口输入"control" 回车&#xff1b; ②、打开"控制面板" > 点击…

图文讲解Redis延时双删原因及必要性

目录 一、前言 二、常见更新策略 2.1 先删缓存&#xff0c;再更新数据库 2.2 先更新数据库&#xff0c;再删除缓存 2.3 普通双删 2.4 延迟双删 三、建议 一、前言 我们在实际项目中经常会使用到Redis缓存用来缓解数据库压力&#xff0c;但是当更新数据库时&#xff0c;…

今天实习第三天,vue(cli部分)

01.创建第一个vue-cli。这里用的是node.js。早上的时候&#xff0c;就需要把node.js安装上去 02.node.js安装 第一步.去官网下载node.js https://nodejs.org/en 第二步.运行官网下载的node.js的msi文件&#xff08;记住所有的node.js文件的安装包都是msi文件的形式&#xff0…

算法笔记\python 笔记: 相似性度量

1 欧氏距离 1.1 python实现&#xff1a; from scipy.spatial import distance distance.euclidean([1,2],[2,1]) #1.4142135623730951 1.2 标准化欧氏距离 先将数据标准化 &#xff08;减去的均值两两抵消&#xff09; 2 曼哈顿距离 又称为城市街区距离 2.1 python 实现 f…