![为什么本地 root 能够 su 为任何 LDAP 用户?](https://linux22.com/image/611349/%E4%B8%BA%E4%BB%80%E4%B9%88%E6%9C%AC%E5%9C%B0%20root%20%E8%83%BD%E5%A4%9F%20su%20%E4%B8%BA%E4%BB%BB%E4%BD%95%20LDAP%20%E7%94%A8%E6%88%B7%EF%BC%9F.png)
我们在 Active Directory 中设置了一个 LDAP 服务器。当用户以 root 身份登录安装了 LDAP 客户端的 Linux 计算机时,他们能够通过 su 进入任何 Active Directory 帐户,而无需该用户的密码。这是一个很大的安全风险,有人知道这是为什么或如何防止这种情况吗?
不幸的是,防止 root 访问不是一种选择,因为在某些情况下某些用户需要这样做。
答案1
这是标准的 Unix 设计,你无法真正阻止 root 做任何他想做的事情。
更安全的设计是让用户使用sudo
sudo 配置,并允许用户仅执行他们需要执行的特定任务。Unrestrictedsudo
应该仅限于需要它来维护服务器的特定 IT 人员,而实际的 root 密码应该保存在安全的地方。
答案2
这就是它应该如何工作。
你能防止或限制根访问。我从事医疗保健系统工作,并受各种监管和合规任务的约束。我们的审计员对 LDAP 身份验证很满意,但更希望我们启用sudo 访问处理有时可能需要 root 升级权限的普通用户。
答案3
我的同事找到了一个解决方案,可以解决 root 访问 LDAP 用户帐户而无需密码的问题。/etc/pam.d/su称为pam_rootok文件。这需要用#注释掉此命令后,root 用户在尝试 su 时将被提示输入用户密码。