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

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 para apagar CD-RW com barra de progresso em Xdialog

Bloquear e-mails em massa ZIMBRA

Crie playlists personalizadas e execute-as com o mplayer

Download de Wallpapers de Fotos do Espaço

Backup via FTP


  

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