sudoでrootパスワードしか受け付けない
Unix/Linuxのsudoで、普通は自分のパスワードを入力するのに、拒否されてrootパスワードしか受け付けないんですけど??との質問があった。
今まで扱ってきたLinuxやFreeBSDだと、そんな事は起きたことがなく、sudoersを見ても、ちゃんとユーザの設定が記述されている。
hoge_user ALL=(ALL) ALL
なぜ、拒否されているのか、/var/logを確認してみればと思ったら、ログが取れてない。
とりあえず、sudoersにログを残す設定を書いて、調査しようと、sudoersを眺めていたら、
targetpw と言う欄が有効になっていることに気づいて、manで調べてみると、
targetpw If set, sudo will prompt for the password of the user specified by the -u flag (defaults to root) instead of the password of the invoking user. Note that this precludes the use of a uid not listed in the passwd database as an argument to the -u flag. This flag is off by default.
これじゃね?ってコメントアウトしたらビンゴでした。
よくmanを見ると、targetpwを有効にした状態でも、-u フラグをつけてもいけるみたいです。
ちなみに、sudoのログを取る方法もmanに載っているので、有効にしておこうね。