Linux系统基础学习——————vsftpd
1.虚拟用户
搭建好yum仓库,安装好vsftpd ftp vim。
[root@localhost ~]# yum -y install vsftpd ftp vim
然后在创建用于登入的虚拟用户的账号和密码的文本
[root@localhost ~]# vim /etc/vsftpd/xuni.txt
——vim—— // 随便创建2个用户
abc
123
web
456
——vim————
为虚拟用户配置权限
[root@localhost ~]# mkdir /etc/vsftpd/xuni_dir/
[root@localhost ~]# cd /etc/vsftpd/xuni_dir/
[root@localhost ~]# chmod -R 755 /etc/vsftpd/xuni_dir/
[root@localhost xuni_dir]# touch web
[root@localhost xuni_dir]# vim abc
——————vim——————————————————————————
anon_upload_enable=YES //给予虚拟用户上传权限
anon_mkdir_write_enable=YES //给予虚拟用户创建权限
anon_other_write_enable=YES //给予虚拟用户删除权限
——————vim——————————————————————————
利用哈希算法对我们的虚拟用户文件进行加密
[root@localhost vsftpd]# db_load -T -t hash -f /etc/vsftpd/xuni.txt /etc/vsftpd/xuni.db、
然后我需要创建一个用于映射虚拟以后的系统的用户(一般需要让这个用户不可以登入 设置为系统用户)
[root@localhost ~]# useradd -d /home/xuni -s /sbin/nologin xuni
[root@localhost xuni]# chmod 755 /home/xuni/
在修改vsftpd的PAM认证文件
[root@localhost vsftpd]# vim /etc/pam.d/vsftpd
——————vim———————— //里面的内容直接注释掉
#%PAM-1.0
#session optional pam_keyinit.so force revoke
#auth required pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed
#auth required pam_shells.so
#auth include password-auth
#account include password-auth
#session required pam_loginuid.so
#session include password-auth
auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/xuni
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/xuni
——————vim————————
xuni就是刚刚那个用于存放虚拟以后的文件,不用加后缀
然后开始修改vsftpd的主配置文件
[root@localhost vsftpd]# vim /etc/vsftpd/vsftpd.conf
——————vim————————
#####在原有的文件里面加上########
anonymous_enable=NO #因为要进行虚拟用户,把匿名登入禁了
guest_enable=YES #开启虚拟用户
guest_username=xuni #ftp虚拟用户映射的用户
allow_writeable_chroot=YES #允许对禁锢的FTP根目录执行写入操作,而且不拒绝用户的登录请求
pam_service_name=vsftpd #(原有的存在的) pam认证的文件
user_config_dir=/etc/vsftpd/xuni_dir #存放用户权限的文件夹
防火墙一般是用于过滤从外网进入内网的流量,所以要开放vsftpd的端口
[root@localhost xuni_dir]# firewall-cmd --permanent --add-service=ftp
success
[root@localhost xuni_dir]# firewall-cmd --reload //重新启动防火墙策略
success
可能出现的问题:一般登入不了大多情况是因为没有给予文件夹一定的权限。