Linux系统的FTP文件传输服务
一.FTP简介
Linux环境下高性能的FTP命令行工具,能够利用FTP协议进行高效的文件传输管理。借助此强大工具,用户能轻松连接远程服务器,执行上传、下载、删除及重命名等操作,显著提高两台设备间的文件交互效率。
1.FTP什么
ftp是一种文件传输协议
2.FTP的作用
用来上传和下载,实现远程共享文件,和统一管理文件
3.FTP属于什么层
应用层
4.FTP的端口号
端口号:21 主动模式下端口号:20 被动模式下:随机端口
5.FTP的连接方式的两个阶段
(1)管理连接:客户端使用随机端口(端口号值大于1024,也被称为高位端口)连接服务器的21号端口,利用管理连接建立的通道发送指令。
(2)数据连接:上传或下载文件
6.数据连接下的两种模式
(1)主动模式:服务器(20端口)主动向客户端发起数据连接(随机端口,一般是N+1)客户端的防火墙会拦截服务器发起的连接(服务器连客户端)
(2)被动模式:服务器(随机端口)等待客户端(随机端口)向自己发起连接服务器需要处理防火墙(关闭,添加策略)(客户端连服务器)
7.ftp的用户类型及登录
匿名用户:用户名ftp,无需密码登录
授权用户:账号名及密码登录
8.FTP服务在客户端与服务器的名称
服务器端:vsftpd
客户端:ftp
9.FTP的两种传输模式
(1)文本模式:ASCII模式美国信息交换信息标准码 这种模式传输文件使用ASCII标准字符序列,一般只用于传输文件文件的传输。
(2)二进制模式:又称为Binary这种模式不会转换文件中的字符序列,跟适合传输程序图片等非文本文件
Vsftpd可支持最大15000并发连接数
10.FTP的工作原理
用于互联网上的控制文件的双向传输 是一个应用程序。工作在TCP/IP协议簇的,其传输协议是TCP协议提高文件传输的共享性和可靠性,使用C/S模式的工作方式连接时同时处理服务器和客户端的连接命令和数据传输,FTp将命令和数据分开传输,提高传输效率。
二.FTP的相关配置
1.安装FTP
服务器:安装vsftpd
客户端:安装ftp
2.关闭服务器防火墙,内核安全机制及启动ftp服务
[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# systemctl start vsftpd
[root@localhost ~]# setenforce 0
3.配置ftp服务的文档
[root@localhost ~]# vim /etc/vsftpd/vsftpd.conf
[root@localhost ~]# sed -i '/^#/d' /etc/vsftpd/vsftpd.conf 删除文本里面以'/^#/d'开头参数,剩余显示的是需要配置的参数
4.相关参数介绍
anonymous_enable=YES 允许匿名登录
local_enable=YES 允许本地用户访问
write_enable=YES 允许用户上传和下载文件
local_umask=022 设置上传的文件的默认权限
dirmessage_enable=YES 允许在目录上传送完毕后显示一条消息。
xferlog_enable=YES 启用日志功能
connect_from_port_20=YES 使用端口20进行数据传输
xferlog_std_format=YES 使用标准的日志格式
listen=NO 表示以非独立的服务进行
listen_ipv6=YES 表示vsftpd将监听IPv6连接
pam_service_name=vsftpd 使用PAM进行认证
userlist_enable=YES 启用用户列表文件
tcp_wrappers=YES 表示服务器使用tcp_wrappers作为主机访问控制方式
5.匿名用户的相关配置
anonymous_enable=YES 允许匿名登录
anon_umask=022 允许匿名用户访问的权限设置
anon_root=/opt/ftp 匿名用户登录后只能在该目录下操作
anon_upload_enable=yes 匿名用户不能浏览目录,只能上传文件,无其他权限
anon_mkdir_write_enable=yes 允许匿名用户创建目录
anon_other_write_enable=yes 允许匿名用户删除
6.本地用户的相关配置
local_enable=YES 允许本地用户访问
local_root=/opt/ftp 本地用户登录后只能在该目录下操作
local_umask=022 允许本地用户访问的权限设置
chroot_local_user=yes 将所有用户限制在主目录
allow_writeable_chroot=yes 允许在chroot环境中创建可写文件
7.主动模式被动模式的相关配置
pasv_enable=yes YES即被动模式,NO即主动模式
pasv_min_port=30500 最小端口值
pasv_max_port=30600 最大端口值
8.黑名单与白名单
(1)vim /etc/vsftpd/ftpusers
ftpusers黑名单文件,存在该文件中的用户无法登陆
(2)vim /etc/vsftpd/user_list
User_list 白名单文件,如果设置userlist_deny=NO Userlist_enable=YES则只允许该列表中的用户登录
注:若一个用户同时存在两个文件中,黑名单生效,该用户不能登陆虚拟用户模式。
9.使用虚拟用户可以将用户的登录名和密码不相同,提高服务器的安全性
第一步:创建文本格式的用户名和密码 奇数行为用户名,偶数行为密码
第二步:建立虚拟FTP用户的数据库文件
第三步:添加虚拟用户的映射账号
第四步:为虚拟用户建立PAM认证文件
第五步:修改配置文件添加虚拟用户的支持
Local_enable=YES #需要映射本地用户所以启用
Write_enable=YES ##启用上传写入权限
Guest_enable=YES ##开启虚拟用户
Anon_umask=022 ### 指定上次权限掩码
Guest_username=* ###指定映射的本地系统用户
Pam_serrivce_name=vsftpd.vu ##指定新的pam认证文件
User_config_dir=/*/*/*/ ###为不同的虚拟用户设置不同的权限
匿名用户模式:
anonymous_enabled=YES ##允许匿名访问模式。默认开的
Anonumask=022 ##匿名用户上传文件或目录权限,所上传的文件或目录的权限减去022文件默认权限是644 目录的755
Anon_upload_enable=YES ##允许匿名用户上传文件
Anon_mkdir_write_enable=YES ##允许匿名用户创建目录Anon_other_ write_enable=YES ##允许匿名用户有其他的写入权限 (删除或者修改)
10.相关命令
put 上传
local 跳转
wget 下载
相关文章:
Linux系统的FTP文件传输服务
一.FTP简介 Linux环境下高性能的FTP命令行工具,能够利用FTP协议进行高效的文件传输管理。借助此强大工具,用户能轻松连接远程服务器,执行上传、下载、删除及重命名等操作,显著提高两台设备间的文件交互效率。 1.FTP什么 ftp是一…...
redis 08 慢查询日志
1.什么是慢查询日志 2.慢查询和两个参数有关 2.1 2.2 3.例子: 4 参数详细介绍:...
山东大学软件学院项目实训-创新实训-基于大模型的旅游平台(三十一)- 微服务(11)
12.7 DSL查询语法 查询的基本语法 GET /indexName/_search{"query": {"查询类型": {"查询条件": "条件值"}}} 查询所有 GET /hotel/_search{"query": {"match_all": {}}} 12.7.1 全文检索查询 全文检索查询,会…...
DevExpress WPF中文教程:Grid - 如何向项目添加GridControl并绑定到数据
DevExpress WPF拥有120个控件和库,将帮助您交付满足甚至超出企业需求的高性能业务应用程序。通过DevExpress WPF能创建有着强大互动功能的XAML基础应用程序,这些应用程序专注于当代客户的需求和构建未来新一代支持触摸的解决方案。 无论是Office办公软件…...
nodejs湖北省智慧乡村旅游平台-计算机毕业设计源码00232
摘 要 随着科学技术的飞速发展,社会的方方面面、各行各业都在努力与现代的先进技术接轨,通过科技手段来提高自身的优势,旅游行业当然也不能排除在外。智慧乡村旅游平台是以实际运用为开发背景,运用软件工程开发方法,采…...
架构设计 - 根据性能压力测试结果优化服务器性能
概述:web软件项目工程实施过程,经常会用到客户端和服务端建立 KeepAlive 长连接来提高应用效率的场景。例如:移动端应用或者复杂的网页交互需要在用户浏览时频繁地向服务端发送请求。但是随之而来的问题是,需要对服务器端 tomcat …...
【必会面试题】事务的四大特性?ACID
目录 事务的四大特性,即ACID特性,是数据库管理的基石。 原子性(Atomicity) 定义:事务作为一个整体被执行,其内部的操作要么全部完成,要么全部不完成。如果事务中的任何一部分失败,那…...
【QT】记录一次QT程序发布exe过程
记录一次QT程序发布exe过程 使用windeploy与enigma发布独立的QT程序第一步 QT编译输出 **release** 版本第二步 QT 自带 windepoyqt 补全链接库第三步 enigma virtual box压缩打包为单一exe最后【2024-06-07 17】- 【补充】 贴一个自己用的bat脚本【**QtDeploy2exe.bat**】半自…...
数据分类分级,误把起点当终点
数据分类分级 吉祥学安全知识星球🔗除了包含技术干货:Java代码审计、web安全、应急响应等,还包含了安全中常见的售前护网案例、售前方案、ppt等,同时也有面向学生的网络安全面试、护网面试等。 01 — 数据分类分级的定义 数据分…...
stm32 启动文件分析
启动文件前面的介绍 启动文件是后缀为.s的汇编语言文本文件,每行前面的分号表示此行是注释行。 启动文件主要完成如下工作,即程序执行过程: - 设置堆栈指针SP __initial_sp。 - 设置PC指针 Reset_Handler。 - 设置中断向…...
playwright--简单使用
playwright的基本使用主要围绕着启动浏览器、导航至网页、操作页面元素、执行脚本和收集数据这几个核心步骤。以下是简单的使用流程,以同步API为例: 目录 1. 导入库并启动playwright 2. 创建新页面并导航 3. 操作页面元素 4. 异步操作与等待 5. 数…...
pom学习笔记:kimi的自动化操作
1.先看结构: 声明:我是初学,可能有不合理的地方。 2.Base层。 我是把原来一个kimi的自动问答的代码改过来。 分析:其实我是新手,因为我用的浏览器是固定的,也没有打算和别人用。所以浏览器层面年的全部写…...
【iOS】UI学习——界面切换
界面切换 push和poppresent和dismiss示例程序 push和pop 在 Objective-C 中,pop 和 push 通常是与 UINavigationController 一起使用的方法,用于控制导航栈中视图控制器的跳转和回退。 push 和 pop 通常成对使用,用于实现导航栈的前进和后退功能。当用户进入新的视图控制器时…...
【悬架笔记三】1/4被动悬架垂向动力学仿真+频域特性分析
1/4被动悬架 代码: %书第156页、159页 clc clear close all %% 一.悬架参数 ms320; mw50; Ks22000; Cs1500; Kw195000; f00.07; %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% 二.垂向振动动力学仿真 %% 二.1.状态方程 A [0 1 0 -1;.…...
【C++】——继承(详解)
一 继承的定义和概念 1.1 继承的定义 继承(inheritance)机制是面向对象程序设计使代码可以复用的最重要的手段,它允许程序员在保 持原有类特性的基础上进行扩展,增加功能,这样产生新的类,称派生类,被继承的称为基类…...
openGauss学习笔记-299 openGauss AI特性-AI4DB数据库自治运维-DBMind的AI子功能-SQLdiag慢SQL发现
文章目录 openGauss学习笔记-299 openGauss AI特性-AI4DB数据库自治运维-DBMind的AI子功能-SQLdiag慢SQL发现299.1 概述299.2 使用指导299.2.1 前提条件299.2.2 SQL流水采集方法299.2.3 操作步骤299.2.4 使用方法示例299.3 获取帮助299.4 命令参考299.5 常见问题处理openGauss学…...
Git 分支管理规范化[Git Flow ]分支管理策略
分支命名规范 master 分支:master 分支只有一个,名称即为 master。GitHub 现在叫 main develop 分支:develop 分支只有一个,名称即为 developfeature 分支:feature/<功能名>,例如:featu…...
一键Mock工具(Http协议接口调试工具)
点击下载《一键Mock工具(Http协议接口调试工具》 1. 前言 在进行Web开发时,前端小伙伴通常是和后端开发人员同步进行项目开发,经常会遇到后端开发人员接口还没开发完,也没有可以调试的环境,只能按照接口文档进行“脑…...
Golang的context
目录 context的基本使用 为什么需要context Context interface 标准 error emptyCtx cancelCtx Deadline 方法 Done 方法 Err 方法 Value 方法 context.WithCancel() newCancelCtx WithCancel中propagateCancel cancel timerCtx valueCtx context的基本使用…...
Android 各个版本名称和特性总结(持续更新)
我们就从Android 5.0开始吧,因为从写文时起,大部分手机都到5.0了。 目录 Android5.0 (Lollipop 棒棒糖)新特性 Android6.0新特性 Android7.0新特性 Android8.0(O)新特性 Android9.0新特性 Android10.0(Q)新特性 Android11…...
基于ASP.NET+ SQL Server实现(Web)医院信息管理系统
医院信息管理系统 1. 课程设计内容 在 visual studio 2017 平台上,开发一个“医院信息管理系统”Web 程序。 2. 课程设计目的 综合运用 c#.net 知识,在 vs 2017 平台上,进行 ASP.NET 应用程序和简易网站的开发;初步熟悉开发一…...
在rocky linux 9.5上在线安装 docker
前面是指南,后面是日志 sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo dnf install docker-ce docker-ce-cli containerd.io -y docker version sudo systemctl start docker sudo systemctl status docker …...
高频面试之3Zookeeper
高频面试之3Zookeeper 文章目录 高频面试之3Zookeeper3.1 常用命令3.2 选举机制3.3 Zookeeper符合法则中哪两个?3.4 Zookeeper脑裂3.5 Zookeeper用来干嘛了 3.1 常用命令 ls、get、create、delete、deleteall3.2 选举机制 半数机制(过半机制࿰…...
C# SqlSugar:依赖注入与仓储模式实践
C# SqlSugar:依赖注入与仓储模式实践 在 C# 的应用开发中,数据库操作是必不可少的环节。为了让数据访问层更加简洁、高效且易于维护,许多开发者会选择成熟的 ORM(对象关系映射)框架,SqlSugar 就是其中备受…...
大数据学习(132)-HIve数据分析
🍋🍋大数据学习🍋🍋 🔥系列专栏: 👑哲学语录: 用力所能及,改变世界。 💖如果觉得博主的文章还不错的话,请点赞👍收藏⭐️留言Ǵ…...
2025季度云服务器排行榜
在全球云服务器市场,各厂商的排名和地位并非一成不变,而是由其独特的优势、战略布局和市场适应性共同决定的。以下是根据2025年市场趋势,对主要云服务器厂商在排行榜中占据重要位置的原因和优势进行深度分析: 一、全球“三巨头”…...
算法岗面试经验分享-大模型篇
文章目录 A 基础语言模型A.1 TransformerA.2 Bert B 大语言模型结构B.1 GPTB.2 LLamaB.3 ChatGLMB.4 Qwen C 大语言模型微调C.1 Fine-tuningC.2 Adapter-tuningC.3 Prefix-tuningC.4 P-tuningC.5 LoRA A 基础语言模型 A.1 Transformer (1)资源 论文&a…...
PAN/FPN
import torch import torch.nn as nn import torch.nn.functional as F import mathclass LowResQueryHighResKVAttention(nn.Module):"""方案 1: 低分辨率特征 (Query) 查询高分辨率特征 (Key, Value).输出分辨率与低分辨率输入相同。"""def __…...
【电力电子】基于STM32F103C8T6单片机双极性SPWM逆变(硬件篇)
本项目是基于 STM32F103C8T6 微控制器的 SPWM(正弦脉宽调制)电源模块,能够生成可调频率和幅值的正弦波交流电源输出。该项目适用于逆变器、UPS电源、变频器等应用场景。 供电电源 输入电压采集 上图为本设计的电源电路,图中 D1 为二极管, 其目的是防止正负极电源反接, …...
Caliper 配置文件解析:fisco-bcos.json
config.yaml 文件 config.yaml 是 Caliper 的主配置文件,通常包含以下内容: test:name: fisco-bcos-test # 测试名称description: Performance test of FISCO-BCOS # 测试描述workers:type: local # 工作进程类型number: 5 # 工作进程数量monitor:type: - docker- pro…...
