vsftpd用户禁止ssh登陆的实现方法
程序员文章站
2022-05-12 17:53:14
前言
vsftp 是一款使用方便,且安全的ftp服务器端的软件。可以使用系统用户登陆,也可以使用虚拟用户登陆,进行登陆。 如果使用系统用户登陆的时候,默认情况,该用户可以...
前言
vsftp 是一款使用方便,且安全的ftp服务器端的软件。可以使用系统用户登陆,也可以使用虚拟用户登陆,进行登陆。 如果使用系统用户登陆的时候,默认情况,该用户可以登陆到系统中。意思是,可以登陆ftp服务器,也可以登陆到系统的。这样有时候是不安全的,因为登陆系统,就可以看到很多文件。
创建一个系统账号,仅仅让该账号登陆ftp
第一: 在文件 /etc/bash 中添加 /bin/false
cat /etc/shells /bin/sh /bin/bash /usr/bin/sh /usr/bin/bash /bin/false
第二: 指定用户(zhangsan)使用 /bin/false
usermod -s /bin/false zhangsan
经过两步设置后就可以让用户仅仅只能是用 ftp服务器,并禁止用登陆系统。
备注
- /bin/false 和 /sbin/nologin是有所不同的。共同的部分是,用户都无法登陆系统。方式可能不同。centos7环境下试了 /bin/fase登陆的时候无提示,直接退出。
- 之前配置ftp的时候,只用使用 /sbin/nologin ,似乎就可以实现想要的效果,现在则需要用 /bin/false 来解决。
可能的原因
如果之前确实可以用 /sbin/nologin 实现,系统用户仅仅可以登陆ftp, 那我现在环境不行,说明这个和系统设置和vsftp的配置有关系。
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对的支持。
上一篇: Linux 挂载分区的方法
下一篇: GO语言常用的文件读取方式