首页 > 其他分享 >vsftp的三种用户详解

vsftp的三种用户详解

时间:2024-10-26 12:33:51浏览次数:1  
标签:enable 用户 virtual vsftpd 详解 三种 user vsftp YES

vsfp上有三种用户类型:

annoymous 匿名用户

local_user 本地用户

virtual_user 虚拟用户

1、使用匿名用户

不需要认证

配置文件中配置:anonymous_enable=YES

2、使用本地用户

本地用户,就是linux上的系统用户,满足下面两点就可以使用。

1、用户的bash是/bin/bash

2、主配置文件中配置:local_enable=YES

3、使用虚拟用户

为什么要使用虚拟用户呢?

如果ftp是提供给公司100多号员工的,岂不是要给每个用户都新建一个系统用户?

这100多个系统用户,还都可以登陆到服务器,对服务器安装增加隐患。

 

创建虚拟用户的账号、密码文件,用于下一步生成认证数据库文件。

cat virtual_user.list 
ftpcitc
112233

生成数据库

 db_load -T -t hash -f /etc/vsftpd/virtual_user.list  /etc/vsftpd/virtual_user.db

修改权限

chmod 700 /etc/vsftpd/virtual_user.db

增加用户

cat virtual_user.list 
ftpcitc
112233
vuser
112233

增加用户后要重新生成数据库

 db_load -T -t hash -f /etc/vsftpd/virtual_user.list  /etc/vsftpd/virtual_user.db

配置用户认证

cat /etc/pam.d/vsftpd
auth    required        pam_userdb.so   db=/etc/vsftpd/virtual_user
account required        pam_userdb.so   db=/etc/vsftpd/virtual_user

配置虚拟用户映射

ps:1、所有的虚拟用户都要映射到一个本地系统用户

2、这个本地系统用户,不要有登陆服务器的权限,不要配置密码,只做虚拟用户的映射。

 

[root@hdp01 vsftpd]# useradd  -s /sbin/nologin ftpuser

修配主配置文件

[root@hdp01 vsftpd]# grep ^[a-zA-Z] vsftpd.conf
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
pam_service_name=vsftpd
guest_enable=YES
guest_username=ftpuser
user_config_dir=/etc/vsftpd/vsftpd_user_conf
virtual_use_local_privs=YES

创建虚拟用户的配置目录、配置文件

ps: 配置文件要和虚拟用户的名字一致

mkdir -p /etc/vsftpd/vsftpd_user_conf

[root@hdp01 virtual_user_dir]# cd /etc/vsftpd/virtual_user_dir

[root@hdp01 virtual_user_dir]# cat ftpcitc 
local_root=/data/ftp/ftpcitc
write_enable=YES
non_upload_enable=YES
anon_mkdir_write_enable-YES
anon_other_write_enable=YES
You have new mail in /var/spool/mail/root

[root@hdp01 virtual_user_dir]# cat vuser 
local_root=/data/ftp/vuser
write_enable=YES
non_upload_enable=YES
anon_mkdir_write_enable-YES
anon_other_write_enable=YES

创建虚拟用户的家目录

ps:要把虚拟用户家目录的属主属组给,代理用户ftpuser

mkdir -p /data/ftp/vuser
mkdir -p /data/ftp/ftpcitc
chown  ftpuser:ftpuser /data/ftp/vuser   /data/ftp/ftpcitc

 

配置完成,重启vsftp,测试虚拟用户。

 

标签:enable,用户,virtual,vsftpd,详解,三种,user,vsftp,YES
From: https://www.cnblogs.com/xlpc/p/18503910

相关文章

  • USB协议详解第21讲(USB包-令牌类包)
    1.令牌类包的分类令牌类包有SETUP令牌包、IN令牌包、OUT令牌包。2.令牌类包的组成我们今天看令牌类包的详细结构,令牌包的内容由PID域+地址域+5bitCRC域,下图为令牌类包包各个域和抓包协议的对应图。3.令牌类包的功能所有令牌包都是主机发起的,作用就是告诉设备主机要干啥,要求......
  • 详解Java之Spring MVC篇一
     目录SpringMVC官方介绍MVCRequestMapping传递参数 无参数单个参数针对String类型 针对Integer类型针对int类型针对自定义类型多个参数参数重命名参数强制一致参数不强制一致传递数组​编辑传递List​编辑传递JSON​编辑从路径中获取参数获取单个......
  • USB协议详解第20讲(USB包-帧首包SOF)
    USB协议详解第20讲(USB包-帧首包SOF)1.包的四种类型根据包的组成把包分为四种类型,分别是、帧首包SOF(StartofFrame)、命令包(Token)、数据包(Data)、握手包(Handshake),如下图(大家一定要把PID类型和包类型分开)。4种PID类型和4种包类型(按照组成分类)的区别如下,大家注意区分。2.SOF包组......
  • 【K8S系列】Kubernetes pod节点Unknown 问题及解决方案详解【已解决】
    在Kubernetes中,Pod的状态为Unknown表示无法获取Pod的当前状态。这通常意味着KubernetesAPI服务器无法与Pod所在的节点通信,或者Kubelet进程遇到问题。以下将详细介绍Unknown状态的原因、解决方案以及如何配置健康检查以提高系统的稳定性。一、Unknown状态......
  • Java SPI 机制详解
    原文:JavaSPI机制详解在面向对象的设计原则中,一般推荐模块之间基于接口编程,通常情况下调用方模块是不会感知到被调用方模块的内部具体实现。一旦代码里面涉及具体实现类,就违反了开闭原则。如果需要替换一种实现,就需要修改代码。为了实现在模块装配的时候不用在程序里面动态指......
  • 详解c++中的set_difference函数
    set_difference功能描述:求两个集合的差集函数原型:set_difference(iteratorbeg1,iteratorend1,iteratorbeg2,iteratorend2,iteratordest);//求两个集合的差集//注意:两个集合必须是有序序列//beg1容器1开始迭代器//end1容器1结束迭代器//beg2容......
  • 【数据结构初阶】单链表接口实现超详解
    1.顺序表问题与思考上一篇博客中我们介绍了顺序表,那么顺序表有什么缺点呢?中间/头部的插入删除,时间复杂度为O(N)增容需要申请新空间,拷贝数据,释放旧空间。会有不小的消耗。增容一般是呈2倍的增长,势必会有一定的空间浪费。例如当前容量为100,满了以后增容到200,我们再继续插入了5个数......
  • Markdown语法详解及常见的使用场景
    Markdown语法详解Markdown概念一、标题二、段落三、字体样式四、列表五、链接和图片六、代码八、分隔线九、引用十、删除线和下划线十一、脚注十二、任务列表十三、高级技巧十四、目录生成Markdown的应用场景Markdown概念Markdown是一种轻量级标记语言,以其简洁、......
  • EM算法详解
    EM算法详解EM(Expectation-Maximization)算法,即期望最大化算法,是一种在机器学习、数据挖掘等领域有着广泛应用的迭代优化策略。它不仅被评选为“数据挖掘十大算法”之一,还被吴军博士在《数学之美》一书中誉为“上帝视角”算法,足见其重要性。本文将深入介绍EM算法的基本原理、......
  • 【STC8H】使用ADC第15通道测量外部电压及电池电压详解
     STC8H系列ADC的第15通道用于测量内部参考信号源,由于内部参考信号源很稳定,约为1.19V,且不会随芯片的工作电压的改变而变化,所以可以通过测量内部1.19V参考信号源,然后通过ADC的值便可反推出外部电压或外部电池电压。以下是如何设置和读取ADC第15通道的详细步骤: 1......