Testar várias portas TCP para um único host/IP

Publicado por Hertz Raya Zocolan Silva (última atualização em 11/07/2018)

[ Hits: 4.481 ]

Download telnet_port.sh




Teste de telnet para várias portas em um mesmo IP/Hostname.

Exemplo de sintaxe:

# ./telnet_port.sh localhost '22|80'

Saída do script:

telnet localhost : | (22) | (80) |

A porta que estiver em Highlight não esta acessível.

  



Esconder código-fonte

#!/bin/bash
type telnet 1>/dev/null 2>&1
ERRO="$?"

if [ "${ERRO}" -gt 0 ]
then
   echo -e "\nTelnet not installed or not in \$PATH\n" ; exit 3
fi

if [ -z $1 ] || [ -z $2 ]
then
   echo -e "\nSintaxe: $0 [ HOSTNAME/IP | -p 'port1 | port2 | ...' ]\n" ; exit 3
else
   HOST="$1"
   PORTS="$2"
fi

check_port_telnet()
{
TIMEOUT=3; telnet ${HOST} ${PORT} 2>&1 1>/dev/null & WPID=$!; sleep $TIMEOUT && kill $! 2>/dev/null 1>&1 & KPID=$!; wait $WPID 2>/dev/null
}

echo -e "telnet ${HOST} : | \c"

echo -e "`echo ${PORTS} | sed 's:|:\\n:g'`" | while read PORT
do
   check_port_telnet ${HOST} ${PORT}> /tmp/a.$$
   conf="`cat /tmp/a.$$ | grep -i closed | wc -l`" ; conf="`echo ${conf}`" ; yes | rm -f /tmp/a.$$ 2>/dev/null

   if [ "${conf}" -gt 0 ]
   then
      status="(${PORT}) | \c"
   else
      status="`tput smso`(${PORT})`tput rmso` | \c"
   fi
    echo -e "$status"
done
echo ""

Scripts recomendados

Script de backup que envia por FTP, gera log e envia por e-mail

Instalação do DBDesigner4

Script "go" v.2 - Inicia Sessoes SSH e Terminal Service

Barra de progresso

Plugin para Nagios


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts