|NO.Z.00023|——————————|^^ 部署 ^^|——|Linux&VSFTP服务.V05|——|VSFTP部署|虚拟验证|

一、虚拟用户验证实验(待验证):
### --- 建立FTP的虚拟用户的用户数据库文件(在/etc/vsftpd)

[root@server21 ~]# vim /etc/vsftpd/vsftpd.user
a1                                                          // 注:该文件名可以随时定义,文件内容格式,奇数行用户,偶数行密码
123456
a2
123456
a3
123456
~~~     配置数据库登录验证的数据库文件

[root@server21 ~]# db_load -T -t hash -f /etc/vsftpd/vsftpd.user /etc/vsftpd/vsftpd.db  //-T:将普通文件转换为数据库文件,-t:使用什么加密类型,-f:指定要转换的原文件
[root@server21 ~]# ll /etc/vsftpd/                          // 将用户密码的存放文本转化为数据库类型,并使用hash加密
-rw-r--r-- 1 root root 12288 Feb  4 11:01 vsftpd.db
~~~     修改文件权限为600,保证其安全性

[root@server21 ~]# chmod 600 /etc/vsftpd/vsftpd.db 
### --- 创建FTP虚拟用户的映射用户,并制定其用户家目录
~~~     创建virtual用户作为ftp的虚拟用户的映射用户
~~~		不需要设置密码,只需要virtual为用户提供一个家目录

[root@server21 ~]# useradd -d /var/ftproot -s /sbin/nologin virtual
### --- 建立支持迅疾用户的PAM认证文件,添加虚拟用户支持
~~~     使用模板生成自己的认证配置文件,方便一会调用

[root@server21 ~]# cp -a /etc/pam.d/vsftpd /etc/pam.d/vsftpd.pam  
~~~     编辑新生成的文件,vsftpd.pam(清空原来内容,添加下列两行)
[root@server21 ~]# vim /etc/pam.d/vsftpd.pam 
auth    required        pam_userdb.so   db=/etc/vsftpd/vsftpd       // db已经声明了调用数据库文件,所以vsftpd不需要加后缀
account required        pam_userad.so   db=/etc/vsftpd/vsftpd
 
~~~     在vsftpd.conf文件中添加支持配置
~~~     修改:
[root@server21 ~]# vim /etc/vsftpd/vsftpd.conf
pam_service_name=vsftpd.pam
~~~     添加:
guest_enable=YES                                            // 开启匿名用户
guest_username=virtual                                      // 匿名用户的隐射用户是谁
user_config_dir=/etc/vsftpd/dir                             // 匿名用户的配置目录在哪里
~~~     提前创建dir目录

[root@server21 ~]# mkdir /etc/vsftpd/dir
### --- 为虚拟用户创建独立的配置文件,启动服务并测试
~~~     注:做虚拟用户配置文件设置时,将主配置文件中自定义的匿名用户相关设置注释掉

[root@server21 ~]# vim /etc/vsftpd/vsftpd.conf              // 注释如下内容
#anon_upload_enable=YES 
#anon_mkdir_write_enable=YES            
#anon_other_write_enable=YES
~~~     用户a1可以上传:
[root@server21 ~]# vim /etc/vsftpd/dir/a1
anon_upload_enable=YES                                      // 允许上传文件
 
~~~     用户a2可以创建目录或文件
[root@server21 ~]# vim /etc/vsftpd/dir/a2
anon_mkdir_write_enable=YES                                 // 允许创建目录

~~~     用户a3可以修改文件名:
[root@server21 ~]# vim /etc/vsftpd/dir/a3
anon_upload_enable=YES                                      // 允许上传文件(为了覆盖开启的)
anon_other_write_enable=YES                                 // 允许重名和删除文件/覆盖
~~~     注:给映射用户的家目录设置o+r让虚拟用户有读权限
[root@server21 ~]# chmod o+r /var/ftproot/
 
~~~     重启服务
[root@server21 ~]# service vsftpd restart
### --- 客户端测试

[root@server22 ~]# ftp 20.20.20.21
Name (20.20.20.21:root): a1
Password:123456
[root@server22 ~]# ftp 20.20.20.21
Name (20.20.20.21:root): a2
Password:123456
[root@server22 ~]# ftp 20.20.20.21
Name (20.20.20.21:root): a3
Password:123456

 
 
 
 
 
 
 
 
 

Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
                                                                                                                                                   ——W.S.Landor

 

 

posted on   yanqi_vip  阅读(10)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

导航

统计

点击右上角即可分享
微信分享提示