从 sudoer 中删除用户

从 sudoer 中删除用户

我想知道从 Linux 中的 sudoer 列表中删除用户的命令。我已使用以下命令添加了用户:

sudo adduser user_name

并将其添加到组中。

我现在想从 sudoer 列表中删除该用户。我该怎么做?

答案1

它可能不像运行命令那样直接。没有 sudoerlist - sudoers 文件是可以为用户或组提供各种权限的指令列表。如果您擅长使用 vi,则可以使用 visudo 编辑此文件。如果不擅长,您可能不应该乱动它,但可能可以使用 nano /etc/sudoers(以 root 身份)。sudoers 文件通常有相当完善的文档。

不过,根据您的操作系统,您可能实际上不需要这样做。大多数发行版都有一个组,只需修改谁有权访问哪个组即可授予提升的权限。您可能需要查看 sudoers 文件以查看有哪些组/组 - 在我的 ubuntu 16.04 中有一个“admin”组和一个“sudo”组。“wheel”和“admin”组是其他常见的组。

由于用户可能已经是具有 sudo 访问权限的组的成员,因此输入(以 root 身份)grep "username" /etc/group" 将显示用户所属的组列表。要删除用户,您可以(以 root 身份)从 /etc/group 中编辑它们,或使用类似以下命令

gpasswd -d username groupname

或者

deluser username groupname

答案2

该命令不会将用户添加到/etc/sudoers文件中。

根据您将用户添加到的组,可能会授予他们使用 sudo 的权限。使用 检查用户的组成员身份groups username

您可以/etc/sudoers使用该visudo实用程序编辑文件 - 如果您不喜欢 vi/vim,您可以通过将其指定为环境变量来使用任何其他编辑器。

sudo EDITOR=/bin/nano visudo

请注意,虽然文件是纯文本,但使用visudo它来编辑它很重要,因为visudo在实际保存之前会检查语法等。如果语法错误,您将无法sudo再次运行来修复它。

所以...检查您的用户的组成员,检查哪些组被允许sudo访问,并检查哪些用户被允许sudo访问。

/etc/sudoersDebian/Ubuntu/etc 发布的基本内容

ivan@darkstar:~$ sudo cat /etc/sudoers
#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults    env_reset
Defaults    mail_badpass
Defaults    secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin"

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification
root    ALL=(ALL:ALL) ALL

# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL

# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) NOPASSWD:ALL

# See sudoers(5) for more information on "#include" directives:

#includedir /etc/sudoers.d

相关内容