LINUX网络FTP服务
一、FTP服务
FTP服务:file transfer protocol :文件传输协议。在网络上进行双向传输,也是一个应用程序。不同的操作系统有不同的FTP软件,但使用的协议是一样的。
FTP协议基于TCP协议,有两个端口,即20和21。
20端口:建立数据连接,数据传输
21端口:连接控制,传输FTP的控制命令
FTP服务端和客户端,建立连接后,FTP是双向进行的传输
FTP建立数据连接的模式
主动模式:服务器主动向端口发起数据连接
被动模式:服务器等待客户端发起连接
被动模式更容易穿越防火墙,默认就是被动模式。
二、FTP服务
2.1 vsftpd服务
vsftpd的安装和配置

在对vsftpd修改配置前,先备份配置文件

vim /etc/vsftdpd/vsftpd.conf编辑配置文件

2.2 匿名用户配置
2.2.1 服务端配置
vim /etc/vsftpd/vsftpd.conf编辑配置文件

重启vsftpd服务,关闭防火墙和安全机制

匿名用户的默认根目录是 /var/ftp/pub,对该目录赋权777

2.2.2 匿名访问测试

在windows系统打开开始菜单,输入cmd命令打开命令提示符

在实际生产过程中,由于匿名用户权限过高,可靠性低,存在安全隐患,所以都会禁止匿名用户登录。
2.3 系统用户配置登录
2.3.1 设置本地用户可以访问FTP,禁止匿名用户登录

重启vsftpd服务,在 /opt 目录下,

在windows系统打开开始菜单,输入cmd命令打开命令提示符,登录用户test1

在windows用户文件中可以看到test.txt文件,内容为hello,world!
2.3.2 对本地用户切换目录进行限制

重启服务即可,系统用户登录时,把用户禁锢在家目录,系统用户只能在自己的家目录操作,包括root用户。
2.4 黑名单和白名单
黑名单:在名单上的不允许登录,允许所有,拒绝个别
白名单:只有在名单上的才允许登录,拒绝所有,允许个别(常用)
编辑黑名单和白名单相关配置在配置文件 /etc/vsftpd/vsftpd.conf 的最下方
2.4.1 黑名单
黑名单默认开启

用户列表文件 :/etc/vsftpd/userlist ,控制用户访问,修改文件,添加黑名单,不用重启,立刻生效
2.4.2 白名单
设置白名单只要修改下行

userlist_deny改成NO后,即为白名单
修改配置文件需要重启服务
此时用户列表文件/etc/vsftpd/userlist内容为白名单
特别注意:在/etc/vsftpd/ftpusers里记录的用户,即使在白名单上也不能登录,这个文件相当于白名单里的黑名单。
要想使用root用户,把ftpusers里面的root用户注销掉即可
2.5 FTP命令与工具

