В этой статье мы покажем вам, как проверить, какие порты открыты в удаленной системе Linux, используя три метода.
Это можно сделать с помощью следующих команд Linux.
- nc: Netcat – простая утилита Unix, которая считывает и записывает данные через сетевые соединения, используя протокол TCP или UDP.
- nmap: Nmap («Network Mapper») – это инструмент с открытым исходным кодом для исследования сети и аудита безопасности. Он был разработан для быстрого сканирования больших сетей.
- telnet: команда telnet используется для интерактивного взаимодействия с другим хостом по протоколу TELNET.
Как проверить, открыт ли порт на удаленной системе Linux с помощью команды nc (netcat)?
nc означает netcat.
Netcat – это простая утилита Unix, которая читает и записывает данные через сетевые соединения, используя протокол TCP или UDP.
Она разработана, чтобы быть надежным «внутренним» инструментом, который может использоваться напрямую или легко управляться другими программами и скриптами.
В то же время это многофункциональный инструмент для отладки и исследования сети, поскольку он может создавать практически любые типы соединений, которые вам понадобятся, и имеет несколько интересных встроенных возможностей.
Netcat имеет три основных режима работы.
Это режим подключения, режим прослушивания и туннельный режим.
- Как установить и использовать команду netcat в Linux
- Как использовать команду Linux Netcat в качестве сканера портов
- Netcat vs Cryptcat — удаленная консоль для управления Kali Linux с Windows-машины
Общий синтаксис для nc (netcat):
$ nc [-options] [HostName or IP] [PortNumber]
В этом примере мы собираемся проверить, открыт ли порт 22 в удаленной системе Linux.
В случае успеха вы получите следующий результат.
# nc -zvw3 192.168.1.8 22 Connection to 192.168.1.8 22 port [tcp/ssh] succeeded!
Если порт не доступен, вы получите следующий вывод.
# nc -zvw3 192.168.1.95 22 nc: connect to 192.168.1.95 port 22 (tcp) failed: Connection refused
Как проверить, открыт ли порт на удаленной системе Linux с помощью команды nmap?
Nmap («Network Mapper») – это инструмент с открытым исходным кодом для исследования сети и аудита безопасности.
Он был разработан для быстрого сканирования больших сетей, хотя он отлично работает на отдельных хостах.
Хотя Nmap обычно используется для аудита безопасности, многие системные и сетевые администраторы считают его полезным для рутинных задач, таких как инвентаризация сети, управление расписаниями обновления служб и мониторинг времени работы хоста или службы.
Общий синтаксис для nmap:
$ nmap [-options] [HostName or IP] [-p] [PortNumber]
В случае успеха вы получите следующий результат.
# nmap 192.168.1.8 -p 22 Starting Nmap 7.70 ( https://nmap.org ) at 2019-03-16 03:37 IST Nmap scan report for 192.168.1.8 Host is up (0.00031s latency). PORT STATE SERVICE 22/tcp open ssh Nmap done: 1 IP address (1 host up) scanned in 13.06 seconds
Если это не удастся, вы получите следующий вывод.
# nmap 192.168.1.8 -p 80 Starting Nmap 7.70 ( https://nmap.org ) at 2019-03-16 04:30 IST Nmap scan report for 192.168.1.8 Host is up (0.00036s latency). PORT STATE SERVICE 80/tcp closed http Nmap done: 1 IP address (1 host up) scanned in 13.07 seconds
См. еще про Nmap:
- Как сканировать удаленный хост на открытые порты с помощью портативного сканера nmap
- Как установить Nmap 7.01 и использовать его в Linux Mint 18.3
- Как установить NMAP в Windows с примерами использования в реальном времени
- Как перечислить каталоги веб-серверов с помощью Nmap на Kali Linux
- Отключение портов 135 и 445 / Сканирование на уязвимость Nmap
- 4 способа узнать, какие порты прослушиваются в Linux
Как проверить, открыт ли порт на удаленной системе Linux с помощью команды telnet?
Команда telnet используется для интерактивного взаимодействия с другим хостом по протоколу TELNET.
Общий синтаксис для telnet:
$ telnet [HostName or IP] [PortNumber]
В случае успеха вы получите следующий результат.
$ telnet 192.168.1.9 22 Trying 192.168.1.9... Connected to 192.168.1.9. Escape character is '^]'. SSH-2.0-OpenSSH_5.3 ^] Connection closed by foreign host.
Если это не удастся, вы получите следующий вывод.
$ telnet 192.168.1.9 80 Trying 192.168.1.9... telnet: Unable to connect to remote host: Connection refused
Допустим, SSH открыт. Что дальше делать?
Зависит от вашей задачи