如何防止其他用户创建新的 SSH 会话?

如何防止其他用户创建新的 SSH 会话?

当我在 Linux 测试服务器(Debian 11)上工作时,我拥有 root 权限,并且希望在工作期间阻止其他用户打开到该服务器的新会话。

是否可以?

答案1

当您以 root 身份登录时,您可以创建一个名为/var/run/nologin(历史上/etc/nologin)的文件,这应该会阻止非 root 用户登录。当您以 root 身份完成工作后,您可以删除该文件以恢复其他用户的访问权限。

请参阅手册页nologin(5):

姓名

nologin - 防止非特权用户登录系统

描述

如果文件/etc/nologin存在并且可读,login(1) 将只允许 root 访问。其他用户将看到该文件的内容,并且他们的登录将被拒绝。

至少在某些系统上,这是通过 PAMpam_nologin模块进行控制的。在 Debian 上,该模块是和的第一个account条目,位于包含之前:loginsshdcommon_account

# Disallow non-root logins when /etc/nologin exists.
account    required     pam_nologin.so

答案2

是的,这是可能的。请参阅man sshd_config参考资料 来了解如何限制谁可以进行身份​​验证。

您可以AllowGroups root手动将该指令添加到 sshd 配置中,然后重新加载 sshd 服务。

相关内容