vsftp 虚拟用户
2020年全国职业院校技能大赛:网络系统管理项目-模块A--样题(二)
需求分析:
1、需求指定共享目录
2、指定登录用户
3、上传所属者
操作步骤:
1、安装vsftpd
2、创建虚拟用户&&生成虚拟用户数据文件
3、配置pam验证文件
4、创建一个系统用户
5、配置虚拟用户配置文件&&配置vsfptd.conf文件
实验环境:
centos:7 x2
server:192.168.220.20
client:192.168.220.21
1、安装vsftpd
[root@server ~]#yum install vsftpd -y
2、创建虚拟用户&&生产虚拟用户数据文件
vim /etc/vsftpd/users.list
#奇数是账号,偶数是密码,以此类推
ftpuser
1
#db_load 将创建的虚拟用户users.list中的密码加密,并生产users.db给系统使用,生产后可以删除users.list
[root@server ~]# db_load -T -t hash -f /etc/vsftpd/users.list /etc/vsftpd/users.db
#对虚拟用户数据库文件授权,
[root@server ~]# ll /etc/vsftpd/users.db
3、配置pam验证文件
vim /etc/pam.d/vsftpd 在行首插入如下,其他的注释
auth required pam_userdb.so db=/etc/vsftpd/virtusers account required pam_userdb.so db=/etc/vsftpd/virtusers #db=后面的文件要与步骤二中的一致
4、创建一个系统用户
[root@server ~]# useradd webuser -s /sbin/nologin
5、配置虚拟用户配置文件&&配置vsfptd.conf文件
5.1:配置虚拟用户配置文
[root@server ~]# mkdir /etc/vsftpd/vsftpd_user_conf
[root@server ~]# vim /etc/vsftpd/vsftpd_user_conf/ftpuser
创建虚拟用户根目录
[root@server ~]# mkdir -p /home/webuser/ftpuser
[root@server ~]# chown webuser. /home/webuser/ftpuser
5.2:配置vsfptd.conf文件
配置:vim /etc/vsftpd/vsftpd.conf
anonymous_enable=NO local_enable=YES write_enable=YES local_umask=022 dirmessage_enable=YES xferlog_enable=YES connect_from_port_20=YES xferlog_std_format=YES listen=NO listen_ipv6=YES pam_service_name=vsftpd userlist_enable=YES tcp_wrappers=YES
# ---------virtusers config-------------------- # 启用pam认证 pam_service_name=vsftpd # 启用虚拟用户 guest_enable=YES # 虚拟用户映射系统用户webuser guest_username=webuser # 虚拟用户与本地用户权限相同 virtual_use_local_privs=YES # 虚拟用户配置文件目录 user_config_dir=/etc/vsftpd/vsftpd_user_conf # -----------(可选)访问权限控制---------------- # 将用户目录限制为根目录(看不到家目录的其他目录) allow_writeable_chroot=YES # 是否禁止本地用户切换到家目录上级目录,绑定家目录为用户的根目录 chroot_local_user=NO # 是否启用chroot列表文件,写入文件中的用户将锁定家目录 chroot_list_enable=NO # 指定用户列表文件的文件路径 chroot_list_file=/etc/vsftpd/chroot_list # ------------(可选) 被动模式------------------- # 启用被动模式 pasv_enable=YES # 端口范围 pasv_min_port=30000 pasv_max_port=31000 # Connect_from_port_20=NO 需要修改上面的此项
重启vsftp服务,客户端测试
systemctl restart vsftpd.service
client:(因为vsftp是s/c架构,所以客服端还要手动装一下ftp连接)
[root@localhost ~]# yum install ftp -y
测试上传:
这里就搭建完成啦!!!
如果:出现报错
1、检查selinux是否关闭
临时关闭:
永久关闭:
[root@server vsftpd]# vim /etc/selinux/config
2、配置文件是否打错单词的
本文来自博客园,作者:xiao智,转载请注明原文链接:https://www.cnblogs.com/yuwen01/p/16167975.html