如何在 Linux 服务器上创建仅具有远程 ftp 访问权限的用户?

jmb*_*ard 12 users ftp

我正在运行 Ubuntu 10.04 LTS 服务器,我想创建只能从 FTP 访问服务器的用户。

到目前为止我所做的是:

  • 安装 vsftpd
  • 创建新用户,默认登录 shell 设置为 /bin/false

服务器上的普通用户都可以通过 ftp 访问他们的 home 文件夹,但是通过设置它来删除远程 shell 访问的用户/bin/false也无法通过 ftp 登录。

我不明白 shell 访问如何影响vsftpd服务器?如何在不重新启用 shell 的情况下启用 ftp 访问?

更新:
我发现这个参考资料指出我应该使用/sbin/nologin(似乎/usr/sbin/nologin在 Ubuntu 中)并且它不应该影响 ftp 访问,但它在我的情况下不起作用。

jmb*_*ard 13

我不知道回答我自己的问题是否是一个好习惯,但我找到了一个启用 ftp 登录的简单解决方案。

我需要添加行

/usr/sbin/nologin

到文件 /etc/shells.conf 。在这个修改之后,ftp 服务器开始接受来自 shell 设置为 /usr/sbin/nologin 的用户的登录。所以他们无法通过 ssh 登录,但它可以完全按照我的意愿使用 ftp。

感谢您的有益评论。