sudo 会影响整个服务器还是仅影响用户帐户?

sudo 会影响整个服务器还是仅影响用户帐户?

我最近为我的公司花了不少钱购买了一台 vps,并且已开始为我的每个网站设置 ssh 和 cpanel 帐户。

我开始在一个帐户上安装 Composer,但需要 root 权限。我的问题是,如果您以特权用户身份使用 sudo,如果您犯了一个严重的错误,您是否会导致整个服务器瘫痪,或者更改是否只会影响该特定用户帐户而不影响 root?

在此基础上,帐户是否完全与 root 隔离,或者您是否有可能将整个服务器置于风险之中(如果您真的很努力的话)? sudo 是否与 root 访问完全相同,但仅限于帐户内,您是否只是切换到 root? 有没有办法限制我可能对用户帐户造成的损害, sudo 是在我的帐户上安装软件包的最佳方式吗?

答案1

当您调用 sudo(没有明确的用户参数)时,您在该命令的持续时间内实际上是 root 身份。如果该命令启动了新的 shell,则从该 shell 运行的所有命令也都是 root 身份。所以是的,您使用 sudo 执行的任何操作都会影响整个服务器。

有关其工作原理的详细信息,请参阅以下 Unix StackExchange 问题:

sudo 究竟如何工作?

答案2

有了sudo(或者更确切地说/etc/sudoers并放入配置文件)管理员可以授予非特权用户以任何其他用户etc/sudoers.d/*身份运行某些命令和程序的权力。root

如何配置、授予哪些提升的权限决定了是否存在风险。

如果您sudo按预期使用且仅授予对有限命令集的访问权限,则用户就无法造成超出这些命令允许范围的危害

另一方面,如果你货物崇拜系统管理员并盲目复制典型的 ACL:

username    ALL=(ALL)   ALL

然后您授予username运行权限任何命令作为root 或任何其他用户一切赌注都取消了。


笔记:有许多命令使用 sudo 可以有效授予比你预期更多的访问权限,例如sudo vim <file> 以及其他编辑器、备份工具(如 tar 和 unzip 等)...

相关内容