
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が機能しない理由が知りたいです。
ご回答いただければ幸いです。
答え1
は(ALL:ALL)
動作しますが、dummy
ユーザーは を実行することができませんwhoami
。/usr/bin/whoami
許可されたコマンドのリストに追加する必要があります。現在のルールではまたはdummy
を実行できるとされています。/usr/sbin/reboot
/usr/sbin/poweroff
どれでもユーザーとどれでもグループ。あなたは電話することができますsudo -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