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、配置文件是否打错单词的

 

 

posted @ 2022-04-19 23:22  xiao智  阅读(611)  评论(0编辑  收藏  举报