arch linux 安装 vsftpd 配置虚拟用户

news2024/10/5 14:14:59

后面操作会直接基于 yay 操作 自行查找如何安装 yay

公司经常会用到 ftp 服务 不想用 apache 的 ftp server 所以自己在小机器上撞了 arch linux 用来安装软件 跑程序等。

1. 安装 vsftpd

yay vsftpd --noconfirm

选择 1 安装 输入密码
在这里插入图片描述

2. 安装 pam_pwdfile

安装 pam_pwdfile用于验证密码文件

yay pam_pwdfile --noconfirm

选择 1 安装
在这里插入图片描述

3. 修改配置文件

配置文件在 /etc/vsftpd.conf 处

sudo nano /etc/vsftpd.conf

修改为以下内容

# 监听 ipv4
listen=YES
# 监听 ipv6
listen_ipv6=NO
# 关闭匿名登陆
anonymous_enable=NO
# 允许本地登陆 如使用虚拟宿主用户,在该项目设定为NO的情况下所有虚拟用户将无法访问
local_enable=YES
# 允许写入文件
write_enable=YES
# 文件权限掩码设置 当前即为 755
local_umask=000
# 不允许匿名上传
#anon_upload_enable=YES
# 不允许匿名创建文件夹
#anon_mkdir_write_enable=YES
# 目录消息
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
#chown_uploads=YES
#chown_username=whoever
xferlog_file=/var/log/xferlog.log
#xferlog_std_format=YES
#idle_session_timeout=600
#data_connection_timeout=120
#nopriv_user=ftpsecure
#async_abor_enable=YES
ascii_upload_enable=YES
ascii_download_enable=YES
#deny_email_enable=YES
#banned_email_file=/etc/vsftpd.banned_emails
#chroot_local_user=YES
# 设置不允许离开主目录
chroot_list_enable=YES
# 允许登陆的 ftp 用户列表
chroot_list_file=/etc/vsftpd/chroot_list
#ls_recurse_enable=YES
pam_service_name=vsftpd
ssl_enable=NO
guest_enable=YES
guest_username=ftp
user_config_dir=/etc/vsftpd/vuser_conf
#pasv_address=172.16.161.244
#开启PASV模式
pasv_enable=YES
#最小端口号
#pasv_min_port=10027
#最大端口号
#pasv_max_port=10037
pasv_promiscuous=YES
allow_writeable_chroot=YES
# ftp 监听端口
listen_port=2121
vsftpd_log_file=/var/log/vsftpd.log
log_ftp_protocol=YES
hide_ids=YES
virtual_use_local_privs=YES
seccomp_sandbox=NO

4. 配置文件

创建文件夹 /etc/vsftpd/vuser_conf 对应配置文件内 user_config_dir 属性

创建 /etc/vsftp/chroot_list 文件,在里面填入自己想要的用户名 我选择 myFtpUser ,如果 chroot_local_user属性没有设置/设置为 NO (默认为NO),则只有该文件内的用户可以登陆

sudo mkdir -p /etc/vsftpd/vuser_conf
sudo bash -c 'echo myFtpUser >> /etc/vsftpd/chroot_list'

创建用户配置
在 vuser_conf 目录下创建用户名的文件

sudo nano /etc/vsftpd/vuser_conf/myFtpUser

填入内容

local_root=/home/robot/data/ftphome
write_enable=YES
anon_umask=000
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES

local_root 是 ftp 的根目录所在文件夹
同时创建文件夹 并且更改所有者

sudo mkdir /home/robot/data/ftphome
sudo chown -R ftp:ftp /home/robot/data/ftphome

5. 创建密码

我选择 abcd1234

openssl passwd -1 -noverify abcd1234

得到 $1$vG2IrM5m$mdmBeMXqqnjW7u4exX/190
用户名:密码作为内容创建 vuser_passwd 文件 文件名任意 后面要用,内容如下 由于有特殊符号 还是用 nano 方便~

sudo nano /etc/vsftpd/vuser_passwd
myFtpUser:$1$vG2IrM5m$mdmBeMXqqnjW7u4exX/190

编辑 vsftpd 的 pam 文件

