允许ftp访问,但在Ubuntu上禁用terminal访问

我有2个用户,我想禁用terminal访问,但仍然保持ftp访问。如何实现这一目标?

编辑

忘了提及,我正在使用vsftpd。

Proftpd不会允许nologin shell,只是通过只允许信任的shell用户禁用SSH中的非shell用户:

sshd_config

 AllowUsers toto john chuck morice 

正如我刚才偶然发现的这个post:

使用eg quanta的注释将loginshell设置为/sbin/nologin可能会导致消息的某些login问题(530 Login incorrect) 。 这可能是这个shell没有被注册到系统的结果。 只需将其添加到/etc/shells解决问题。

(相同/ bin / false …)

你可以用下面的命令禁用shell

 usermod -s /sbin/nologin <ftp_user> 

或使用虚拟用户。

由于

proftpd中的RequireValidShell指令默认为ON,需要将/ bin / false添加到/ etc / shells或将RequireValidShellclosures,然后

 usermod -s /bin/false <ftp_user> 

引用: proftpd RequireValidShell指令手册页