Nagios / Icinga: senhas diferentes para cada host NSClient ++

2

É possível passar uma senha diferente para o comando check_nt / check_nrpe para cada host do Windows que defini em minhas configurações do icinga? Por exemplo, eu tenho 3 hosts do windows

define host {
    use            windows-server
    host_name      prod
    address        10.0.0.1
}
define host {
    use            windows-server
    host_name      db
    address        10.0.0.2
}
define host {
    use            windows-server
    host_name      test
    address        10.0.0.3
}

e um serviço configurado:

define service{
    use                     generic-service
    host_name               prod,db,test
    service_description     Uptime
    check_command           check_nt!UPTIME
    normal_check_interval   180
    }

quais chamadas

define command {
    command_name    check_nt
    command_line    /usr/lib/nagios/plugins/check_nt -H '$HOSTADDRESS$' -p 12489 -v '$ARG1$'
}

Isso tudo está funcionando muito bem, mas eu quero ser capaz de definir uma senha diferente para cada host (que não é visível a partir da interface web). Eu sei que a macro USERn não aparece na interface da web, mas não sei como usá-las aqui. Existe uma maneira simples de fazer isso sem criar 3 serviços diferentes e passando a senha como um argumento nesse estágio?

    
por Chris Robinson 07.09.2014 / 07:59

1 resposta

2

Sim, apenas reescreva a definição do comando:

define command {
    command_name    check_nt_pwd
    command_line    /usr/lib/nagios/plugins/check_nt -H '$HOSTADDRESS$' -p 12489 -s '$ARG1$' -v '$ARG2$'
}

Você pode usar três definições de serviço da seguinte forma:

define service{
    use                     generic-service
    host_name               prod
    service_description     Uptime
    check_command           check_nt!PWD1!UPTIME
    normal_check_interval   180
    }
define service{
    use                     generic-service
    host_name               db
    service_description     Uptime
    check_command           check_nt!PWD2!UPTIME
    normal_check_interval   180
    }

Ou se você tiver um Nagios moderno definido as variáveis de host (_password) e usar uma macro ($ _HOSTPASSWORD $) da seguinte forma:

define host {
    use            windows-server
    host_name      prod
    address        10.0.0.1
    _password      PWD1
}
define service{
    use                     generic-service
    host_name               prod,db,test
    service_description     Uptime
    check_command           check_nt!$_HOSTPASSWORD$!UPTIME
    normal_check_interval   180
    }

Ou se você quiser adicionar a macro diretamente à definição de comando de maneira semelhante.

    
por 08.09.2014 / 06:00