一、禁止selinux和firewalld
sed -i s’/SELINUX=enforcing/SELINUX=disabled/’ /etc/sysconfig/selinux
sed -i s’/SELINUX=enforcing/SELINUX=disabled/’ /etc/selinux/config
selinux需要重启才生效
重启完后查看seliunx是否禁用
二、搜索yum软件库中,有没有vsftpd服务包。
三、使用yum正常安装vsftp服务,并启动服务。
yum -y install vsftpd
四、创建zhangsan、lisi两个测试账号,并创建密码和指定shell。
useradd -s /bin/false zhangsan
useradd -s /sbin/nologin lisi
注意:/bin/fasle、/sbin/nologin、/usr/sbin/nologin这几种shell都是让用户不能登录系统。
此时,我们尝试登录ftp,会提示530 Login incorrect.错误信息。
这里需要移除或者注释ftpusers里用户和启用userlist_enable=NO,才能访问FTP服务,不然提示530 Permission denied.权限拒绝。
修改配置
sed -i s’/root/#root/’ /etc/vsftpd/ftpusers
sed -i s’/userlist_enable=YES/userlist_enable=NO/’ /etc/vsftpd/vsftpd.conf
别忘了改完配置重启服务
systemctl restart vsftpd
五、总结,需要修改如下配置,才能达到(只允许用户登录ftp服务,不允许登录系统。)的效果。
1、启用userlist_enable=NO临时访问
sed -i s’/userlist_enable=YES/userlist_enable=NO/’ /etc/vsftpd/vsftpd.conf
2、添加zhangsan、lisi用户到user_list文件中。
echo zhangsan >> /etc/vsftpd/user_list
echo lisi >> /etc/vsftpd/user_list
3、注释掉pam认证
六、测试效果。
1、可以登录FTP服务。
2、不能登录系统。