Я хочу проверить, какой удаленный порт открыт, чтобы узнать, нужно ли мне подключаться к telnet VNC Teamviewer или как-то еще.
У меня будет около 10 портов для тестирования, и я делаю скрипт для этого.
На данный момент я пришел с этим кодом:
function testPort(){
res=`nc -v $1 $2 < /dev/null`
echo $res
if [[ "$res" == *refused* ]]
then
echo "refused"
return 0
else
echo "accepted"
return 1
fi
}
if test -z "$1"
then
echo "What's the adress?"
read IP
else
IP="$1"
fi
testPort $IP 80
Результат echo $res
выглядит примерно так:
nc: connect to 192.168.0.110 port 80 (tcp) failed: Connection refused
RFB 003.889 Connection to 192.168.0.110 5900 port [tcp/vnc-server] succeeded!
Но в любом случае я получил «принятый». Я не могу понять, почему. Может кто-нибудь объяснить мне, где моя ошибка?