Linux
我是否需要在 sudoers 中指定 user:group 來模擬其他使用者
我試圖限制特定使用者可以在 sudoers 文件中執行的命令,比如說我有這樣的東西:
dummy myserver=(ALL:ALL) /usr/sbin/reboot,/usr/sbin/shutdown
我的虛擬使用者只允許重新啟動或關閉系統。我故意允許虛擬使用者冒充其他使用者,但無論何時我嘗試使用 sudo 的 -u 選項,例如
sudo -u anotheruser whoami
我收到以下錯誤:
Sorry, user dummy is not allowed to execute '/usr/bin/whoami' as anotheruser on myserver.
我知道我可以在 sudoers 中專門呼叫我想模擬的使用者和組,但我很好奇為什麼 ALL:ALL 不起作用
我將不勝感激您的回答。
(ALL:ALL)
確實有效,您的使用者dummy
只是不允許執行whoami
。您應該添加/usr/bin/whoami
到允許的命令列表中。您目前的規則說dummy
可以執行/usr/sbin/reboot
或/usr/sbin/poweroff
作為任何使用者和任何組執行。你可以打電話,重啟系統失敗與sudosudo -u anotheruser /usr/sbin/reboot
無關。
/usr/sbin/reboot
此外,您的系統上可能沒有/usr/sbin/poweroff
執行檔。這些是必不可少的命令,因此它們應該在/sbin
.總結:你的
/etc/sudoers
文件應該包含這樣的一行:dummy myserver=(ALL:ALL) /sbin/reboot, /sbin/poweroff, /usr/bin/whoami