Uno de los clasicos cuanto monitorizamos con nagios es el check HTTP. Nos permite monitorizar si una web está o no levantada, si un certificado va a cadudar, ya sea por IP o por nombre de host, incluso monitorizar una web que no esté corriendo en puertos comunes (80 y 443).

Su uso es muy sencillo, aquí os dejo 5 casos prácticos que os pueden ayudar a crear vuestros comandos.

Ejemplos:

Compruebe si la web está levantada usando HTTP en un servidor remoto.

./check_http -H 192.168.0.150
HTTP OK HTTP/1.1 200 OK - 332 bytes in 0.004 seconds |time=0.004144s;;;0.000000 size=332B;;;0

Compruebe si la web está levantada usando HTTPS en un servidor remoto


./check_http -H 192.168.0.150 -f ok -I 66.85.47.15 -u "/" -S --sni -p -443
HTTP OK HTTP/1.1 200 OK - 332 bytes in 0.004 seconds |time=0.004144s;;;0.000000 size=332B;;;0

Compruebe si la web está levantada usando el nombre de host en un servidor remoto.

./check_http -H 192.168.0.150 -f ok -I www.nosolohacking.info -u "/" -S --sni -p -443
HTTP OK HTTP/1.1 200 OK - 332 bytes in 0.004 seconds |time=0.004144s;;;0.000000 size=332B;;;0

Compruebe cuánto queda para que caduque el certificado SSL de host en un servidor remoto.

./check_http -H wwww.nosolohacking.info -C 60,30 -p 443
SSL OK - Certificate will expire in 80 days on 2022-03-30 +0000/UTC

Definición del comando

Ejemplo de definicón del comando en nagios, para el check check_http.

define command {
       command_name    check_http
       command_line    $USER1$/check_http -H $HOSTADDRESS$ $ARG1$
}
error: ooops!