ユーザーがnagiosサービスを再起動できるようにユーザーにアクセスを許可する最善の方法は何ですか?
visudoに追加しました
USER ALL = NOPASSWD: /usr/sbin/service ServiceName *
しかし、これはうまくいきません。私はRed Hat 6を使用しています。
User name is ahmed
Service name : nagios
答え1
~によるとNagios ドキュメント、Nagiosはまだinitベースであるため、すべてのユーザーがNagiosサービスを開始および停止できるように、次のことを行います。
- オペレーターコマンドエイリアスの作成
- オペレータグループの作成
- オペレータグループの全員がNagiosサービスを開始/停止することを許可します。
- たとえば、ユーザー「ahmed」をオペレータグループに追加します(あなたの質問に従って)。
まず、sudoersファイルを変更します。
sudo visudo
このセクションに以下# Cmnd alias specification
を追加します。
Cmnd_Alias CMD_OPERATOR=/etc/rc.d/init.d/nagios
追加### User privilege specification section ###
:
# Allow the group "operator" to use certain applications
%operator ALL=CMD_OPERATOR
これでグループを作成しますoperator
。
sudo groupadd operator
そしてオペレータグループにahmedを追加します。
sudo usermod --append --groups operator ahmed
それだけです!これで、ahmedは次のコマンドをすべて実行できるようになりました。
sudo /etc/rc.d/init.d/nagios start
sudo /etc/rc.d/init.d/nagios reload
sudo /etc/rc.d/init.d/nagios stop
自分のパスワードを提供することによって。
なぜ?
いいですね。これで交換グループがあるので、次のことができます。
- ユーザーが実行する必要がある追加プログラムを簡単に追加できます。
- 必要に応じて、オペレータ権限を簡単にキャンセルできます。