Eu tenho um servidor bastião que tem acesso a 50 máquinas executando diferentes sistemas Linux. Eu também tenho um servidor Nagios separado que tem acesso ao bastião. É possível monitorar as 50 máquinas através de um túnel ssh da seguinte maneira:
Caixa Nagios - [túnel ssh] -> caixa bastião - [túneis ssh 1....50] - Máquinas Linux
Não há outra conexão direta com os 50 hosts da caixa do Nagios.
Responder1
Vários check_commands são chamados com o argumento $HOSTADRESS em checkcommands.cfg
uma configuração "padrão", como em:
/usr/lib/nagios/plugins/check_ping -H 10.1.1.2 -w 100.0,20% -c 500.0,60% -p 5
/usr/lib/nagios/plugins/check_nrpe -H 10.1.1.3 -c checkMEM -a ShowAll type=physical type=page type=virtual MaxWarn=90% MaxCrit=95%
Então o arquivo real:
define command{
command_name check_nrpe
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
}
Ou você define aqui algo como (não testei):
define command{
command_name check_nrpe
command_line ssh $HOSTADDRESS$ "$USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$"
}
Ou você escreve um hack (muito) feio criando um wrapper de shell para alguns comandos que vivem em /usr/lib/nagios/plugins/´, namely
/usr/lib/nagios/check_nrpe`, e então faz desvios no Debian.
Você provavelmente precisará de mais alterações do que isso; se você fizer nrpe sobre ssh ou similar, não precisará de SSL nele.