'listpw'デフォルトオプションはsudo 1.8.24では機能しません。

'listpw'デフォルトオプションはsudo 1.8.24では機能しません。

私はアーチLinux sudo(OSに付属のデフォルトバージョン)で1.8.24を使用していますが、コマンドが機能しているかどうかをリストするためにパスワードを要求する問題があります。これは私の/etc/sudoersファイルです:

Defaults rootpw
Defaults listpw=never
%wheel ALL=(ALL) ALL
%wheel ALL=(ALL) NOPASSWD: /bin/false ""

listpw=never私のホイールグループのドキュメントを見ると、実行時にパスワードを入力するように求められず、sudo -lとにかくパスワードが必要ない場合は、デフォルトはパスワードを許可する必要があることを信じています/bin/false

残念ながら実行すると、sudo -l /bin/false私のパスワードを入力するように求められます。sudo /bin/falseパスワードは必要ありません。sudo他のすべてのエントリではルートパスワードの入力を求められますが、すべてのエントリではsudo -l自分のパスワードの入力を求められます。ルートとして何かを実行するためにすでにルートパスワードを入力している場合、これは特に迷惑です。これは、実行中に2秒後もパスワードを入力する必要があるためですsudo -l。 (これは実行前に権限があることを確認するスクリプトでよく使用されるパターンで、パスワードを求めずに成功したにもかかわらずパスワードを求めるメッセージがsudo表示されます。)sudo

修正する

を実行すると、sudo -lパスワードを入力するように求められ、sudoは以下を印刷します。

Matching Defaults entries for user on machine:
    rootpw, listpw=never, timestamp_timeout=60, env_keep+=HOME

User user may run the following commands on machine:
    (ALL) ALL
    (ALL) NOPASSWD: /bin/false

そして私はsudo 1.8.25にアップグレードしましたが、それでも問題が表示され、基本的に放棄し、sudoのバグであると結論付けました。

答え1

FWIW 1.8.27でもこれを再現できますが、1.8.28で修正

listpw=neverこのエントリを削除すると、回線でALL ALL=(ALL) NOPASSWD: /usr/bin/false承認ルールが実行され、sudo -lパスワードの入力を求められません。

関連情報