web-dev-qa-db-ja.com

Nagiosのユーザーが一部のサーバーのステータスを表示できるようにするが、何も無効/有効にしない方法は?

Nagiosのユーザーが一部のサーバーのステータスを表示できるようにするが、何も無効/有効にしない方法は?

5

/usr/local/nagios/etc/cgi.cfg(またはシステムのどこにあるか)で、読み取り専用ユーザーを定義します。

# A comma-delimited list of usernames that have read-only rights in
# the CGIs.  This will block any service or Host commands normally shown
# on the extinfo CGI pages.  It will also block comments from being shown
# to read-only users.

authorized_for_read_only=viewer

もちろん、ビューアは最初に適切なhtpasswd認証を持つ連絡先として定義する必要があります。サービス/ホストの詳細ページで、通常コマンドがある右側には次のように表示されます。

あなたのアカウントにはコマンドを実行する権限がありません。

5
Marek

質問を正しく理解した場合、一部のサーバーのみを表示でき、管理タスク(監視の開始/停止またはアラート)を実行する権限のないユーザーをnagiosに追加したいと考えています。

これを行うには、nagiosの.htpasswdファイルにユーザーを追加し、.giosで.htpasswdに設定されているユーザー名と一致するcontact_nameで連絡先を作成し、その連絡先を、表示したいホストにのみ追加する必要があります。テンプレートで定義されているものをホスト構成に追加するときは、テンプレートに追加するのではなく、テンプレートを上書きするので、ホストがテンプレートにすでに持っている連絡先も追加する必要があります。

2
Jason Janelle

ユーザーを許可するには一部のホストへの表示のみのアクセス Nagios Webviewで次の変更を実装する必要があります:

注:ジャンプすでにパスワード保護認証を有効にしている場合:

  1. Nagiosインストールにあるcgi.cfgを編集して(例:/usr/local/nagios/etc)、パスワードで保護されたログインを有効にします。

    use_authentication=1
    
  2. Apacheインストールディレクトリのnagios.confファイルで、次の行がhtpasswd.usersファイルを指すように含まれていることを確認します。

    AuthName "Nagios Access"
    AuthType Basic
    AuthUserFile /usr/local/nagios/etc/htpasswd.users
    Require valid-user
    
  3. htpasswdコマンドとApache HTTPDパスワードマネージャを使用して、htpasswd.usersファイルにユーザーを追加します。場所はシステムによって異なる場合があります。いくつかの一般的な場所は/usr/bin/usr/local/Apache/binです。

    # htpasswd /usr/local/nagios/etc/htpasswd.users testuser01
    New password:
    Re-type new password:
    Adding password for user testuser01
    
  4. Nagiosインストールにあるcgi.cfgを編集します。 authorized_for_read_onlyのコメントを外し、アクセスを許可するユーザー名を追加します。

    authorized_for_read_only=testuser1
    
  5. Nagiosインストールからobjects/contacts.cfgにユーザーのエントリを作成します。

    define contact {
        contact_name                    testuser01
        use                             generic-contact
        alias                           Test User 01
        email                           [email protected]
    }
    
  6. 同じobjects/contacts.cfgで、ユーザーと同じホストへの同じアクセスを必要とする他の将来のユーザーを保持するグループも定義します。ユーザーがグループに含まれていると、管理が容易になります。

    define contactgroup {
        contactgroup_name       view-only-Host01
        alias                   View Only access to alarms for Host01
        members                 testuser01
    }
    
  7. 以前に定義した連絡先グループview-only-Host01を取得し、ホストの.cfg(例:objects/Host01.cfg)で、表示のみのアクセスを許可するすべてのサービスに追加します。

    define service{
           service_description     Alarm for Test service - Metric 01
           check_command           webinject!test/test.xml
           servicegroups           availability
           contact_groups          admins,view-only-Host01
    }
    
  8. Nagiosを再起動します

1
Cristi Dascalu

Cgi.cfgファイルには、次の行があります。

authorized_for_all_services=*

authorized_for_all_hosts=*

通常、これらは上記のように構成されているため、すべてのユーザーが少なくともすべてのホストとサービスを表示できます。したがって、新しいユーザーをhtpasswdファイルに追加すると、デフォルトで目的の動作が得られるはずです。

0
Cawflands