dev*_*per 39 security sudo tty
我正在尝试使用Capistrano设置部署脚本 在一个步骤中,cap deploy:setup
脚本正在连接到我的服务器并尝试运行创建目录的命令。然后我看到一个错误:msudo: sorry, you must have a tty to run sudo
有一个建议的解决方案可以在我的服务器上禁用 requiretty。https://unix.stackexchange.com/a/49078/26271
我想知道这样做是否安全?
Gil*_*il' 40
在requiretty
服务器上拥有的安全优势非常有限。如果某些非root代码被利用(例如PHP脚本),该requiretty
选项意味着漏洞利用代码将无法通过运行直接升级其权限sudo
。
攻击者可能有另一种获得root的方法,当然攻击者仍然可以破坏您的站点,但不让攻击者获得root意味着以不同用户身份运行的其他服务将继续正常运行,而攻击者将不会无法清除系统日志。如果您的任何sudo
规则都没有像创建目录那样做任何危险的事情,那么这不是问题。
此外——更糟糕的是requiretty
——创建 tty 不需要特权,例如使用expect。因此,您不妨关闭requiretty
: 本身,它不提供安全优势。当由用户执行时,它确实提供了轻微的可审计性优势(因为日志可以更好地了解谁调用了sudo
它们以及它们来自哪里),但在从后台作业执行时则不然。
归档时间: |
|
查看次数: |
49325 次 |
最近记录: |