允许用户使用 sudo 命令有多种方式,哪一种更好?

允许用户使用 sudo 命令有多种方式,哪一种更好?

我是 Linux 新手,刚刚开始学习,使用 Debian 7.0 Wheezy。我见过两种允许用户使用 sudo 的方法

一种方法是使用visudo修改/etc/sudoers并添加以下内容

username ALL=(ALL) ALL

另一个是将用户添加到sudo组中,使用这个

usermod -a -G sudo username

这两种方法的效果一样吗?每种方法各有什么优缺点?

答案1

这两种方法的效果大致相同。由于 Debian 上的默认 sudoers 文件包含以下行:

%sudo   ALL=(ALL:ALL) ALL

授予该组的所有成员该权限sudo

有几个差异可能对你来说很重要。

  • 修改生效时。如果您明确将用户添加到 sudoers 文件,该用户将能够立即使用这些权限。如果您将用户添加到 sudo 组,则他或她需要注销然后重新登录才能使用 sudo。

  • 稍后的限制。如果您稍后决定要限制所有用户使用 sudo 可以执行的操作,那么使用组方法会更容易,因为这样您就可以只修改 sudoers 文件中的单个条目,而不必为每个用户设置单独的条目。

答案2

在只有一个人需要管理的基本台式机上,此username方法就很好了。当您处理的系统有多个用户,并且可能有多个具有 sudo 权限的人时,最简单的方法是使用组方法(就像在该组中添加或删除人员一样简单)。

总的来说,我认为人们倾向于使用组方法作为最佳实践,因为它是多用户系统的首选,并且并不比username单用户系统的方法差。

相关内容