sudoersで単一のコマンドの要件を無効にする方法は?

sudoersで単一のコマンドの要件を無効にする方法は?

私のスクリプトでsudoを使用できるようにrequirettyを無効にしたいのですが、すべてのコマンドに対して無効にするよりも、単一のコマンドに対して無効にすることをお勧めします。 sudoers設定でこれは可能ですか?

ベストアンサー1

特定のユーザーや特定のコマンド(または特定の実行中のユーザーまたはホスト)などのオプションのデフォルト設定を上書きできますが、特定のユーザーとして実行される特定のrequirettyコマンドについては上書きできません。

たとえば、次のファイルはrequirettyコンパイルのデフォルトオプションに設定されていると仮定してスクリプトでrootとしてsudoers許可され実行されます。パスワードは必要なく、むしろパスワードを入力する必要があります(おそらく一部の端末で閉じられ、最近入力された可能性があります)。artbristolbob/path/to/programartbristolbobtty_ticketsbob

artbristol ALL = (root) NOPASSWD: /path/to/program
bob ALL = (root) /path/to/program
Defaults!/path/to/program !requiretty

特定のパラメータを使用してコマンド設定を変更するには、コマンドエイリアスを使用する必要があります(これは構文制限です)。たとえば、次のスニペットはスクリプト内で実行できますが、artbristol他のパラメータでは実行できません。/path/to/program --option/path/to/program

Cmnd_Alias MYPROGRAM = /path/to/program --option  
artbristol ALL = (root) /path/to/program
artbristol ALL = (root) NOPASSWD: MYPROGRAM
Defaults!MYPROGRAM !requiretty

おすすめ記事