为什么我可以在不使用 sudoers 的情况下使用 sudo?

为什么我可以在不使用 sudoers 的情况下使用 sudo?

我是 Linux 新手,正在使用 AWS 的 Centos7,我有点困惑。据我了解,为了使用 sudo,您需要位于 sudoers 中,并且默认情况下,root 用户和组 Wheel 位于 sudoers 中。我目前是centos用户,我可以使用sudo,但我不明白为什么。我不相信我在团体轮中。 我的 sudoer 文件

使用 cat /etc/group,我在组轮中看不到 centos

答案1

在云环境中,许多发行版(包括 CentOS 7)使用云初始化首次启动时配置系统。

如果我们查看/etc/cloud/cloud.cfgCentOS 7 云镜像,我们会发现:

system_info:
  default_user:
    name: centos
    lock_passwd: true
    gecos: Cloud User
    groups: [wheel, adm, systemd-journal]
    sudo: ["ALL=(ALL) NOPASSWD:ALL"]
    shell: /bin/bash
  distro: rhel
  paths:
    cloud_dir: /var/lib/cloud
    templates_dir: /etc/cloud/templates
  ssh_svcname: sshd

这表示“创建一个名为的用户centos并将配置sudo应用于ALL=(ALL) NOPASSWD:ALL该用户。这将导致创建包含以下内容的cloud-init文件:/etc/sudoers.d/90-cloud-init-users

# Created by cloud-init v. 18.2 on Mon, 08 Aug 2022 22:07:23 +0000

# User rules for centos
centos ALL=(ALL) NOPASSWD:ALL

这就是centos用户有权sudo访问的原因。

相关内容