ユーザーがシステムで実行できるコマンドのホワイトリストを設定しようとしています。私が使用しているサーバーはCentOS7を実行しています。特定のグループのコマンドと引数のみをユーザーのSudoとして実行できるようにするために使用する必要がある構文は何ですか?また、これらのコマンドを呼び出すときにSudoがパスワードを必要としないようにしたいと思います。
私はもう試した:
ユーザーALL =/bin/cmd1 arg1 arg2、/ bin/cmd2 arg1 arg2、/ bin/cmd3 arg1 arg2 NOPASSWD:ALL
ユーザーALL =(ユーザー:グループ)/ bin/cmd1 arg1 arg2、/ bin/cmd2 arg1 arg2、/ bin/cmd3 arg1 arg2 NOPASSWD:ALL
ユーザーALL =(ユーザー)/ bin/cmd1 arg1 arg2、/ bin/cmd2 arg1 arg2、/ bin/cmd3 arg1 arg2 NOPASSWD:ALL
ユーザーALL =(/ bin/cmd1 arg1 arg2、/ bin/cmd2 arg1 arg2、/ bin/cmd3 arg1 arg2)NOPASSWD:ALL
これらすべての試みにより、/ etc/sudoersファイルで構文エラーが発生しました。
私はこの質問を見てきました: Sudoユーザーが特定のコマンドを実行しないようにする方法は? そしてこのガイドも読んでください: https://www.digitalocean.com/community/tutorials/how -to-edit-the-sudoers-file-on-ubuntu-and-centos 。質問は最初の試みがうまくいくはずだったことを示しているようですが、ガイドは2番目の試みがうまくいったはずだと示しているようです。では、何が機能するのでしょうか?
次のようなものを追加してみてください。
user ALL = (root) NOPASSWD: /bin/cmd1 args, /bin/cmd2 args
上記の行: