我在/etc/sudoers.d/waagent
的Ubuntu 16.04 VM上有不需要的配置。即使我以root身份登录,root也只有读权限。
我应该如何安全地编辑Azure waagent的配置?
我想把someuser ALL=(ALL) NOPASSWD:ALL
改为someuser ALL=(ALL) ALL
我可以简单地为root添加写权限并编辑文件,还是需要通过Azure命令以不同方式执行?
我想阻止sudo
配置损坏的情况,因为我没有物理访问VM并且无法修复它。
对于你的问题,我认为没有更安全的方法来编辑/etc/sudoers.d/waagent(在我这边,文件名是/etc/sudoers.d/90-cloud-init-users)。该文件只能使用root权限进行编辑。如果您使用root进行编辑,那么一切都以相同的方式工作。
所以我建议你可以使用root用户,添加写权限并根据需要编辑文件。但是不要忘记更改权限,换句话说,当一切正常时删除写入权限。
简短回答:
使用visudo -f /etc/sudoers.d/waagent
答案很长:
编辑sudoers文件时,请始终使用visudo
。它是一个vi
编辑器,但包含内置检查以防止您破坏文件,并允许您保存文件,即使文件没有写入权限(假设您以root身份运行)。更改文件的权限以允许写访问和使用普通文本编辑器是一个坏主意。太容易忘记更改它,一个错位的符号或拼写错误的单词可能会破坏文件。这就是默认情况下没有写入权限的原因 - 作为检查以防止可能导致系统无法使用的不必要的修改。