vsftpd 的安装/虚拟用户设置

vsftpd 的安装

Centos都自带vsftpd,可以通过:rpm -qa|grep vsftp,来查询下是否已经安装了。如果没装,可以用的以下命令来安装
yum install vsftpd
启用vsftdp
service vsftpd start

/etc/init.d/vsftpd start
停用:service vsftpd stop
重启:service vsftpd restart
查看vsftpd状态:
service vsftpd status
查看vsftpd启动状态:
chkconfig --list vsftpd
设置vsftpd 2345为启动状态:
chkconfig --level 2345 vsftpd on

虚拟用户设置

创建虚拟用户需安装db4,db4-utils,db4-devel
可用rpm -qa|grep db4命令查询是否已安装,如果缺少,则安装相应的包,yum安装即可
Centos5.5中已默认安装db4。
db4-utils,db4-devel可通过以下命令安装
yum install db4-utils
yum install db4-devel
创建一个文件(名字随便)
vi /home/fei
格式为第一行用户名第二行密码第三行用户名第四行密码,以此类推
于是,我们/home/fei文件的内容为
abc1
abc1
abc2
abc2
生成数据库
db_load -T -t hash -f /home/fei /etc/zhulingfei.db
设置一下数据库文件的访问权限
chmod 600 /etc/zhulingfei.db
修改主配置文件/etc/pam.d/vsftpd来配置认证关系
vi /etc/pam.d/vsftpd
把里面的全部禁用或删除,禁用在每句最前面加上#,然后在最后加入
auth required /lib/security/pam_userdb.so db=/etc/zhulingfei
account required /lib/security/pam_userdb.so db=/etc/zhulingfei
建立一个本地帐户作为映射(如zhulingfei)并为其分配目录(/home/zhulingfei)并为了安全让他无法登录shell
[root@localhost ~]#useradd -d /home/zhulingfei -s /sbin/nologin zhulingfei
[root@localhost ~]# passwd zhulingfei
Changing password for user zhulingfei.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
[root@localhost ~]#

chown -R zhulingfei:ftp /home/zhulingfei

记得要给/home/zhulingfei这个目录权限,否则会导致无法登录失败
chmod -R 777 /home/zhulingfei
在/home/zhulingfei创建用户目录
mkdir /home/zhulingfei/abc1
mkdir /home/zhulingfei/abc2
创建/etc/vsftpd_user_conf
mkdir /etc/vsftpd_user_conf
创建abc1
vi /etc/vsftpd_user_conf/abc1
abc1的内容为
write_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
local_root=/home/zhulingfei/abc1
创建abc2(内容根据自己想要分配的权限自己调整)
write_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
local_root=/home/zhulingfei/abc2
编辑/etc/vsftpd/vsftpd.conf
listen=YES
anonymous_enable=NO
dirmessage_enable=YES
xferlog_enable=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
chroot_local_user=YES
guest_enable=YES
guest_username=zhulingfei(刚刚新建的本地帐户,这里就是和刚刚新建的本地用户作映射的地方)
user_config_dir=/etc/vsftpd_user_conf
pam_service_name=vsftpd(对应/etc/pam.d下的vsftpd文件)
local_enable=YES
secure_chroot_dir=/var/run/vsftpd
创建一个/var/run/vsftpd文件夹
mkdir /var/run/vsftpd
重启vsftpd
service vsftpd restart
完成。
PS:增加新用户在/home/fei中添加,添加后使用以下命令更新
db_load -T -t hash -f /home/fei /etc/zhulingfei.db
如新用户无法登陆,执行一次
chown -R zhulingfei:zhulingfei /home/zhulingfei
重启vsftpd

版权所有:《太阳花工作室》 => 《vsftpd 的安装/虚拟用户设置
本文地址:http://bg.artuion.com/linux/39.html
除非注明,文章均为 《太阳花工作室》 原创,欢迎转载!转载请注明本文地址,谢谢。