可以sudo影响整个服务器或只是用户帐户?

我最近花了很多时间在我的业务上,并开始为我的每个站点设置ssh和cpanel帐户。

我开始在一个帐户上安装composer php,但需要root权限。 我的问题是,如果你使用sudo作为特权用户,如果你犯了一个严重的错误,或者只做了特定的用户帐户而不是根用户,你能否把整个服务器closures?

在此基础上build立的帐户完全与root隔离,或者您可能会将整个服务器置于潜在风险中(如果您真的努力了)? 是sudo完全一样的根访问,但只有在帐户内,你只是切换到根? 有什么办法来限制我可以造成的只是用户帐户的损害,是sudo最好的方式来安装我的帐户包?

当你调用sudo(没有明确的用户参数)时,你在该命令的持续时间内是有效的。 如果该命令启动一个新的shell,那么从该shell运行的所有命令也是root。 所以是的,你用sudo做的任何事情都会影响整个服务器。

有关如何工作的更多细节,请参阅以下Unix StackExchange问​​题:

sudo如何工作?

使用sudo (或者将/etc/sudoersetc/sudoers.d/*放置在configuration文件中),pipe理员可以授予非特权用户以root用户身份或任何其他用户身份运行某些命令和程序的能力。

如何configuration您授予哪些提升的权限是决定是否存在风险的因素。

如果您按照预期使用sudo并且只允许访问一组有限的命令,那么除了这些命令允许注释的内容之外,用户不会造成太大的伤害。

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

 username ALL=(ALL) ALL 

那么你授予username作为root或任何其他用户运行任何命令的权利,所有的投注都closures。


注意 :有很多命令与sudo将有效地授予更多的访问比你期望的,如与sudo vim <file>和其他编辑器,备份工具,如焦油和解压缩等…