欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

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的配置有关系。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对的支持。