CentOS 6.3安装vsftpd虚拟用户架设
声明:本文章不涉及selinux和iptables设置,以下配置是在关闭selinux和iptables的前提下进行。
临时关闭selinux方法:setenforce 0
临时关闭iptables方法:service iptables stop
永久关闭selinux方法:修改/etc/selinux/config
selinux=disabled
关闭iptables方法:iptables -F
service iptables save
架设目标:
1、对同一目录建立三种不同权限的用户:/data/upload
user1权限:下载;
user2权限:上传、下载,不能修改和删除
user3权限:全部权限
2、新增拥有全部权限用户user4,存放目录是:/data/user4
规划:
与虚拟用户对应的系统用户:vuser
虚拟用户上传文件存放目录:/data/upload
虚拟用户配置文件存放目录:/etc/vsftpd/vconf
日志文件:/var/log/vsftpd.log
步骤:
一、备份vsftpd主配置文件
cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak
修改主配置文件:/etc/vsftpd/vsftpd.conf
可以用:g/#/d删除以含#号的所有行
清单如下:
anonymous_enable=no
write_enable=no
anon_upload_enable=no
anon_mkdir_write_enable=no
anon_other_write_enable=no
local_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=YES
xferlog_file=/var/log/vsftpd.log
chroot_local_user=yes
pam_service_name=vsftpd
user_config_dir=/etc/vsftpd/vconf
tcp_wrappers=YES
max_clients=100
max_per_ip=10
二、增加用户vuser,并建立文件上传存放目录
useradd -d /data/upload -s /sbin/nologin vuser
三、建立虚拟用户配置文件目录和配置文件
mkdir /etc/vsftpd/vconf
vim /etc/vsftpd/vconf/user1
清单如下:
guest_enable=yes
guest_username=vuser
local_root=/data/upload
anon_world_readable_only=no
#write_enable=yes
#anon_upload_enable=yes
#anon_mkdir_write_enable=yes
#anon_other_write_enable=yes
anon_max_rate=1000000
vim /etc/vsftpd/vconf/user2
清单如下:
guest_enable=yes
guest_username=vuser
local_root=/data/upload
anon_world_readable_only=no
write_enable=yes
anon_upload_enable=yes
anon_mkdir_write_enable=yes
#anon_other_write_enable=yes
anon_max_rate=1000000
vim /etc/vsftpd/vconf/user3
清单如下:
guest_enable=yes
guest_username=vuser
local_root=/data/upload
anon_world_readable_only=no
write_enable=yes
anon_upload_enable=yes
anon_mkdir_write_enable=yes
anon_other_write_enable=yes
anon_max_rate=1000000
四、创建虚拟用户数据库
1、touch /etc/vsftpd/vuser.txt
echo "user1" >>/etc/vsftpd/vuser.txt
echo "123456" >>/etc/vsftpd/vuser.txt
echo "user2" >>/etc/vsftpd/vuser.txt
echo "123456" >>/etc/vsftpd/vuser.txt
echo "user3" >>/etc/vsftpd/vuser.txt
echo "123456" >>/etc/vsftpd/vuser.txt
2、生成数据库
db_load -T -t hash -f /etc/vsftpd/vuser.txt /etc/vsftpd/vuser.db
chmod 600 /etc/vsftpd/vuser.*
五、配置pam
vim /etc/pam.d/vsftpd
其余的都注释掉,增加下列两行:
auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vuser
account required /lib/security/pam_userdb.so db=/etc/vsftpd/vuser
六、创建日志文件:
touch /var/log/vsftpd.log
七、新增用户user4
1、创建用户文件存放目录并设置权限:
mkdir /data/user4
chmod -R 700 /data/user4
chown -R vuser:vuser /data/user4
2、追加新用户名和密码并生成数据库
echo "user4" >>/etc/vsftpd/vuser.txt
echo "123456" >>/etc/vsftpd/vuser.txt
db_load -T -t hash -f /etc/vsftpd/vuser.txt /etc/vsftpd/vuser.db
3、拷贝老用户配置文件到新用户user4,并修改local_root=/data/user4
cp /etc/vsftpd/vconf/user3 /etc/vsftpd/vconf/user4
完毕!
本文出自 “水滴石穿” 博客,谢绝转载!