Te doy la bienvenida a nuestro sitio, ahora vas a encontrar la solucíon que estabas buscando.
Solución:
En ssh pluging config /etc/nagios-plugins/config/ssh.cfg, hay un alias llamado check_ssh_port. si no existe, puede definirlo como arriba:
$ cat >> /etc/nagios-plugins/config/ssh.cfg
define command
command_name check_ssh_port
command_line /usr/lib/nagios/plugins/check_ssh -p '$ARG1$' '$HOSTADDRESS$'
en el archivo de servicio /etc/nagios3/conf.d/services_nagios2.cfg, defina su servicio ssh para monitorear así:
define service
hostgroup_name ssh2-servers
service_description SSH2
check_command check_ssh_port!12000!server
use generic-service
notification_interval 240 ; set > 0 if you want to be renotified
reemplace 12000 por su puerto ssh predeterminado y servidor por su destino.
host:~$ /usr/lib/nagios/plugins/check_ssh --help
check_ssh v1991 (nagios-plugins 1.4.12)
Copyright (c) 1999 Remi Paulmier <[email protected]>
Copyright (c) 2000-2007 Nagios Plugin Development Team
<[email protected]>
Try to connect to an SSH server at specified server and port
Usage:check_ssh [-46] [-t ] [-r ] [-p ]
esto responde a tu pregunta? El parámetro -p le permite especificar el puerto, hacer una comprobación personalizada en /etc/nagios/nrpe.cfg y poner allí:
command[check_remote_ssh]= /usr/lib/nagios/plugins/check_ssh -p 1234 some.host
Como ninguna de las soluciones anteriores funcionó para mí, publicaré esta pequeña variación.
Esta definición es la predeterminada (por ejemplo: localhost.cfg
) con la única adición de la opción -p y el espacio intermedio.
Supongo que es una versión híbrida de dos de las soluciones dadas.
Funciona en Nagios Core 4 con nagios-plugins 2.1.1
define service
use local-service ; Name of service template to use
host_name localhost
service_description SSH
check_command check_ssh!-p 12345
notifications_enabled 1
Si te ha resultado de ayuda este post, te agradeceríamos que lo compartas con el resto desarrolladores de este modo nos ayudas a difundir esta información.