相关文章:
LINUX网络FTP服务
一、FTP服务 FTP服务:file transfer protocol :文件传输协议。在网络上进行双向传输,也是一个应用程序。不同的操作系统有不同的FTP软件,但使用的协议是一样的。 FTP协议基于TCP协议,有两个端口,即20和21。 20端口&…...
10 C++11
10 C11 1、类型推导1.1 auto关键字1.2 auto类型推断本质 2、类型计算2.1 类型计算分类2.2 类型计算的四种规则2.3 返回值类型计算 3、列表初始化4、Lambda表达式4.1 前置知识4.2 Lambda表达式4.3 捕获表 5、右值引用5.1 概念5.2 左值引用和右值引用 6、移动语义 1、类型推导 1…...
java的封装
为什么要封装?在java的面向对象的思想中,封装是指将类的实现细节包装,隐藏起来的方法。封装可以防止本类的代码和数据被外部定义的代码随机访问。 如何进行封装? 在定义一个类时,将类中的属性私有化,即使…...
为什么选择海外服务器?
如何选择跨境电商服务器:详细指南 选择合适的服务器是跨境电商企业成功的基础。服务器的性能和稳定性直接影响着网站的访问速度、用户体验和安全性,进而影响着企业的销量和利润。那么,跨境电商企业该如何选择服务器呢? 1. 确定目…...
k8s+springcloud+nacos部署配置
1 k8s 部署nacos-2.1.2配置k8s-nacos-statefulSet.yaml文件 apiVersion: v1 kind: Service metadata:name: nacos-headlessnamespace: rz-dtlabels:app: nacosannotations:service.alpha.kubernetes.io/tolerate-unready-endpoints: "true" spec:# 3个端口打开&…...
梯度提升决策树(GBDT)
GBDT(Gradient Boosting Decision Tree),全名叫梯度提升决策树,是一种迭代的决策树算法,又叫 MART(Multiple Additive Regression Tree),它通过构造一组弱的学习器(树&am…...
数据结构之B树的原理与业务场景
B树是一种自平衡的树形数据结构,它能够保持数据有序,并且可以高效地进行查找、顺序访问、插入和删除操作。B树的设计是为了优化磁盘I/O操作,因为它可以减少磁盘访问次数,这在数据库和文件系统中非常有用。 1. B树的原理 节点的出…...
【Android面试八股文】你能说一说线程池管理线程的原理吗?
面试官(Interviewer): 欢迎参加面试,今天我们会讨论一些关于 Java 线程池管理的问题。你能给我解释一下 ThreadPoolExecutor 是如何管理线程的吗? 候选人(Candidate): 当然可以,ThreadPoolExecutor 是 Java 中用于创建和管理线程池的核心类。它通过一组核心参数来控制线…...
springer 在线投稿编译踩坑
springer投稿,在线编译踩坑总结 注意: 有的期刊需要双栏,而预定义的模板中可能为单栏,需要增加iicol选项。 例如: \documentclass[sn-mathphys-num]{sn-jnl}% —>\documentclass[sn-mathphys-num, iicol]{sn-jnl}…...
固态硬盘的指标
固态硬盘的指标主要包括以下几个方面: 接口类型:这是固态硬盘与外部设备连接的方式,常见的接口类型有SATA、PCIe和NVMe等。不同的接口类型决定了固态硬盘的传输速度和性能。例如,PCIe接口的固态硬盘通常比SATA接口的固态硬盘具有…...
mysql 分组后每个取最新的一条记录
在MySQL中,若要从一个分组中获取每组的最新一条记录(通常基于时间戳或其他递增的列),可以使用子查询或者窗口函数(如果MySQL版本支持)。 以下是两种不同的实现方法: 方法1: 使用子查询和LIMIT…...
Java语法和基本结构介绍
Java语法和基本结构是Java编程的基础,它决定了Java代码的书写方式和程序的结构。以下是Java语法和基本结构的一些关键点: 1.标识符和关键字:Java中的标识符是用来标识变量、函数、类或其他用户自定义元素的名称。关键字是预留的标识符&#x…...
TDengine 3.3.0.0 引入图形化管理工具、复合主键等 13 项关键更新
在涛思数据研发团队的努力下,TDengine 3.3.0.0 版本终于和大家见面了。这一版本中,我们引入了多项革新功能和性能优化,力求在为用户提供极致体验的同时,不断推动技术的前沿。 此次更新不仅针对开源社区版本,进行了一系…...
C++基础之红黑树
二叉搜索树 二叉搜索树(Binary Search Tree,BST)是一种二叉树,具有以下性质: 左子树节点值小于根节点值:对于树中的每个节点 x,其左子树中所有节点的值都小于 x 的值。右子树节点值大于根节点值…...
ClickHouse数据库对比、适用场景与入门指南
本文全面对比了ClickHouse与其他数据库(如StarRocks、HBase、MySQL、Hive、Elasticsearch等)的性能、功能、适用场景,并提供了ClickHouse的教学入门指南,旨在帮助读者选择合适的数据库产品并快速掌握ClickHouse的使用。 文章目录 …...
举例说明 如何通过SparkUI和日志定位任务莫名失败?
有一个Task OOM: 通过概览信息,发现Stage 10的Task 36失败了4次导致Job失败。概览信息中显示最后一次失败的退出代码(exit code)是143,意味着发生了内存溢出(OOM,即Out of Memory)。…...
Vue前端通过Axios的post方式传输数据,后端为什么一直接收的值是null?
沃靠!这个细节太细了,搞了我两个多小时才找到这个bug。 一、 首先官方文档给我的post请求的例子是这样的: axios.post(/user, {firstName: Fred,lastName: Flintstone}).then(function (response) {console.log(response);}).catch(function (error) {console.log(error);})…...
外链建设如何进行?
理解dofollow和nofollow链接,所谓dofollow链接,就是可以传递权重到你的网站的链接,这种链接对你的网站排名非常有帮助,这种链接可以推动你的网站在搜索结果中的位置向上爬,但一个网站全是这种有用的链接,反…...
深入理解Java正则表达式及其应用
正则表达式是一种强大的文本匹配和处理工具,可以在字符串中查找、替换、提取符合特定模式的内容。Java作为一种广泛应用的编程语言,提供了丰富的正则表达式支持。本文将深入探讨Java正则表达式的基本概念、语法以及常见应用场景,帮助读者全面…...
Gstreamer学习3----灌数据给管线之appsrc
参考资料 Basic tutorial 8: Short-cutting the pipeline gstreamer向appsrc发送帧画面的代码_gst appsrc可变帧率-CSDN博客 在官网教程Basic tutorial 8: Short-cutting the pipeline 里面,讲了一个例子,push音频数据给管线,视频的例子更…...
类和对象(中)——运算符重载
引入语言在语法上可以直接用指令实现运算符对 内置类型 的操作C中加入了类类型,那如何使用以前的运算符(如 - * / 等),对类类型进行操作呢?由此引入运算符重载:C为了增强代码的可读性引入了运算…...
MySQL局域网远程连接测试教程
MySQL局域网远程连接测试教程1本地服务器安装MySQL服务器,安装MySQL shell, Workbench(非必须)防火墙配置2远程访问用户电脑配置IP配置安装 Workbench客户端1本地服务器 安装MySQL服务器,安装MySQL shell, Workbench(非必须) 点击右下角的Advanced Opt…...
HP-Socket技术演讲视频描述撰写指南:关键词与吸引力
HP-Socket技术演讲视频描述撰写指南:关键词与吸引力 【免费下载链接】HP-Socket High Performance TCP/UDP/HTTP Communication Component 项目地址: https://gitcode.com/gh_mirrors/hp/HP-Socket HP-Socket是一款高性能跨平台网络通信框架,专为…...
大模型进阶必看:Agent Skills如何让AI开发更标准化、可复用?速收藏!
随着AI应用开发成熟,工具调用经历了Function Calling、MCP协议到Agent Skills三个阶段。Agent Skills通过文件系统原生设计,将指令、工作流和资源打包成可复用模块,革新上下文管理,实现代码即工具,摆脱供应商锁定。它使…...
OpenClaw智能邮件助手:nanobot镜像自动分类与回复重要邮件
OpenClaw智能邮件助手:nanobot镜像自动分类与回复重要邮件 1. 为什么需要智能邮件助手 每天早晨打开邮箱,看到堆积如山的未读邮件总是让人头疼。重要客户的询盘可能被埋没在促销广告中,紧急的协作请求可能因为延迟回复而影响项目进度。作为…...
提升开发效率:用快马一键生成快速排序多版本性能对比工具
今天在优化一个数据处理模块时,遇到了需要选择合适排序算法的问题。不同数据特征下,快速排序的各种变体表现差异很大,手动测试效率实在太低。于是我用InsCode(快马)平台快速搭建了一个性能对比工具,整个过程比想象中简单很多。 需…...
力扣原题《长度最小的子数组》,无序版(不考虑元素必须要相邻)纯手搓,已验证,有序版在下一篇
给定一个含有 n 个正整数的数组和一个正整数 target 。 找出该数组中满足其总和大于等于 target 的长度最小的 子数组 [numsl, numsl1, …, numsr-1, numsr] ,并返回其长度。如果不存在符合条件的子数组,返回 0 。 示例 1: 输入:t…...
5分钟解锁WeMod专业版:开源工具让你的游戏修改体验全面升级
5分钟解锁WeMod专业版:开源工具让你的游戏修改体验全面升级 【免费下载链接】Wemod-Patcher WeMod patcher allows you to get some WeMod Pro features absolutely free 项目地址: https://gitcode.com/gh_mirrors/we/Wemod-Patcher 还在为WeMod专业版的订阅…...
如何在Windows上零配置运行Android应用?APK Installer的革命性方案
如何在Windows上零配置运行Android应用?APK Installer的革命性方案 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 你是否曾经遇到过这样的场景:…...
[2026 职场洗牌系列 01] 程序员正在“杀死”自己的工作?科技行业高危预警
长久以来,学计算机(CS)在很多年轻人眼里就等同于拿到了通往高薪和阶层跃升的金钥匙。大家都觉得,只要把代码敲得溜,这辈子在职场上基本就稳了。可惜,到了2026年的今天,生成式AI正在毫不留情地把…...
