“sudo screen” 与 “screen -> sudo”

“sudo screen” 与 “screen -> sudo”

当我想将 root shell 放入屏幕时,我通常会这样做sudo screen。我的一个朋友首先启动screen,然后在屏幕会话中放入 root shell。

从安全角度来看,哪种方法更好?这重要吗?

答案1

一般来说,只有在真正必要时,进程才应该以 root 身份运行。sudo screen表示screen其本身和其下的所有 shell 都以 root 身份运行,而screen后跟表示sudo只有该 shell 以 root 身份运行。

因此,仅从安全性的角度来看,后者是更好的选择,但如果您确实需要打开很多 root shell,您可能会决定采用前一种方法以方便使用。

答案2

这是一篇旧帖子,但我最近在谷歌上搜索了同样的问题。我想我可以分享我自己的反馈。我同意“屏幕须藤' 应该是大多数时候运行它的方式,原因有二

  1. 安全性 - 以更高权限运行的每段代码都会对服务和数据造成风险,并且拥有这些权限对屏幕没有任何好处。jjlin 已经很好地涵盖了这一点,但是 screen sudo 意味着在提升的权限状态下运行的代码更少。

  2. 恢复 - 如果您使用 sudo 来获取具有更高权限的 shell(例如 screen sudo -s),则 screen sudo 意味着整个 shell 都在一个屏幕内运行。这样可以更轻松地确保您在恢复该屏幕时恢复所有状态。

我认为第一个原因(安全)是最有力的理由,但它们都有好处。

相关内容