Como permitir que um usuário no Nagios visualize o status de alguns servidores, mas não desative / habilite nada?

5

Como permitir que um usuário no Nagios visualize o status de alguns servidores, mas não desative / habilite nada?

    
por Kazimieras Aliulis 09.02.2010 / 09:15

4 respostas

5

Em /usr/local/nagios/etc/cgi.cfg (ou onde quer que esteja no seu sistema) definir os usuários somente leitura:

# 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

É claro que o visualizador deve primeiro ser definido como contato com uma autenticação htpasswd apropriada. Na página de detalhes do serviço / host, o lado direito onde você costuma ter comandos dirá:

Sua conta não tem permissão para executar comandos.

    
por 14.12.2011 / 10:33
2

Se eu entendi sua pergunta corretamente, gostaria de adicionar usuários a nagios que só podem ver alguns dos servidores e não têm autoridade para executar nenhuma das tarefas de administração (Iniciar / Parar monitoramento ou alerta).

Para fazer isso, você precisará adicionar um usuário ao arquivo .htpasswd para nagios e, em seguida, criar um contato no nagios com o nome do contato correspondente ao nome de usuário definido em .htpasswd e adicionar esse contato apenas aos hosts que você deseja ver. Lembre-se de que quando você adiciona coisas à configuração do host que também são definidas no modelo que ele substitui o modelo, em vez de adicioná-lo, você também precisará incluir de volta quaisquer contatos que o host já tenha no modelo.

    
por 11.01.2011 / 17:42
1

Para permitir que um usuário visualize somente o acesso somente a alguns hosts no webview do Nagios, você deve implementar as seguintes alterações:

Observação: pule para 3. se você já tiver a autenticação protegida por senha ativada:

  1. Edite o cgi.cfg localizado na sua instalação do nagios (por exemplo, /usr/local/nagios/etc ) para ativar o login protegido por senha:

    use_authentication=1
    
  2. No arquivo nagios.conf do diretório de instalação do Apache, verifique se as seguintes linhas estão incluídas para apontar para o arquivo htpasswd.users :

    AuthName "Nagios Access"
    AuthType Basic
    AuthUserFile /usr/local/nagios/etc/htpasswd.users
    Require valid-user
    
  3. Adicione o usuário ao arquivo htpasswd.users usando o comando htpasswd e o gerenciador de senhas do Apache HTTPD. A localização pode variar dependendo do seu sistema; alguns locais comuns para isso são /usr/bin e /usr/local/apache/bin :

    # htpasswd /usr/local/nagios/etc/htpasswd.users testuser01
    New password:
    Re-type new password:
    Adding password for user testuser01
    
  4. Edite o cgi.cfg localizado na sua instalação do nagios; descomente authorized_for_read_only e adicione o nome de usuário para o qual você deseja conceder o acesso:

    authorized_for_read_only=testuser1
    
  5. Crie uma entrada para o usuário em objects/contacts.cfg da instalação do nagios:

    define contact {
        contact_name                    testuser01
        use                             generic-contact
        alias                           Test User 01
        email                           [email protected]
    }
    
  6. No mesmo objects/contacts.cfg defina também um grupo que manterá o usuário e outros usuários futuros que precisarão do mesmo acesso aos mesmos hosts - mais fácil de gerenciar quando os usuários estiverem em grupos:

    define contactgroup {
        contactgroup_name       view-only-host01
        alias                   View Only access to alarms for Host01
        members                 testuser01
    }
    
  7. Pegue o grupo de contatos definido anteriormente, view-only-host01 e, no arquivo .cfg do seu host (por exemplo, objects/host01.cfg ), adicione-o a todos os serviços aos quais você deseja conceder acesso somente à visualização:

    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. Reinicie os nagios

por 20.09.2017 / 20:43
0

No seu arquivo cgi.cfg, existem as seguintes linhas:

authorized_for_all_services=*

authorized_for_all_hosts = *

Normalmente, eles são configurados como acima, para que todos os usuários possam, pelo menos, visualizar todos os seus hosts e serviços. Então, se você adicionar seu novo usuário ao seu arquivo htpasswd, ele deverá obter o comportamento desejado por padrão.

    
por 09.02.2010 / 09:43