Monitoramento de portas com netcat

Bom, venho neste artigo compartilhar um pouco meu conhecimento em administração de servidores com Linux. O artigo consiste no uso do netcat (nc) para monitoramento de portas ativas. Criaremos um script para monitoramento de portas e outro para alerta ao administrador via e-mail.

[ Hits: 31.258 ]

Por: Eduardo Ramos em 28/04/2005


Iniciando



Bom, venho neste artigo compartilhar um pouco de meu conhecimento em administração de servidores Linux. O artigo consiste no uso do netcat (nc) para monitoramento de portas ativas.

Lendo primeiramente o artigo do nosso amigo tzbishop teremos então um base para a utilização do netcat:
Porém vamos usá-lo de outra forma, vamos somente monitorar os serviços criando alguns scripts.

Nesse artigo vamos usar o diretório /scripts/check para criá-los:

# mkdir -p /scripts/check

Em seguida vamos criar nosso primeiro shell script, o de checagem que se chamará check.sh:

#!/bin/bash

ncmd="/usr/bin/nc -z -w 20"
m1="192.168.0.1"
p3128="3128" # porta do squid

# Servidor Linux
echo "Testando porta do squid..."
$ncmd $m1 $p3128 > /dev/null 2>&1
if [ $? != 0 ] ; then
echo "Serviço do servidor Linux ($m1) porta $p3128 FALHOU"
else echo "Serviço do servidor Linux ($m1) porta $p3128 OK"
fi
echo finalizando teste no servidor Linux.

Salve este arquivo dentro do diretório scripts/check e em seguida dê permissão de execução para ele:

# chmod +x check.sh

Depois pode testá-lo digitando:

#./check

Se o serviço estiver ativo deve aparecer algo igual a:

Testando porta do squid...
Serviço do servidor Linux (192.168.0.1) porta 3128 OK
finalizando teste no servidor Linux.

Você pode incluir mais entradas no arquivo check.sh, isto vai ficando a critério do administrador.

    Próxima página

Páginas do artigo
   1. Iniciando
   2. Notificando o administrador em caso de falha
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Wireless no Slackware com ndiswrapper (placa PCMCIA SMC)

Baixando um mesmo arquivo em mais de um computador

Utilizando o Smartphone Samsung Omnia 900i como modem via bluetooth no Ubuntu 9.10

Servidor FTP com NetBSD (PureFTPD + MySQL)

Compilando o Apache 2 com PHP e MySQL

  
Comentários
[1] Comentário enviado por Ragen em 28/04/2005 - 08:25h

Olá Eduardo,

Só queria fazer um breve comentário... Desde que se tenha criatividade, pode-se fazer muita coisa com netcat, desde a sistema de transferencias de arquivos de um ponto a outro até um man-in-the-middle.

No entanto, em se falando de "varredura" por servicos, o nmap da um show a parte. Ou seja, pelo que eu entendi, o script que você colocou no seu artigo tenta fazer uma conexão na porta do serviço (certo? me corrija se eu tiver errado)... Se ele não estabelecer a conexão, entende-se que o sistema está com problemas. Porém pode acontecer de um servico ter problemas adversos E permitir uma nova conexão, por exemplo, ter um loop *infinito*/muito grande (problema relativamente comum em servidores MySQL 4) que inutiliza o serviço - Em algumas vezes o serviço se re-esbelece automaticamente, em outros casos não.

Nesse caso, além de testar uma conexão pra porta do servico, você precisa testá-lo (fazendo algum tipo de requisicao e analizar a resposta) para ter um pouco mais de segurança.

[]'s

Ragen

[2] Comentário enviado por shocker em 28/04/2005 - 09:56h

Eu prefiro utilizar o SNMP.
Além de ser padrão de mercado para monitoramento, ele é muito mais confiável e trata condições de erro, como as mencionadas pelo Ragen, no comentário acima.

Mais parabéns pelo artigo!

[]'s

Alan.

[3] Comentário enviado por eduardo.ramos em 28/04/2005 - 15:46h

Bom, críticas e sugestões são bem vindas, porém este foi uma solução simples que tinha pensado em resolver muito rápido um problema na minha rede. e é claro, que existem outras funçoes para o nc bem como a analise com outras ferramentas.
Eduardo Ramos

[4] Comentário enviado por patrickbrandao em 28/04/2005 - 20:31h

Grande garoto!

gostei do artigo, tive umas ideias muito boas...
continue assim, lembre-se: voce é brasileiro, e brasileiro...

Patrick Brandão

[5] Comentário enviado por eduardo.ramos em 29/04/2005 - 10:37h

Pow Patrick, valeu! vindo de vc só tenho a agradecer o incentivo...
Um forte abraço!

Eduardo Ramos

[6] Comentário enviado por agk em 29/04/2005 - 17:56h

Grande artigo, mostrando que com linux existem N soluções possíveis para um problema. Ehehe, com um pouco de criatividade e empenho se resolve qualquer parada.

[7] Comentário enviado por K1LL -9 em 13/11/2006 - 17:15h

Aê Eduardo ... boa boa ... eu curti.
Outro dos infinitos lados boms de nosso mundo Open-Source, vc larga um script com uma idéia bacana, além de quebrar seu próprio galho quebra de outros e ainda mais:
Disponibiliza base pra outras idéias.

Mas o script do graande Cabelo funciona (pelo menos com a claro) se vc alterar e usar por exemplo:

5191000000@clarotorpedo.com.br
ou melhor:
Cód-de-Área+Número-do-Cellular@clarotorpedo.com.br

Quando cai algo em algun cliente antes dele chiar o meu celular me avisa.

[]'s


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor HostGator.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts