2017-01-12 4 views
0

私は自分のnagiosマシン用のカスタムシェルスクリプトを作っています。私はそれらを正常に動作させることができましたが、何らかの理由でスクリプト内のいくつかのコマンドが機能していないようです。カスタムスクリプトでいくつかのコマンドを実行する権限をNagiosに与える方法はありますか?

例えば、echo、cut、ps、grepのようなコマンドはうまく動作しますが、touchのようなコマンドは、sudoを使ってもuseraddは動作しません。ターミナルからスクリプトを実行すると、スクリプト内のすべてのコマンドが機能します。

どのようにこれらのコマンドを実行する権限をNagiosに与えることができますか?

私はUbuntuの上14.04.5 LTS

編集nagios3を実行している:実行

sudo useradd -m $USERNAME 
(echo $PASSWORD; echo $PASSWORD) | sudo smbpasswd -s -a $USERNAME 
+0

あなたの質問は、[スーパーユーザー](http://superuser.com/tour)に適しています。 [スタックオーバーフローは、プロと熱心なプログラマーのための質疑応答サイトです](http://stackoverflow.com/tour)。 – Cyrus

+0

/etc/sudoersにnagiosユーザーを追加しましたか? –

答えて

1

標準的な方法は、監視対象サーバ上のNagiosユーザ(例えば、NRPE、/etc/sudoersファイル)のセットアップ権限です。

1.方法

あなたのsudoersファイルに次のようなものを追加してみます。

Defaults:nrpe !requiretty 
nrpe ALL= NOPASSWD: useradd -m 
nrpe ALL= NOPASSWD: smbpasswd -s -a 

PS:簡単に編集sudoersのは、あなたが;-)

2.方法

それとも、sudo usermod -aG sudo <username>

経由 sudoグループにNagiosのユーザーを追加しようとすることができ visudoコマンドを使用することができ、ファイルの

-aは、追加の略です。

Gはグループ用

+0

これは両方の答えで、sudoersファイルにNOPASSWDを追加し、cfgファイルにsudoを追加したようです – Pretos

1

されていない数行のコードを追加しましたあなたにsudoのようスクリプトを実行するためにNagiosを教えます.cfgファイル...

権限の問題があると想定します。

+0

これを試してみましたが、ステータス情報が表示されます。(null)と警告が表示されます。ターミナルから.cfgファイルのcommand_lineを実行すると正常に動作します。 – Pretos

+0

それはあなたがrootから実行しているので、su - nagiosを試してみて、それが何を伝えているのか見てみてください...もし許可があれば、sudoを適切に追加する必要があります。 –

+0

あなたのスクリプトのpermitonsとcheck + configを追加してください。問題がまだ残っている場合は...しかし、問題はほぼ確実にsudoです... –

関連する問題