码迷,mamicode.com
首页 > 其他好文 > 详细

vstfp虚拟用户配合详细过程

时间:2018-08-07 20:30:36      阅读:154      评论:0      收藏:0      [点我收藏+]

标签:stop   mct   systemctl   images   install   useradd   water   库文件   虚拟用户   

vsftpd 虚拟用户配置

环境准备

[root@linfan ~]#systemctl stop firewalld
[root@linfan ~]#systemctl disable firewalld
[root@linfan ~]# sed -i"s/^SELINUX\=enforcing/SELINUX\=disabled/g" /etc/selinux/config
[root@linfan ~]#setenforce 0

1.安装依赖程序

[root@linfan ~]# cd /etc/yum.repos.d/
[root@linfan yum.repos.d]# wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
[root@linfan yum.repos.d]# yum clean all
[root@linfan yum.repos.d]# yum -y install epel-release
[root@linfan yum.repos.d]# yum -y install vsftpd

2.创建文本格式的用户、密码列表

[root@linfan yum.repos.d]# cd
[root@linfan ~]# cat >> /etc/vsftpd/vu.list <<EOF
> lin
> 123
> fan
> 456
> EOF
[root@linfan ~]# cat /etc/vsftpd/vu.list
lin
123
fan
456

3.安装db4工具

[root@linfan ~]# yum -y install db4*

4.将刚创建的用户、密码文件使用db4工具转化成数据库文件

[root@linfan ~]# db_load -T -t hash -f /etc/vsftpd/vu.list /etc/vsftpd/vu.db

// -T 表示转换 -t表示加密方式hash的算法加密

5.为提高虚拟账户的文件用户的安全性,设置权限600 ,防止数据外泄

[root@linfan ~]# db_load -T -t hash -f /etc/vsftpd/vu.list /etc/vsftpd/vu.db
[root@linfan ~]# chmod 600 /etc/vsftpd/vu.*
[root@linfan ~]# ll /etc/vsftpd/vu.*
-rw-------. 1 root root 12288 Aug  7 18:56 /etc/vsftpd/vu.db
-rw-------. 1 root root    16 Aug  7 18:54 /etc/vsftpd/vu.list

6.添加虚拟用户的映射账户、创建ftp根目录。例如要将使用的ftp根目录设置为/var/ftproot,映射账户名称为vftp

[root@linfan ~]# useradd -d /var/ftproot -s /sbin/nologin vftp
[root@linfan ~]# chmod 755 /var/ftproot/
[root@linfan ~]# ll -d /var/ftproot/
drwxr-xr-x. 3 vftp vftp 78 Aug  7 18:57 /var/ftproot/

7.为虚拟用户建议PAM认证

[root@linfan ~]#  cp /etc/pam.d/vsftpd /etc/pam.d/vsftpd.bak
[root@linfan ~]# vim /etc/pam.d/vsftpd
#%PAM-1.0
auth required pam_userdb.so db=/etc/vsftpd/vu
account required pam_userdb.so db=/etc/vsftpd/vu

8.修改配置vftpd文件,添加虚拟用户支持

[root@linfan ~]# cat >> /etc/vsftpd/vsftpd.conf <<EOF
> guest_enable=YES
> guest_username=vftp
> user_config_dir=/etc/vsftpd/vusers_dir
> allow_writeable_chroot=YES
> EOF

9.创建目录/etc/vsftpd/vusers_dir与前面建立对应关系

[root@linfan ~]# mkdir /etc/vsftpd/vusers_dir
[root@linfan ~]#  ll /etc/vsftpd/
total 32
-rw-------. 1 root root   125 Aug  3  2017 ftpusers
-rw-------. 1 root root   361 Aug  3  2017 user_list
-rw-------. 1 root root  5133 Aug  7 18:59 vsftpd.conf
-rwxr--r--. 1 root root   338 Aug  3  2017 vsftpd_conf_migrate.sh
-rw-------. 1 root root 12288 Aug  7 18:56 vu.db
-rw-------. 1 root root    16 Aug  7 18:54 vu.list
drwxr-xr-x. 2 root root     6 Aug  7 18:59 vusers_dir

10.设置用户lin可上传和创建目录,设置fan用户只有默认下载权限,只需创建一个名为fan的空文件即可

[root@linfan ~]# cat >> /etc/vsftpd/vusers_dir/lin <<EOF
> anon_upload_enable=YES
> anon_mkdir_write_enable=YES
> EOF
[root@linfan ~]# touch /etc/vsftpd/vusers_dir/fan

11.启动ftp服务,检查端口是否开启

[root@linfan ~]# ss -antl
State      Recv-Q Send-Q Local Address:Port               Peer Address:Port              
LISTEN     0      128          *:22                       *:*                  
LISTEN     0      100    127.0.0.1:25                       *:*                  
LISTEN     0      32          :::21                      :::*                  
LISTEN     0      128         :::22                      :::*                  
LISTEN     0      100        ::1:25                      :::*       

12.在ftp客户端登录lin用户创建文件 在服务端验证

技术分享图片

服务端验证:

[root@linfan ftproot]# ls
4  helleo  hello

经实验得知:

lin用户有下载和创建文件的权限;
fan 用户只可以下载文件,没有创建文件的权限

vstfp虚拟用户配合详细过程

标签:stop   mct   systemctl   images   install   useradd   water   库文件   虚拟用户   

原文地址:http://blog.51cto.com/13858192/2155897

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!