centos7-vsftp(虚拟用户)

Posted meml

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了centos7-vsftp(虚拟用户)相关的知识,希望对你有一定的参考价值。

要求如下:

1、所有用户主目录为/var/www宿主为virtual用户;

2、ftpuser1用户只能下载不能上传以及删除文件重命名操作;

3、ftpuser2可以下载与上传文件以及删除重命名操作;

4、ftpadmin可以下载与上传文件以及删除重命名操作,上传文件的umask为022;

 本机ip:192.168.1.3

 

一、安装服务。

[root@localhost ~]# yum -y install vsftpd

 

二、配置主配置文件。

[root@localhost ~]# cd /etc/vsftpd/  

[root@localhost vsftpd]# grep -v "^# |^#$" vsftpd.conf.bak  > vsftpd.conf  #过滤一下。不然看着乱

[root@localhost vsftpd]# vim vsftpd.conf 

增加:

allow_writeable_chroot=yes  #是否允许囚禁的用户进行写权限
user_config_dir=/etc/vsftpd/user  #权限映射目录
guest_enable=YES  #启用虚拟用户
guest_username=virtual   #映射用户

 

修改:

pam_service_name=vsftpd

为:

pam_service_name=pa   #定义pam模块

 

三、pam模块认证。

首先先要去添加一下用户账号、以及密码,并hash加密。

[root@localhost vsftpd]# vim up   #这儿我用up来代表用户信息。username、password的缩写

增加:

ftpuser1   #用户名
123      #密码
ftpuser2  #用户名
123       #密码
ftpadmin  #用户名
123  #密码

[root@localhost vsftpd]# db_load  -T -t hash -f up up.db   #加密用户信息

[root@localhost vsftpd]# vim /etc/pam.d/pa #编辑pam认证

增加:

auth required pam_userdb.so db=/etc/vsftpd/up
account required pam_userdb.so db=/etc/vsftpd/up

 

四、定义虚拟用户的权限。

[root@localhost vsftpd]# mkdir user  

[root@localhost vsftpd]# cd user

[root@localhost user]#  touch ftpuser1  #要求是ftpuser1只能进行下载,啥都不能了,所以直接创建一个空文件在这儿就好啦。

 

[root@localhost user]# vim ftpuser2

增加:

anon_upload_enable=yes
anon_mkdir_write_enable=yes
anon_other_write_enable=yes

 

[root@localhost user]# vim ftpadmin

增加:

anon_upload_enable=yes
anon_mkdir_write_enable=yes
anon_other_write_enable=yes
anon_umask=022

 

 

[root@localhost user]# useradd -s /sbin/nologin -d /var/www virtual  #创建映射的用户

 

[root@localhost user]# systemctl restart vsftpd 

[root@localhost user]# echo haha > /var/www/1.txt #创建一个文件,方便连接的时候,好识别是不是连接对了。

 

测试ftpuser1

 

技术图片

 技术图片

 

技术图片

 

 

 技术图片

 

 

 

 

 测试ftpuser2:

 

技术图片

 

 

 技术图片

 

 

 技术图片

 

 

 

 

 解决:

[root@localhost vsftpd]# chown virtual /var/www/

 

技术图片

技术图片

 

测试ftpadmin:

技术图片

 

 

 技术图片

 

 

 

 

 有一些权限是肯定有的。我就不一一测试了。

以上是关于centos7-vsftp(虚拟用户)的主要内容,如果未能解决你的问题,请参考以下文章

vsftp虚拟用户

vm虚拟机查看共有多少个用户的命令

centos 7搭建基于虚拟用户的FTP服务

vsftpd虚拟用户

FTP创建虚拟用户

vsftp虚拟用户