ユーザーに他のユーザーのパスワードを変更する権限を付与しようとしましたが、ルートのパスワードは変更できません。
/etc/sudoers ファイルを編集し、visudo
次の行を追加しました。
myuser ALL=/usr/bin/passwd
今動作します。ユーザー「myuser」はコマンドで自分のパスワードを変更できますが、
sudo passwd otheruser
ルートのパスワードも変更できます。
ルートパスワード変更オプションを除外するには?
ベストアンサー1
これsudoers のマニュアルページ(v1.9.1リンク)実際には、次の例があります。
pete HPPA = /usr/bin/passwd [A-Za-z]*, !/usr/bin/passwd *root*
ユーザー pete は、HPPA コンピュータでルート以外のすべてのユーザーのパスワードを変更できます。コマンドラインパラメータは単一の接続文字列で一致するため、「*」ワイルドカードは複数の単語と一致します。この例では、passwd(1)がコマンドラインで複数のユーザー名を使用しないと想定しています。 GNUシステムでは、passwd(1)オプションをユーザーパラメータの後に指定できます。したがって、この規則は次のことも許可します。
passwd username --expire
これは望ましくないかもしれません。
この例を状況に合わせて調整できます。
myuser ALL=/usr/bin/passwd [A-Za-z]*, !/usr/bin/passwd *root*
...マニュアルの警告に注意してください。