[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script][ajuda] Retornar portas tcp e udp usadas
From: |
André Saunite |
Subject: |
Re: [shell-script][ajuda] Retornar portas tcp e udp usadas |
Date: |
Sun, 23 Sep 2007 20:27:07 -0300 |
Oi tallescss, dê uma olhada no script abaixo e veja se ele te ajuda,
#!/bin/bash
if [ $# -lt 2 ]; then
echo 'Uso: $0 <Menor Porta> <Maior Porta>'
else
MIN=$1
MAX=$2
if [ $MIN -ge 1 ] && [ $MAX -le 65535 ]; then
netstat -tcp -an | egrep -v "^Active|^Proto" | awk -F:
'{ print $2 }' | awk -v min="$MIN" max="$MAX"'{if
(($1>=min)&&($1<=max)) print $1}'
else
echo "Valores devem ser entre 1 e 65535"
fi
fi
Abs,
André
On 9/23/07, tallescss <address@hidden> wrote:
>
>
>
>
>
>
> Preciso fazer um script que:
>
> " Verifique em um intervalo de valores cujos valores inicial e final
> sejam no mínimo 1 e no máximo 65535, quais portas do TCP ou UDP estão
> sendo usadas por algum serviço da máquina. Sabe-se que estes números
> de porta estão listados no arquivo /etc/services.
> O possível lixo de execução de comandos no script não deve ser exibido
> na tela.
> Se digitarmos na linha de comando:
> ./verportas 25 30
> Poderíamos ter como resposta:
> Portas usadas no momento pelos servicos:
> 25
> 26
> 28
> 29"
>
> Pensei em fazer usando netstat -tcp -an e awk -F. '{$4 "." $3 "." $2
> "." $1}' pra quebrar o resultado do netstat em blocos e pegar o bloco
> equivalente a porta que está sendo usada e com esse resultado usar o
> grep pra procurar no arquivo services o protocolo que usa ela.
>
> Mas não consegui, to indo pelo caminho certo? Tem outro modo de realizar?
>
>
--
------------------------------------
André Marques Saunite
e-mail/MSN: address@hidden
Linux User - 308676
------------------------------------