21.04.2015

Проверяем доступность портов ports

Проверяем доступность портов
Добавить комментарий
Очень часто возникает потребность проверить порт на состояние открыт/закрыт. Но не многие смогут ответить на вопрос сколько есть способов для этого, и как проверить, например, открыт ли UDP порт. Ответы на эти вопросы постарась ответить в этой заметке.


1) Проверка TCP-порта.

На дыннй момент мне удалось найти 3 метода, которыми это можно сделать:

- с помощью telnet:

Если соединение удачно, то увидим такой ответ:

$telnet 11.1.1.11 25
Trying 11.11.11.11...
Connected to mail.domain.com.ua.
Escape character is '^]'.
220 mail.domain.com.ua ESMTP Postfix

Если же неудачное, то такое:

$telnet 11.11.11.11 23
Trying 11.11.11.11...
telnet: connect to address 11.11.11.11: Operation timed out
telnet: Unable to connect to remote host

Иногда в дополнении появляется такое:

telnet: connect to address 11.11.11.11: Operation not permitted

- с помощью nc (netcat)

Если соединение удачно, то увидим такой ответ:

$nc -v 11.11.11.11 25
Connection to 11.11.11.11 25 port [tcp/smtp] succeeded!
220 mail.domain.com.ua ESMTP Postfix

Если же неудачное, то такое:

$nc -v 11.11.11.11 23
nc: connect to 11.11.11.11 port 23 (tcp) failed: Operation timed out

- с помощью nmap

Если соединение удачно, то увидим такой ответ:

#nmap  -p25 11.11.11.11

PORT   STATE SERVICE
25/tcp open  smtp

Если же неудачное, то такое:

#nmap  -p23 11.11.11.11

PORT   STATE  SERVICE
23/tcp closed telnet

Иногда при сканнировании выводится такое сообщение:

PORT   STATE    SERVICE
23/tcp filtered telnet

тогда сказать однозначно открыт или закрыт — нельзя.

2) Проверка UDP-порта.

Здесь всего 2 способа.

- с помощью nc (netcat)

Если соединение удачно, то увидим такой ответ:

$nc -uv 11.11.11.12 53
Connection to 11.11.11.12 53 port [udp/domain] succeeded!

Если же неудачное, то ничего не выводиться:

$nc -uv 11.1.1.12 50
$

- с помощью nmap

Если соединение удачно, то увидим такой ответ:

#nmap -sU -p U:53 11.1.11.12
PORT   STATE         SERVICE
53/udp open|filtered domain

Если же неудачное, то такое:

#nmap -sU -p U:53 11.1.11.13
PORT   STATE  SERVICE
53/udp closed domain

3) Выводы

telnet

Преимущества: лёгко и удобно пользоваться, установлена практически на любой ОС, для запуска не требуются права root’a.
Недостатки: нельзя проверять UDP порты

nc (netcat)

Преимущества: лёгко и удобно пользоваться, установлена практически на любой ОС, для запуска не требуются права root’a, есть возможность сканирования UDP-портов
Недостатки: не обнаружено.

nmap

Преимущества: удобно пользоваться, функционал просто радует, есть возможность сканирования UDP-портов
Недостатки: для запуска требуются права root’a, устанавливать приходиться отдельно.