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.834 ]

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

Executando comandos de telnet via shell-script

Convertendo man pages em arquivos pdf

/etc/issue otimizado

Cálculo de número primo

Adicionar usuários no Samba


  

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