Centos7 安装部署 Vsftp服务,虚拟用户登录

CentOS 7 安装配置 Vsftp服务,虚拟用户登录

(虚拟用户可以实现上传下载,而其他用户不可以)

安装准备: 关闭SELINUX: 永久关闭(需要重启):vim /etc/selinux/config
SELINUX=disable
临时关闭:setenforce 0

使用yum安装vsftpd: yum -y install vsftpd
备份vsftpd主配置文件: cp /etc/vsftpd/vsftpd.conf{,.bak}
创建虚拟用户密码文件:vim /etc/vsftpd/vir_user (user1 password1)

生成虚拟用户数据库:

    > yum -y install libdb-utils
    > db_load -T -t hash -f /etc/vsftpd/vir_user  /etc/vsftpd/vir_user.db
    > chmod 700 /etc/vsftpd/vir_user.db

配置vsftpd pam验证文件
修改前先备份的文件:cp /etc/pam.d/vsftpd{,.bak}
将auth及account的所有配置行均注释掉,添加如下两行:

vim /etc/pam.d/vsftpd

auth                 required     pam_userdb.so   db=/etc/vsftpd/vir_user 
account              required     pam_userdb.so   db=/etc/vsftpd/vir_user

增加一个系统用户‘virftp’ ,所有虚拟用户都会映射到此用户后对文件系统进行读写操作:

mkdir /ftproot
useradd -d /ftproot -s /sbin/nologin virftp
chown -R virftp:virftp /ftproot

设置vsftpd主配置文件:vim /etc/vsftpd/vsftpd.conf

#禁止匿名用户登录 anonymous_enable=NO
#允许本地用户登录 local_enable=YES
#启用虚拟账户 guest_enable=YES
#把虚拟账户映射到系统账户virftp guest_username=virftp
#使用虚拟用户验证(PAM验证) pam_service_name=vsftpd
#设置存放各虚拟用户配置文件的目录(此目录下与虚拟用户名相同的文件为他的配置文件) user_config_dir=/etc/vsftpd/vsftpd_viruser
#启用chroot时,虚拟用户根目录允许写入 allow_writeable_chroot=YES

前两条按照要求改掉,6-10条配置文件加进去

配置虚拟用户各自的配置文件:
创建‘虚拟用户配置文件’的存放目录:mkdir /etc/vsftpd/vsftpd_viruser/
创建和配置虚拟用户各自的配置文件,文件名称是‘虚拟用户名’:

vim /etc/vsftpd/vsftpd_viruser/user1

#允许写入 write_enable=YES
#允许浏览FTP目录和下载 anon_world_readable_only=NO
#允许虚拟用户上传文件 anon_upload_enable=YES
#允许虚拟用户创建目录 anon_mkdir_write_enable=YES
#允许虚拟用户执行其他操作(如改名、删除) anon_other_write_enable=YES
#上传文件的掩码,如022时,上传目录权限为755,文件权限为644 anon_umask=022
#指定虚拟用户的虚拟目录(虚拟用户登录后的主目录) local_root=/ftproot/admin/

创建虚拟用户的根目录,要保证虚拟用户映射的系统用户,对这个根目录有读写权限:

>  mkdir -p /ftproot/admin/
>  chown -R virftp:virftp /ftproot/admin/

重启vsftpd服务:

> systemctl restart vsftpd
> systemctl enable vsftpd

关闭防火墙或开启“21”号端口:

     systemctl stop firewalld
   或
     firewall-cmd --add-port=21/tcp

利用“FileZilla”工具连接测试

注意:
1:如果虚拟用户和root用户都可以连接上,那么按照题目是不可以的,去虚拟机 cd /etc/vsftpd/ vim ftpusers
把root等所有用户都注释掉就可以实现除可虚拟用户都不可登录
2:在此电脑进行登录虚拟用户,如果不可以进行创建文件夹操作,那么就去虚拟机 输入

setsebool -P allow_ftpd_full_access on
setsebool -P ftp_home_dir on
然后systemctl restart vsftpd重启就好了。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值