sudo -i -u user /bin/bla/whatever と呼ばれる bash スクリプトがありました。CentOS 5.8 への最後の更新までは正常に機能していました。これは、sudoers ファイル内の対応するエントリです。
Runas_Alias TEST = user1, user2
Defaults:test always_set_home
test ALL=(TEST) NOPASSWD: /bin/bash -c /bin/bla/whatever, /bin/bla/whatever
sudo -i を使用した場合、コマンドを呼び出したようです
"/bin/bash -c /bin/bla/whatever"
(安全なログについて)。今、更新以来、それは呼び出すようです
"/bin/bash -c \/bin\/bla\/whatever"
したがって、許可されていません。sudoers ファイルの行を次のように変更しようとしました
test ALL=(TEST) NOPASSWD: /bin/bash -c /bin/bla/whatever, /bin/bla/whatever, /bin/bash -c \/bin\/bla\/whatever
しかし、それは構文を許可していないので、試しました:
test ALL=(TEST) NOPASSWD: /bin/bash -c /bin/bla/whatever, /bin/bla/whatever, /bin/bash -c \\/bin\\/bla\\/whatever
これは有効な構文ですが、機能しません。
Sudo -H -u user /bin/bla/whatever を使用すると、正常に動作します。sudoers ファイルで /bin/bash を許可しても、何でも許可されます.....
何か案は?
エリック