2つの重複するsudoルールの場合は、より制限的なルールを使用する必要がありますか?

2つの重複するsudoルールの場合は、より制限的なルールを使用する必要がありますか?

私はに属していますsudoers.d。このユーザーはfoobarこのsudoグループに属しています。ユーザーの作成時にパスワードが任意の値で暗号化されるため、ユーザーは公開鍵認証を介してのみfoobarログインできると予想されます。その後、コンピュータにアクセスして実行してパスワードを設定する必要がsshあります。sudo passwd foobarssh

# /etc/sudoers.d/sudo-group
%sudo   ALL=(ALL) ALL

# /etc/sudoers.d/change-own-passwd
foobar  ALL = NOPASSWD: /usr/bin/passwd foobar

ただし、ユーザーはまだパスワードの入力を求められます。

$ which passwd
/usr/bin/passwd

$ sudo -ll
User foobar may run the following commands on bizbazz:

Sudoers entry:
    RunAsUsers: root
    Options: !authenticate
    Commands:
    /usr/bin/passwd foobar

Sudoers entry:
    RunAsUsers: ALL
    Commands:
    ALL

$ sudo passwd foobar
[sudo] password for foobar: ^C
sudo: a password is required

ベストアンサー1

SUDOERSファイル形式

...

複数の項目がユーザーと一致する場合は、順次適用されます。一致する項目が複数ある場合は、最後の項目が使用されます(最も具体的なものである必要はありません)。

~からman 5 sudoers

したがって、ルールを適用するときは順序が重要です。名前を辞書式(000-sudo-groupおよび100-change-own-passwd)に変更すると、問題が解決します。

おすすめ記事