sudo 不要求输入密码

sudo 不要求输入密码

每当我发出命令时,sudo apt-get install foo它都不会要求输入密码。是因为用户组吗?

如何使其提示输入密码?

编辑:我的 sudoers 文件

apple@Ascension:~$ 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

# 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) ALL

#includedir /etc/sudoers.d
ALL ALL=(ALL) NOPASSWD:ALL
ALL ALL=(ALL) NOPASSWD:ALL
ALL ALL=(ALL) NOPASSWD:ALL

答案1

使用命令sudo visudo您可以查看和编辑 sudo 配置,例如:

# 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) ALL

# Group without password
%nopwd  ALL=NOPASSWD: ALL

您当前的用户可能是某个特权组的成员,该组允许他无需密码即可输入 sudo 命令。在此示例中,adminsudo组的成员可以使用 sudo 发出任何命令,但会提示输入密码; 组的成员nopwd不会提示输入密码。

请注意,声明顺序与属于多个组的用户相关。不直观的是,最后一个匹配的组获胜!

为了要求输入密码,您可以PASSWD: /usr/bin/apt-get在文件中添加命令规范/etc/sudoers;请注意,您可能需要允许特定命令不设密码,其他所有命令都设密码。下面是一个明确要求 apt-get 密码的示例:

%users  ALL=NOPASSWD: /sbin/reboot, PASSWD: /usr/bin/apt-get

请注意,你可以以比允许所有命令就像我的第一个例子一样(Ubuntu fr 文档)(文档 ubuntu en)。

相关内容