鉴于SUID shell脚本的危险性,在Linux中是否有更安全的方法给予具备root权限的脚本(bash、PHP)无需密码访问?
(Ubuntu 8.10)
将sudo配置为允许普通用户以提升的权限运行shell脚本,从安全角度来看并不比使脚本suid root更好。所有的陷阱仍然存在。 相反,您应该编写一个进行广泛安全检查的合适程序。一些需要考虑的要点:
为了提高安全性,请考虑是否可以将操作作为特殊用户或组来执行,该用户或组具有所需的访问权限。然后,您可以使脚本对该用户或组设置setuid / setgid。
对于一个真正重量级的解决方案,考虑使用MAC(强制访问控制)系统,例如SELinux、AppArmor、TrustedBSD等。