Monitore ssh na porta não padrão com o Nagios

10

Acabei de implantar o Nagios em um servidor Gentoo e está tudo bem, exceto o ssh, que é marcado como "CRÍTICO" porque está recusando conexões. Mas isso ocorre porque ele está sendo executado em uma porta diferente da padrão 22. Como faço para alterá-la para monitorar a porta correta?

Helder S Ribeiro
fonte

Respostas:

6
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 <timeout>] [-r <remote version>] [-p <port>] <host>

Isso responde sua pergunta? O parâmetro -p permite especificar a porta, fazer uma verificação personalizada em /etc/nagios/nrpe.cfg e colocar lá:

command[check_remote_ssh]= /usr/lib/nagios/plugins/check_ssh -p 1234 some.host
pQd
fonte
1
Funcionou! No meu caso, era o local check_sshem /etc/nagios/objects/commands.cfg. Obrigado pela ajuda :) #
Helder S Ribeiro
15

No ssh pluging config /etc/nagios-plugins/config/ssh.cfg, existe um apelido chamado check_ssh_port. se não existe, você pode defini-lo como acima:


$ 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$'
        }

no arquivo de serviço /etc/nagios3/conf.d/services_nagios2.cfg, defina seu serviço ssh para monitorar assim:


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
}
substitua 12000 pela porta e servidor ssh padrão pelo seu destino.

Ali Mezgani
fonte
+1 bem escrito para a versão mais recente do Nagios (neste momento)
cwd
6

Como nenhuma das soluções acima funcionou para mim, publicarei esta pequena variação.

Essa definição é a padrão (por exemplo localhost.cfg:) com a única adição da opção -p e o espaço intermediário.

Eu acho que é uma versão híbrida de duas das soluções fornecidas.

Funciona no Nagios Core 4 com 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
        }
cortopia
fonte
Também pode ser alterado / configurado na interface da web do Nagios4: Sistema -> Configuração e , em seguida, anexando as opções de ponto de exclamação e linha de comando check_ssh!-p 123456, por exemplo.
ILMostro_7
3

Você também pode definir o segundo parâmetro, "servidor", no parâmetro host_name, desta maneira:

    define host{
        use                     generic-host            ; Name of host template to use
        host_name               host
        alias                   host
        address                 92.193.170.124
}


# Define a service to check if ssh services are running
define service {
        use                     generic-service         ; Name of service template to use
        host_name               host
        service_description     SSH Port 4959
        check_command           check_ssh_port!4959
        notification_interval   0 ; set > 0 if you want to be renotified
}

Portanto, se o endereço do host mudar, você precisará modificar esse parâmetro apenas uma vez, para todos os serviços definidos para esse host.

aneolf
fonte
0
define service{
        use                     generic-service
        host_name               localhost
        service_description     SSH
        check_command           check_ssh!-p 9898
        }

funcionando corretamente, você pode tentar.

Rajib khan
fonte