sudo nano /etc/pam.d/vsftpd

将内容删除 或者 都注释(前面加#),然后添加一下内容

auth required pam_pwdfile.so pwdfile /etc/vsftpd/vuser_passwd
account required pam_permit.so

其中就用到了密码文件
在这里插入图片描述

6. 赋权

配置文件目录添加所有可读, ftp 目录的用户目录我直接给了全部权限

sudo chmod a+r -R /etc/vsftpd
sudo chmod 777 -R /home/robot

7. 验证

我使用 filezilla 连接 没有问题
注意端口 和配置文件中的对应 是 2121
请添加图片描述
在这里插入图片描述
有时间再更一篇 vsftpd 配置 ftps 的文章

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

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

相关文章

走近Nexstar Digital,看美国百家电视台内容管理的齿轮如何运转?

美国五大电视网之一的CW电视台,是《邪恶力量》《吸血鬼日记》等热播剧的产地,最终在2022年被Nexstar收入囊中。 Nexstar Media Group是全球领先的多元化媒体公司之一,也是美国最大的地方广播电视集团之一,活跃于美国116个市场&am…

HCIA数据通信——交换机(Vlan间的通信与安全)

前言 之前的提到了交换机的概念和实验。不过交换机的一些功能还没有说完,我们的实验也仅仅是阻止相同地址段的IP地址互通,也没有用到子接口和路由器。显然,那样的配置过于简单。 端口安全 Port Security(端口安全)的功…

DeepSpeed: 大模型训练框架 | 京东云技术团队

背景: 目前,大模型的发展已经非常火热,关于大模型的训练、微调也是各个公司重点关注方向。但是大模型训练的痛点是模型参数过大,动辄上百亿,如果单靠单个GPU来完成训练基本不可能。所以需要多卡或者分布式训练来完成这…

使用性能监控软件的主要措施

性能监控软件是管理和维护计算机系统的不可或缺的工具。它们提供了实时性能数据,帮助用户优化资源利用、提高系统稳定性和提供更好的用户体验。选择合适的性能监控软件并正确使用它们可以帮助你在竞争激烈的数字时代脱颖而出,确保你的系统始终在最佳状态…

腾讯云国际-如何使用对象存储COS在 CKafka 控制台创建数据异步拉取任务?腾讯云代充

操作场景 Datahub 支持接入各种数据源产生的不同类型的数据,统一管理,再分发给下游的离线/在线处理平台,构建清晰的数据通道。 本文以 COS 数据为例介绍如何在 CKafka 控制台创建数据异步拉取任务,并对任务进行修改配置&#xf…

【国科方案】设置引脚复用、方向和输入输出

【国科方案】设置引脚复用、方向和输入输出 文章目录 【国科方案】设置引脚复用、方向和输入输出前言一、复用、方向和数据二、总结 前言 记录在工作中调试国科方案芯片引脚复用等功能。不同的方案厂家引脚的处理是不一样的,下面就详细介绍一下国科方案引脚的使用。…

【无标题】简析天津某产业园能耗监测系统设计与应用

叶根胜 安科瑞电气股份有限公司 上海嘉定 201801 摘要:对天津市某产业园2016年度的能耗进行了审计,分析了该产业园的年度能耗总量、能源结构、能耗费用构成、单位建筑面积和单位人员能耗指标,并对能源利用过程中存在的问题进行分析&#xf…

postgresql14管理(五)-tablespace

基本概念 表空间tablespace在postgresql中,表示数据库对象(比如表或索引)的存放目录。当表被访问时,系统通过表空间定位到对应数据文件所在的位置。 优势: 1、如果数据库集群所在的初始磁盘分区或磁盘卷的空间不足&a…

【表面缺陷检测】铝型材表面缺陷检测数据集介绍(含xml标签文件)

一、铝型材介绍 铝型材是一种由铝合金材料制成的,具有固定截面形状和尺寸的条形建材。由于其优良的物理性能和广泛的应用领域,铝型材在现代工业和生活中发挥着重要的作用。 1、铝型材的分类 根据截面形状的不同,铝型材可分为角铝、槽铝、工…

数据结构-浅谈线段树,树状数组[例题讲解学习]

🏆今日学习目标: 🍀学习算法-数据结构-线段树 ✅创作者:贤鱼 ⏰预计时间:30分钟 🎉个人主页:贤鱼的个人主页 🔥专栏系列:算法 🍁贤鱼的个人社区,欢…

VScode 设置终端窗口 terminal 的字体大小

1. 打开vscode的设置 2. 找到terminal,不同vscode版本,可能会有差异,找terminal 就行,修改字体后,等1s延迟,字体会自动变大或变小,我设的是18

进程等待..

进程等待: 1.是什么? 通过系统调用wait/waitpid,来进行对子进程进行状态检测与回收的功能! 2.为什么? 僵尸进程无法被杀死,需要通过进程等待来杀掉它,进而解决内存泄漏问题—必须解决的 我们要通过进程等待,获得子进程的退出情…

JVM常见的垃圾回收器(详细)

1、Young为年轻代出发的垃圾回收器。 2、Old为老触发的垃圾回收器。 3、连线代表的是垃圾回收器的组合。CMS 和Serial Old连线代表CMS一旦不行了,Serial Old上场。 首先了解一个概念:STW 1、什么是STW? STW是Stop-The-World缩写: 是在垃圾回…

Vue响应式数据的实现原理(手写副作用函数的存储和执行过程)

1.命令式和声明式框架 命令式框架关注过程 声明式框架关注结果&#xff08;底层对命令式的DOM获取和修改进行了封装&#xff09; 2.vue2 Object.defineProperty()双向绑定的实现 <body><div id"app"><input type"text" /><h1>…

Ni-IDA琼脂糖凝胶FF-------可用于纯化带组氨酸标签(His-Tag)的重组蛋白

品 名&#xff1a;Ni-IDA琼脂糖凝胶FF(Nickel Iminodiacetic acid Pharose Fast Flow, Ni-IDA Pharose FF) 规 格&#xff1a;10 ml&#xff0c;100 ml&#xff0c;1L&#xff0c;1 ml预装柱&#xff0c;5 ml预装柱 贮 存&#xff1a;20%乙醇&#xff0c;2-25℃ 运…

国产信号发生器 1442/1442A射频信号发生器

信号发生器 1442/A射频信号发生器 1442系列射频信号发生器是一款针对通信、电子等射频应用而设计开发的产品。覆盖了所有的常用射频频段。它采用模块化结构设计&#xff0c;全中文界面、大屏幕菜单控制&#xff0c;其输出信号相位噪声极低&#xff0c;频率分辨率和准确度高&am…

遥感语义分割、变化检测论文小trick合集(持续更新)

目录 &#x1f497;&#x1f497;1.影像融合机制 &#x1f497;&#x1f497;2.上下文聚合模块 &#x1f497;&#x1f497;3.adapter即插即用模块 &#x1f497;&#x1f497;1.影像融合机制 参考【多源特征自适应融合网络的高分遥感影像语义分割】文章中的“多源特征自适应…

注意力机制QKV在GAT(Graph Attention Network)的体现

注意力机制其实并没有规定 Q、K、V 的具体来源&#xff0c;GAT是规定了一套Q、K、V&#xff0c;自注意力是规定了另一套Q、K、V。核心其实只要计算满足下图的矩阵形式计算流程就是所谓的注意力机制了。学过注意力机制的应该都看的明白。 在自注意力机制self-attention中&…

竞赛选题 深度学习卷积神经网络的花卉识别

文章目录 0 前言1 项目背景2 花卉识别的基本原理3 算法实现3.1 预处理3.2 特征提取和选择3.3 分类器设计和决策3.4 卷积神经网络基本原理 4 算法实现4.1 花卉图像数据4.2 模块组成 5 项目执行结果6 最后 0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 基…

IP地址:网络层的介绍

我们花费很大的篇幅讲解了应用层的TCP和UDP协议。现在我们进入到网络层的学习&#xff0c;重点要学习的就是IP协议。 对于IP协议来说&#xff0c;重要的有IPv4和IPv6协议&#xff0c;我们重点介绍IPv4协议。 IP报头 4位版本&#xff1a; 此处的取值只有4和6&#xff0c;代表…