您的位置:首页 > 运维架构 > Shell

关于ftp用户的shell说明

2015-05-20 00:00 169 查看
摘要: 为什么有的linux,可以使用/sbin/nologin的用户登陆ftp,而有的不可以呢?

关于ftp用户的shell说明

我们都知道,安装好ftp软件,默认情况下,无论是vsftp,还是proftp,拥有可以登陆linux的用户,都是可以登陆ftp的,只会进入自己的家目录,那么有一个问题就需要考虑了,在linux上创建一个用于ftp的普通用户,而且还是可以登陆的,这对于安全来说是个隐患,那么可不可以使用nologin的用户登陆ftp呢?又有哪些需要注意的呢?

答案当然是可以的,有的网友说,我的linux系统上可以,而有的不可以,是什么原因导致的呢?

接下来,我们要学习/etc/shells的作用了

/etc/shells记录了该操作系统下,用户可以使用的shell(Centos 6.4 x86_64 /bin/sh、/bin/bash、/bin/dash、/sbin/nologin),有的操作系统则不尽相同。

登陆和应用程序会根据/etc/shells文件来确定一个用户的shell是否有效,你可以测试下,把某个用户的shell改为不正确的,如:/sbin/login,则该用户无法登陆,ftp也无法登陆,然后在执行touch /sbin/login,chmod 755 /sbin/login,又可以登陆ftp了,那么这里的/sbin/login和/sbin/nologin作用是一样的。

所以,如果想让普通用户不能登陆系统,而可以登陆ftp,先把用户的shell改为/sbin/nologin,并确保/sbin/nologin存在于/etc/shells。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息