我有一个 Linux 安装(Ubuntu 12.04),不由我一个人管理。我已使用以下方式限制用户的 SSH 访问权限:
/usr/sbin/usermod -s /bin/false my_user
这既不允许 SFTP 访问,也不允许控制台访问。
然而今天,我发现拥有此 shell 的用户确实具有 SFTP 访问权限,而我很确定他们过去没有访问权限。
是否有配置更改导致这种情况发生?不幸的是,我无法联系其他任何人来查看是否有任何意外更改。
答案1
你可能
Subsystem sftp internal-sftp
和/或
Match Group sftpusers
ChrootDirectory %h
ForceCommand internal-sftp
AllowTcpForwarding no
或者
Match User username
ChrootDirectory %h
ForceCommand internal-sftp
配置将允许用户进行 sftp 访问,即使他们有 /bin/false shell。如果您没有设置它,您可以随时审计/var/log/audit.log
etc,通过查找谁对 /etc/ssh/sshd_config 进行了编辑(每个人都使用 sudo,不是吗)并重新启动 sshd 服务来查看是谁做的。