Teste de atividade e funcionamento de portas através do Nmap

Publicado por Eris Alberto Schmitt (última atualização em 29/04/2015)

[ Hits: 6.587 ]

Download testport.rar




Realizar testes de portas de servidores locais ou remotos (livres de restrições de firewall) através do Nmap, com retorno de mensagens "ATIVO" ou "INATIVO".

Os arquivos testport.sh e cadastro.txt deverão estar no mesmo diretório para o funcionamento.

O arquivo cadastro.txt, deverá ser adequado às suas necessidades, devidamente posicionadas e separadas através de vírgula simples. Peço para que leia as informações do script.

O script é uma mão na roda, é a primeira ferramenta de troubleshooting que utilizo diariamente ao apresentar qualquer tipo de problema em um dos vários serviços ou servidores da rede em que atuo.

"Tamo junto nessa"

  



Esconder código-fonte

#/bin/bash!
#########################################################################################################
# Por: Eris Schmitt - erisalberto@sercomtel.com.br / facebook.com/erisalberto.schmitt                   #
# Motivo: Necessidade de verificacao rapida e parcial sobre atividade de Banco de Dados                 #
#                                                                                                       #
# Premissas: Funcionamento correto do NMAP                                                              #
#            Acesso a porta, livre de impedimentos e regras de FIREWALL                                 #
#            Deverá ser criado o arquivo "cadastro.txt", com permissao de leitura do usu-               #
#            ario utilizador do script.                                                                 #
#            Cada linha do arquivo é referente a um teste a ser realizado através do nmap               #
#            O script iráreceber as informações conforme seguinte estrutura                             #
#            modelo de estrutura:  descricao_da_porta,IP_destino,porta                                  #
#               obs: cada informação deve ser separada por virgula simples, caso contrario o            #
#                    script não funcionará corretamente                                                 #
#                                                                                                       #
# Estrutura Analítica: O Script iráretirar as informcoes (Descricão da Porta, IP Destino, Porta)        #
#                      do arquivo "cadastro.txt". Entao iráutilizar a ferramenta NMAP para reali-       #
#                      zação dos testes. Caso tenha resposta positiva no teste do NMAP, irá retornar    #
#                      a mensagem destacada "ATIVO", caso contrário "INATIVO"                           #
#                                                                                                       #
# Conclusao: Apesar do motivo do desenvolvimento, o script pode ser aplicado a qualquer finalidade com  #
#            funcão de verificar atividade de determinadas porta.                                       #
#                                                                                                       #
# Versao 1 - 04/2015                                                                                    #
# Totalmente livre, sempre!                                                                             #
#########################################################################################################

dblist=cadastro.txt
testdb() {
 lista=`cat $dblist`
        for dbs in `echo $lista`;do
                db_desc=`echo $dbs | cut -d , -f1`
                db_ip=`echo $dbs | cut -d , -f2`
                db_port=`echo $dbs | cut -d , -f3`
        if
        nmap -v $db_ip --system_dns |grep $db_port >/dev/null
        then
                resulttest=ATIVO
        else
                resulttest=INATIVO
        fi
echo -n "DESCRICAO: ";echo -e -n "\\033[1;39m\\033[1;32m$db_desc\\033[1;39m\\033[1;0m ";echo -n "IP: " ; echo -e -n "\\033[1;39m\\033[1;32m$db_ip\\033[1;39m\\033[1;0m " ; echo -n "STATUS: " ; echo -e "\\033[1;39m\\033[1;32m$resulttest\\033[1;39m \\033[1;0m "
done
}
testdb

Scripts recomendados

Removendo kernels antigos no Ubuntu

backup rsync

Tabela de cores em shellscript

SCRIPT PARA AUTOMAÇÃO DE ATUALIZAÇÃO EM AMBIENTE DEBIAN OU DERIVADOS.

Limitador de conexões para usuários


  

Comentários
[1] Comentário enviado por fabio em 29/04/2015 - 12:51h

Muito bom, parabéns pelo trabalho!

[2] Comentário enviado por Ghroll em 02/05/2015 - 13:17h

Ao executar aparece esse erro.

# bash testport.sh
testport.sh: line 27: $'\r': comando não encontrado
testport.sh: line 29: erro de sintaxe próximo do `token' não esperado `$'{\r''
'estport.sh: line 29: `testdb() {

[3] Comentário enviado por eris.sch em 02/05/2015 - 14:49h

opa
Utilizou o arquivo anexado ou copiou da tela ?
Mande as linhas 26,27,28,29,30 para eu ver o que está acontecendo.

[4] Comentário enviado por removido em 03/05/2015 - 11:33h

Legal o script, favoritado.

*Mais legal ainda: Outro Eris (Nome "dificil" o nosso) que tambem usa Linux.
------------------------------------------------------
¿? -> keyboard Error: No Keyboard Present, PRESS F1 to continue.

[5] Comentário enviado por potterjohnpotter em 22/05/2015 - 21:45h


Opa! Executei aqui, deu erro também!

[6] Comentário enviado por kelseysantos em 12/04/2016 - 13:12h

#Tente este comando aqui
#!/bin/bash
dblist=cadastro.txt
testdb() {
lista=`cat $dblist`
for dbs in `echo $lista`;do
db_desc=`echo $dbs | cut -d , -f1`
db_ip=`echo $dbs | cut -d , -f2`
db_port=`echo $dbs | cut -d , -f3`
if
nmap -v $db_ip --system_dns |grep $db_port >/dev/null
then
resulttest=ATIVO
else
resulttest=INATIVO
fi
echo -n "DESCRICAO: ";echo -e -n "\\033[1;39m\\033[1;32m$db_desc\\033[1;39m\\033[1;0m ";echo -n "IP: " ;$
done
}
testdb

[7] Comentário enviado por kelseysantos em 12/04/2016 - 13:14h



igual ao do autor só tirei a descrição.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts