centos7下vsftpd只允许用户登录ftp服务,不允许登录系统。

一、禁止selinux和firewalld
sed -i s’/SELINUX=enforcing/SELINUX=disabled/’ /etc/sysconfig/selinux
sed -i s’/SELINUX=enforcing/SELINUX=disabled/’ /etc/selinux/config
在这里插入图片描述
centos7下vsftpd只允许用户登录ftp服务,不允许登录系统。_第1张图片
selinux需要重启才生效

centos7下vsftpd只允许用户登录ftp服务,不允许登录系统。_第2张图片
重启完后查看seliunx是否禁用
在这里插入图片描述
二、搜索yum软件库中,有没有vsftpd服务包。
centos7下vsftpd只允许用户登录ftp服务,不允许登录系统。_第3张图片
三、使用yum正常安装vsftp服务,并启动服务。
yum -y install vsftpd
centos7下vsftpd只允许用户登录ftp服务,不允许登录系统。_第4张图片
centos7下vsftpd只允许用户登录ftp服务,不允许登录系统。_第5张图片
四、创建zhangsan、lisi两个测试账号,并创建密码和指定shell。
useradd -s /bin/false zhangsan
useradd -s /sbin/nologin lisi

注意:/bin/fasle、/sbin/nologin、/usr/sbin/nologin这几种shell都是让用户不能登录系统。
在这里插入图片描述
centos7下vsftpd只允许用户登录ftp服务,不允许登录系统。_第6张图片
此时,我们尝试登录ftp,会提示530 Login incorrect.错误信息。
centos7下vsftpd只允许用户登录ftp服务,不允许登录系统。_第7张图片
在这里插入图片描述
这里需要移除或者注释ftpusers里用户和启用userlist_enable=NO,才能访问FTP服务,不然提示530 Permission denied.权限拒绝。
centos7下vsftpd只允许用户登录ftp服务,不允许登录系统。_第8张图片
修改配置
sed -i s’/root/#root/’ /etc/vsftpd/ftpusers
sed -i s’/userlist_enable=YES/userlist_enable=NO/’ /etc/vsftpd/vsftpd.conf
在这里插入图片描述
在这里插入图片描述
别忘了改完配置重启服务
systemctl restart vsftpd
centos7下vsftpd只允许用户登录ftp服务,不允许登录系统。_第9张图片
五、总结,需要修改如下配置,才能达到(只允许用户登录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认证
centos7下vsftpd只允许用户登录ftp服务,不允许登录系统。_第10张图片
六、测试效果。

1、可以登录FTP服务。
centos7下vsftpd只允许用户登录ftp服务,不允许登录系统。_第11张图片

2、不能登录系统。
centos7下vsftpd只允许用户登录ftp服务,不允许登录系统。_第12张图片
centos7下vsftpd只允许用户登录ftp服务,不允许登录系统。_第13张图片

你可能感兴趣的:(vsftpd)