Monitoraggio con Nagios: check_http e problema di access denied

Nagios è un interessante servizio di monitoring che consente di controllare in tempo reale eventuali problemi hardware o software su server remoti. Di recente sono incappato in un problema di configurazione relativo al comando check_http, che serve per verificare la risposta di un servizio web.

 

Il problema consisteva nel ricevere come risposta un access denied (error 403). Consultando i log di accesso del server web, notavo che la richiesta non veniva eseguita correttamente. Di seguito la versione iniziale del comando di controllo:

define service{
use                             generic-service         ; Name of service template to use
host_name                       ilsitodiluca
service_description             HTTP
check_command                   check_http!-I SERVER_IP -H DOMAIN_URL -u /REQUEST_URI -s “find me” -t 30
notifications_enabled           1
}

Con questo tipo di service configurato la richiesta veniva eseguita direttamente al SERVER_IP senza mantenere l’indicazione relativa al dominio. Per risolvere il problema ho dovuto configurare un nuovo comando, check_url, al cui interno viene utilizzato il comando check_http.

define command{
command_name    check_url
command_line    $USER1$/check_http -I $HOSTADDRESS$ -H $ARG1$ -u $ARG2$ -s $ARG3$ -t $ARG4$
}

define service{
use                             generic-service         ; Name of service template to use
host_name                       ilsitodiluca
service_description             HTTP
check_command                   check_url!DOMAIN_URL!/REQUEST_URI!”find me”!30
notifications_enabled           1
}

 

 

Lascia un commento