permissão negada executando check_vmfs.sh através do NRPE

1

temos um sistema de monitoramento nagios já em execução e depois monitoramos nossos datastores vmware usando os seguintes plugin Eu instalei o vmware cli e testei sem problemas:

[root@nrpe-relay ~]# /usr/lib64/nagios/plugins/check_vmfs.sh -C /usr/lib64/nagios/plugins/vmware_esxi_conf.txt -S 192.168.20.241 -V /vmfs/volumes/LocalSlot45S6 -w 75 -c 90 -u Gb
WARNING - /vmfs/volumes/LocalSlot45S6 - total: 931.25 Gb - used: 800.95 Gb (86%)- free: 130.29 Gb (14%) | /vmfs/volumes/LocalSlot45S6=800.95Gb;698.43;838.12;;931.25

[root@nrpe-relay ~]# ps auxww|grep nrpe
nagios    1463  0.0  0.1  41468  1364 ?        Ss   21:24   0:00 nrpe -c /etc/nagios/nrpe.cfg -d
root      2261  0.0  0.0 103304   876 pts/0    S+   22:00   0:00 grep nrpe

No entanto, não estou obtendo o mesmo valor quando o comando é executado remotamente:

[root@nagios nagios]# /usr/lib64/nagios/plugins/check_nrpe -H <hostname> -c 'check_datastore_LocalSlot45S6'
CRITICAL -

Isso é o que eu tenho no meu arquivo cfg

command[check_datastore_LocalSlot45S6]=/usr/lib64/nagios/plugins/check_vmfs.sh -C /usr/lib64/nagios/plugins/vmware_esxi_conf.txt -S 192.168.20.241 -V /vmfs/volumes/LocalSlot45S6 -w 75 -c 90 -u Gb

e meu servidor cfg:

define service{
    use                     generic-service 
    host_name               <hostname>
    service_description     datastore-LocalSlot45S6
    check_command           check_nrpe!check_datastore_LocalSlot45S6
    }

Isto é o que eu posso ver em / var / log / message:

nagios nagios: EXTERNAL COMMAND: SCHEDULE_FORCED_SVC_CHECK;<hostname>;datastore-LocalSlot1-2S3;1441798845

PERGUNTA: Alguém tem alguma idéia sobre onde está o problema? ou como posso rastrear esse problema?

    
por Manuel Sopena Ballesteros 09.09.2015 / 13:49

1 resposta

3

Seu problema é que o daemon NRPE é executado como o usuário nagios e esse usuário não tem permissão para executar o comando em questão.

Você também terá que abrir permissões para que o usuário possa executá-lo (aliás, seu último comentário sugere que você não está prestando atenção total à saída; é o arquivo /usr/lib64/nagios/plugins/check_vmfs.err em qual permissão foi negada, não check_vmfs.sh ), ou modificar o NRPEd para usar o sudo sem senha, por exemplo

command[check_datastore_LocalSlot45S6]=sudo /usr/lib64/nagios/plugins/check_vmfs.sh -C /usr/lib64/nagios/plugins/vmware_esxi_conf.txt -S 192.168.20.241 -V /vmfs/volumes/LocalSlot45S6 -w 75 -c 90 -u Gb

acoplado a uma entrada sudoers similar a

nagios  ALL=(root) NOPASSWD: /usr/lib64/nagios/plugins/check_vmfs.sh

Se você pegar a última rota, também precisará ter

Defaults    !requiretty

no seu arquivo sudoers , se ainda não estiver lá.

    
por 09.09.2015 / 14:29

Tags