誰かがsudoをするたびにsudo講義を活性化しようとしていますが、まったく機能しないようです。
同様の質問が見つかりましたここ、実行時に結果が出なければstrings /usr/bin/sudo | grep -A4 -i "lecture"
sudo Lectureが活性化されていないことで、結果も見えなくて今活性化させてみようという方がいらっしゃいますね。
私/etc/sudoers.d/lecturesファイルには次の内容が含まれています。
Defaults lecture = always
Defaults lecture_file = /etc/sudoers.lecture
そして私/etc/sudoersファイルを含める/etc/sudoers.d目次。私のsudoersファイルの内容は次のとおりです。
Defaults requiretty
Defaults !visiblepw
Defaults always_set_home
Defaults env_reset
Defaults env_keep = "COLORS DISPLAY HOSTNAME HISTSIZE INPUTRC KDEDIR LS_COLORS"
Defaults env_keep += "MAIL PS1 PS2 QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE"
Defaults env_keep += "LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES"
Defaults env_keep += "LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE"
Defaults env_keep += "LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY"
Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin
root ALL=(ALL) ALL
%wheel ALL=(ALL) NOPASSWD:ALL
#includedir /etc/sudoers.d
#
前の内容がコメントアウトされたと思ったが、includedir
「コメント解除」すると、sudoを実行するたびにエラーが発生します。だからマニュアルを見た後、次の行が見つかりました。
/etc/sudoers.d から挿入されたファイルを読み込みます。 (ここで#はコメントを表しません。)
明らかにこれは#
コメントではありません...奇妙です。
だから今/etc/sudoers.d/lecturesファイル参照/etc/sudoers.lecture、シンプルな「Hello World」を唯一のコンテンツとして使用して作成しました。
ところがsudoをすると、まだ講義が一つも見えず、まだまだ一つも見えなかった。スピーチString strings /usr/bin/sudo
...何か間違っているのは間違いありません。見つかりません。
修正する
トーマスNsudo -k
以下を使用して、リサイクルされたキャッシュされた認証資格情報をすべて消去することをお勧めします。
[Fri May 06 12:25:33]{1} root@web-stg-a01:~(✓)# cat /etc/sudoers
Defaults requiretty
Defaults !visiblepw
Defaults always_set_home
Defaults env_reset
Defaults env_keep = "COLORS DISPLAY HOSTNAME HISTSIZE INPUTRC KDEDIR LS_COLORS"
Defaults env_keep += "MAIL PS1 PS2 QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE"
Defaults env_keep += "LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES"
Defaults env_keep += "LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE"
Defaults env_keep += "LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY"
Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin
root ALL=(ALL) ALL
%wheel ALL=(ALL) NOPASSWD:ALL
#includedir /etc/sudoers.d
[Fri May 06 12:25:37]{2} root@web-stg-a01:~(✓)# cat /etc/sudoers.d/lecture
Defaults lecture = always
Defaults lecture_file = /etc/sudoers.lecture
[Fri May 06 12:25:42]{3} root@web-stg-a01:~(✓)# cat /etc/sudoers.lecture
TEST...
[Fri May 06 12:25:47]{4} root@web-stg-a01:~(✓)# exit
logout
[Fri May 06 12:25:51]{15} cymedica@web-stg-a01:~(✓)$ sudo -k su -
Last login: Fri May 6 12:25:33 MST 2016 on pts/1
[Fri May 06 12:25:56]{1} root@web-stg-a01:~(✓)#
しかしそれは真実ではない。
答え1
これは、呼び出し時にキャッシュされた認証資格情報をリサイクルした結果である可能性がありますsudo
。試してみてください
sudo -k <some_allowed_command>
これが期待される動作をもたらすことを確認してください。