为什么用户 vagrant 可以在不输入密码的情况下执行 "sudo su -"?

Why can user vagrant do "sudo su -" without entering password?

我是一个关于vagrant的新同学。我刚刚发现我可以在 Vagrant 监督的盒子里通过 "sudo su -" 更改为 root 而无需输入密码。 奇怪的是,我检查了“/etc/sudoers”并没有发现任何关于用户流浪者的信息。谁能解释一下?

/etc/sudoers 包含另一个包含 NOPASSWD 行的文件。

vagrant@ubuntu-12:~$ sudo cat /etc/sudoers.d/vagrant 
%vagrant ALL=NOPASSWD:ALL

基于http://docs.vagrantup.com/v2/boxes/base.html:"Many aspects of Vagrant expect the default SSH user to have passwordless sudo configured. This lets Vagrant configure networks, mount synced folders, install software, and more."

moodh所述,

vagrant ALL=(ALL) NOPASSWD: ALL

将允许 "password-less" sudo。

刚刚在最近的 vagrant box 中更新 ubuntu/xenial64 有一个文件 /etc/sudoers.d/90-cloud-init-users 有内容

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

没有 /etc/sudoers.d/vagrant 文件,也没有 vagrant 用户。