shell /bin/false 允许 SFTP 访问 [Ubuntu 12.04]

Krt*_*lta 6 linux ubuntu user-permissions

我有一个 Linux 安装(Ubuntu 12.04),不仅由我管理。我使用以下方式限制了对用户的 SSH 访问

/usr/sbin/usermod -s /bin/false my_user
Run Code Online (Sandbox Code Playgroud)

这既不允许 SFTP 访问,也不允许控制台访问。

然而今天,我发现使用这个 shell 的用户确实有 SFTP 访问权限,而且我很确定他们过去没有访问权限。

是否有允许这样做的配置更改?不幸的是,我无法联系其他任何人以查看是否进行了任何意外更改。

use*_*517 8

可能是你有

Subsystem       sftp    internal-sftp
Run Code Online (Sandbox Code Playgroud)

和/或

Match Group sftpusers
   ChrootDirectory %h
   ForceCommand internal-sftp
   AllowTcpForwarding no
Run Code Online (Sandbox Code Playgroud)

或者

 Match User username
   ChrootDirectory %h
   ForceCommand internal-sftp
Run Code Online (Sandbox Code Playgroud)

配置将允许用户 sftp 访问,即使他们有 /bin/false shell。如果您没有设置它,您可以随时/var/log/audit.log通过查找谁对 /etc/ssh/sshd_config 进行编辑(每个人都使用 sudo 不是他们)来审核etc 以查看谁做了它并重新启动了 sshd 服务。