É razoável usar o Nagios para verificar se um serviço NÃO está disponível?

9

Suponha que eu tenha um servidor com uma interface privada e uma interface pública. Público pode ter coisas como servidores HTTP (S), privado pode ter MySQL e SSH.

Obviamente, o Nagios é útil para verificar se os serviços estão sendo executados em suas respectivas interfaces. Mas é uma boa idéia criar verificações que testem explicitamente se as portas MySQL e SSH não estão abertas na interface pública? A idéia é capturar configurações incorretas inadvertidas que abriram serviços que deveriam ser privados e alertar adequadamente.

Parte de mim tem a ideia de que isso não seria muito bem dimensionado - imagine que exista uma regra DROP do iptables; por exemplo, a verificação teria que esperar até que o tempo limite da verificação excedesse antes de concluir e seguir em frente. Mas esse tempo limite teria que ser suficientemente alto para diferenciar um serviço bloqueado de um serviço aberto que está realmente atolado.

Essa é uma ideia prática? Nagios é a ferramenta certa? Eu nem olhei para a viabilidade de negar o resultado dos plugins de verificação TCP, mas tenho certeza de que é possível ...

smitelli
fonte
2
Há muito tempo estou convencido de que esse DROPnão é o alvo adequado para esse fim, o uso -j REJECT --reject-with tcp-resetresolveria esse problema específico. Para mim os seus sons pergunta como apenas mais uma razão para usar REJECTem vez de DROP.
kasperd
4
check_nmap FTW.
dmourati

Respostas:

11

Sim, claro. O trabalho de um sistema de monitoramento é garantir que os requisitos de negócios sejam atendidos atualmente pela infraestrutura de TI, quaisquer que sejam esses requisitos.

Meu pressentimento é que não há um limite fácil (bem, 65535) para o número de portas que você está monitorando para garantir que elas não fiquem subitamente abertas e que a melhor maneira de obter esse controle seja o controle rígido da fonte e o forte, monitoramento agressivo do sistema de arquivos (por exemplo, tripwire) no servidor.

Mas se existem certas portas que são absolutamente críticas para os negócios nunca são expostas, então sim, por todos os meios, faça uma verificação específica para isso. Você pode procurar no negateplug-in NAGIOS , que é fornecido com a maioria das principais distribuições, e é usado para fazer exatamente o que você sugere.

Chapeleiro Louco
fonte
3

Você pode combinar qualquer verificação com o negateplug-in para inverter a lógica da verificação. Você pode redefinir CRIT, WARN, UNKNOWN e OK para outros estados, por exemplo. Veja a saída --help para mais informações .

Se você estiver preocupado com as políticas DROP que aumentam o tempo de verificação, basta diminuir o tempo limite. Para uma verificação como essa, você provavelmente também não precisa verificar a cada 5 minutos. Temos algumas verificações semelhantes que funcionam a cada hora.

Keith
fonte