我剛剛在 Windows Azure 叢集中的虛擬機器上安裝了 Ubuntu 12.04。
預設情況下sudo
不需要密碼。
我想對所有sudo
命令強制輸入密碼。
我該如何進行此更改?
以下是 的內容visudo
:
#
# 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 secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
Defaults timestamp_timeout=0
# 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
# See sudoers(5) for more information on "#include" directives:
#includedir /etc/sudoers.d
答案1
一開始我很困惑。後來找到了配置/etc/sudoers.d/90-cloud-init-users
。
# Created by cloud-init v. 0.7.5 on Tue, 16 Sep 2014 14:34:31 +0000
# User rules for azureuser
azureuser ALL=(ALL) NOPASSWD:ALL
評論最後一行將解決您的問題。
答案2
Amazon AWS 執行個體的設定方式相同。我不知道 Azure 中 Ubuntu 執行個體的使用者名稱是什麼,但您需要進入檔案/etc/sudoers
並尋找以下行:
# Allow members of group sudo to execute any command
%sudo ALL=NOPASSWD:ALL
替換NOPASSWD
為PASSWD
並保存文件。
答案3
/etc/sudoers.d/99-bitnami
就我而言,它是包含該行的文件NOPASSWD
。我刪除了NOPASSWD:
該文件,現在它看起來像這樣:
%bitnami-admins ALL=(ALL) ALL
它應該對您的情況有相同的效果,以NOPASSWD:
在您的情況下刪除/etc/sudoers.d/90-cloud-init-users
^