linux centos7 vsftpd服务配置虚拟用户

步聚:

1、安装vsftpd虚拟用户需要的软件和认证模块
[root@jack711 ~]# yum install pam* libdb-utils libdb* –skip-broken -y

2、创建虚拟用户临时文件
[root@jack711 ~]# vim /etc/vsftpd/ftpusers.txt
打开vim编辑器输入:
jackftp111 #用户
123456 #密码
jackftp222 #用户
123456 #密码
jackftp333 #用户
123456 #密码

3、生成虚拟用户数据认证文件
[root@jack711 ~]# db_load -T -t hash -f /etc/vsftpd/ftpusers.txt /etc/vsftpd/vsftpd_login.db

4、设置认证文件的权限为755
[root@jack711 ~]# chmod 755 /etc/vsftpd/vsftpd_login.db

5、配置pam认证文件
[root@jack711 ~]# vim /etc/pam.d/vsftpd
在 /etc/pam.d/vsftpd文件中加入下面两行内容:
auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

6、新建一个系统用户(ftpuser)作为虚拟用户的映射,这个用户不用密码、登录。
[root@jack711 ~]# useradd ftpuser -s /sbin/nologin

7、创建虚拟用户配置文件所放置的目录
[root@jack711 ~]# mkdir -p /etc/vsftpd/vsftpd_user_conf

8、设置vsftpd配置文件
[root@jack711 ~]# vim /etc/vsftpd/vsftpd.conf
在配置文件/etc/vsftpd/vsftpd.conf中的末尾加入以下内容:
pam_service_name=vsftpd #虚拟用户启用pam认证
guest_enable=YES #启用虚拟用户
guest_username=ftpuser #映射虚拟用户到系统用ftpuser
user_config_dir=/etc/vsftpd/vsftpd_user_conf #设置虚拟用户配置文件所在的目录
virtual_use_local_privs=YES #yes为虚拟用户拥有本地用户的权限

9、为每个虚拟用户创建配置文件
[root@jack711 ~]# vim /etc/vsftpd/vsftpd_user_conf/jackftp111
加入内容为:
local_root=/home/ftpuser/jackftp111 #虚拟用户家目录路径
write_enable=YES #允许虚拟用户有写得权限
anon_world_readable_only=YES #允许匿名用户可以下载和读取的权限
anon_upload_enable=YES #允许匿名用户有上传文件权限,在write_enable=YES时有效
anon_mkdir_write_enable=YES #允许匿名用户有创建目录权限write_enable=YES时有效
anon_other_write_enable=YES #允许匿名用户有其他权限,在write_enable=YES时有效

[root@jack711~]# vim /etc/vsftpd/vsftpd_user_conf/jackftp222
加入内容为:
local_root=/home/ftpuser/jackftp222
write_enable=YES
anon_world_readable_only=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES

[root@jack711 ~]# vim /etc/vsftpd/vsftpd_user_conf/jackftp333
加入内容为:
local_root=/home/ftpuser/jackftp333
write_enable=YES
anon_world_readable_only=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES

10、创建虚拟用户各自的家目录
[root@jack711 ~]# mkdir -p /home/ftpuser/jackftp111
[root@jack711 ~]# mkdir -p /home/ftpuser/jackftp222
[root@jack711 ~]# mkdir -p /home/ftpuser/jackftp333

11、设置权限
[root@jack711 ~]# chown -R ftpuser:ftpuser /home/ftpuser

12、重启vsftpd服务
[root@jack711 ~]# systemctl restart vsftpd

你可能感兴趣的:(linux centos7 vsftpd服务配置虚拟用户)