为什么我要为 sudo 要求 tty?需要它有什么安全优势?



我目前正在为我的学校做一个项目,旨在在虚拟机中创建一个服务器。

主题的要求之一是在模拟的Debian Linux上安装sudosudoers配置文件中有以下字段:

Defaults        requiretty

需要我设置的主题行:

  • 出于安全原因,必须启用TTY模式

我知道tty是一个命令,它打印当前连接到标准输入的终端的文件名。然而,我看不出这是如何确保服务器更安全的。

设置requiretty时,必须从登录的终端会话(tty(运行sudo。这可以防止从守护进程或其他分离的进程(如cronjobs或Web服务器插件(使用sudo。这也意味着,如果不设置终端会话,就不能直接从ssh调用运行它。

这可以防止某些类型的升级攻击。例如,如果我有一种方法可以修改具有NOPASSWD sudo权限的用户的crontab,我可以使用它以root身份启动作业。有了requiretty,我不能这么做。。。

容易地这种限制并不特别难规避,因此与它所破坏的有效用例相比,通常并没有那么有用。Red Hat过去经常使用它,但几年前就把它去掉了。

相关内容

  • 没有找到相关文章

最新更新