Cent OS 安装vsftp并配置虚拟用户

在网站应用中,有的时候客户需要对自己网站的程序文件进行维护,这时我们就需要提供一个ftp帐号给客户使用并且该账户只能管理对应的程序目录。

本次操作基于centos 6.3 64位 操作系统以及vsftp,为了安全vsftp将采用虚拟用户方式

1、首先安装vsftp,标准的yum。。

yum install vsftp


2、配置vsftp虚拟用户口令库文件,一行用户名一行密码的格式。

新建文件

vi /etc/vsftpd/account.txt


编辑内容,例:用户名:abc 密码:123456 用户名:cde 密码:123456


abc
123456
cde
123456


3、使用db_load命令生成vsftpd虚拟用户的认证文件

db_load -T -t hash -f /etc/vsftpd/account.txt /etc/vsftpd/account.db


如果提示命令不存在,请安装db4相关软件

yum install -y db4 db4-utils


生成完毕之后为了安全性,最好设置account.db只允许root用户查看

chmod 600 /etc/vsftpd/account.db


4、建立虚拟用户所需的PAM配置文件

vi /etc/pam.d/vsftpd


插入以下内容。注:如果是32位系统的话将lib64改为lib即可


auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/account
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/account


5、建立虚拟用户宿主用户以及宿主目录(就是建立一个系统用户,并且指定网站所在目录为该用户所有)

useradd -d /home/webs ftpuser


接下来编辑vsftp的配置的文件vasftpd.conf

老规矩,编辑之前备份一下

cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak


vi /etc/vsftpd/vsftpd.conf



#不允许匿名用户访问,默认是允许。
anonymous_enable=NO
#不允许FTP用户离开自己主目录,默认是被注释掉的。
chroot_list_enable=YES
#如果开启了chroot_list_enable=YES,那么一定要开启这个,这条是锁定登录用户只能家目录的位置,如果不开启用户登录时就会报500 OOPS的错。
chroot_list_file=/etc/vsftpd/chroot_list
#注意:/etc/vsftp/chroot_list本身是不存在的,这要建立vim /etc/vsftp/chroot_list,然后将帐户输入一行一个,保存就可以了
#会话超时,客户端连接到ftp但未操作,默认被注释掉,可根据个人情况修改
idle_session_timeout=600
#支持异步传输功能,默认是注释掉的,去掉注释
async_abor_enable=YES
#支持ASCII模式的下载功能,默认是注释掉的,去掉注释
ascii_upload_enable=YES
#支持ASCII模式的上传功能,默认是注释掉的,去掉注释
ascii_download_enable=YES
#FTP的登录欢迎语,本身是被注释掉的,去不去都行
ftpd_banner=Welcome to blah FTP service
#禁止本地用户登出自己的FTP主目录,本身被注释掉,去掉注释
chroot_local_user=YES
#新加以下几行 #设定启用虚拟用户功能。
guest_enable=YES
#指定虚拟用户的宿主用户,就是之前简历的宿主用户
guest_username=ftpuser
# 配置vsftpd使用的PAM模块为vsftpd
pam_service_name=vsftpd
# 设置虚拟账户配置文件的主目录为/etc/vsftpd/user_config(后面创建)
user_config_dir=/etc/vsftpd/user_config
virtual_use_local_privs=YES
#最关键的,每个虚拟用户绑定/home/webs下自己的目录,注意:目录名要和虚拟用户名一致
user_sub_token=$USER


7、建立每个虚拟用户的配置文件,以abc、cde用户为例

mkdir /etc/vsftpd/user_config


vi /etc/vsftpd/user_config/abc


插入以下内容


#用户主目录,该用户将被锁定到该目录
local_root=/home/webs/$USER
# 允许用户浏览FTP目录和下载文件
anon_world_readable_only=NO
#
# 允许用户进行文件改名和删除文件的权限
anon_other_write_enable=YES
#
# 表示用户具有建立和删除目录的权利
anon_mkdir_write_enable=YES
#
# 表示用户可以上传文件
anon_upload_enable=YES
#
# 限制传输速度为300KB/s
anon_max_rate=307200


vi /etc/vsftpd/user_config/cde



#用户主目录,该用户将被锁定到该目录
local_root=/home/webs/$USER
# 允许用户浏览FTP目录和下载文件
anon_world_readable_only=NO
#
# 允许用户进行文件改名和删除文件的权限
anon_other_write_enable=YES
#
# 表示用户具有建立和删除目录的权利
anon_mkdir_write_enable=YES
#
# 表示用户可以上传文件
anon_upload_enable=YES
#
# 限制传输速度为300KB/s
anon_max_rate=307200


8、重启vsftp服务使所有配置生效

1 service vsftpd restart 


注意:新加虚拟用户的话需要重新生成认证文件。。。。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值