Как проверить открыт ли порт ubuntu
Перейти к содержимому

Как проверить открыт ли порт ubuntu

  • автор:

Как показать/проверить открытые порты в Ubuntu Linux

Проверка открытых портов в Ubuntu Linux является важной частью администрирования безопасности. Некоторое программное обеспечение Linux работает, прослушивая входящие соединения. Простым примером может служить веб-сервер, который обрабатывает запросы пользователей всякий раз, когда кто-то заходит на веб-сайт. Администратору или пользователю Linux важно всегда знать, какие порты вашей системы открыты для Интернета. В противном случае вы можете не знать о внешних подключениях к вашему компьютеру, которые потребляют полосу пропускания и ресурсы, а также являются потенциальной дырой в безопасности.

В этом уроке мы увидим, как проверить открытые порты в Ubuntu Linux. Это можно сделать с помощью нескольких различных утилит командной строки, которые мы рассмотрим подробно. Мы также увидим, как использовать брандмауэр ufw Ubuntu, чтобы обеспечить безопасность портов. Итак, знаете ли вы, какие порты вашей системы открыты? Давай выясним.

В этом уроке вы узнаете:

  • Как проверить открытые порты с помощью команды ss
  • Как проверить открытые порты с помощью утилиты Nmap

Проверьте открытые порты с помощью команды ss

Команду ss можно использовать, чтобы показать, какие порты прослушивают соединения. Он также показывает, из каких сетей он принимает соединения.

ЗНАЕТЕ ЛИ ВЫ?
Команда ss заменила старую команду netstat в Linux. Вы по-прежнему можете установить и использовать команду netstat для проверки открытых портов.

Мы рекомендуем использовать параметры -ltn с командой, чтобы увидеть краткий и релевантный вывод. Давайте посмотрим на пример нашей тестовой системы.

$ sudo ss -ltn State Recv-Q Send-Q Local Address:Port Peer Address:Port Process LISTEN 0 4096 127.0.0.53%lo:53 0.0.0.0:* LISTEN 0 5 127.0.0.1:631 0.0.0.0:* LISTEN 0 70 127.0.0.1:33060 0.0.0.0:* LISTEN 0 151 127.0.0.1:3306 0.0.0.0:* LISTEN 0 5 [::1]:631 [::]:* LISTEN 0 511 *:80 *:*

Мы видим, что наш сервер прослушивает соединения через порты 80, 3306 и 33060. Это хорошо известные порты, связанные с HTTP и MySQL.

Вы также увидите, что вывод ss показывает, что порты 53 и 631 находятся в состоянии прослушивания. Они предназначены для DNS и протокола Интернет-печати соответственно. Они включены по умолчанию, поэтому вы, скорее всего, увидите их прослушивающими в вашей системе. Порт DNS на самом деле не открыт, а обеспечивает разрешение имен приложений, установленных в нашей системе.

Чтобы узнать, каким процессам принадлежат эти прослушиваемые порты, включите в свою команду параметр -p .

$ sudo ss -ltnp State Recv-Q Send-Q Local Address:Port Peer Address:Port Process LISTEN 0 4096 127.0.0.53%lo:53 0.0.0.0:* users:(("systemd-resolve",pid=530,fd=13)) LISTEN 0 5 127.0.0.1:631 0.0.0.0:* users:(("cupsd",pid=572,fd=7)) LISTEN 0 70 127.0.0.1:33060 0.0.0.0:* users:(("mysqld",pid=2320,fd=32)) LISTEN 0 151 127.0.0.1:3306 0.0.0.0:* users:(("mysqld",pid=2320,fd=34)) LISTEN 0 5 [::1]:631 [::]:* users:(("cupsd",pid=572,fd=6)) LISTEN 0 511 *:80 *:* users:(("apache2",pid=2728,fd=4),("apache2",pid=2727,fd=4),("apache2",pid=2725,fd=4))

Теперь мы видим, что systemd-resolve, cupsd, mysqld и apache2 — это службы, которые используют порты для прослушивания входящих соединений.

Проверьте открытые порты с помощью nmap.

Nmap — это инструмент сетевой разведки, который можно использовать для проверки открытых портов на удаленных хостах. Однако мы также можем использовать его для проверки нашей собственной системы и получения быстрого списка открытых портов.

Обычно мы указываем удаленный IP-адрес для сканирования Nmap. Вместо этого мы можем просканировать нашу собственную систему, указав в команде localhost .

$ sudo nmap localhost Starting Nmap 7.80 ( https://nmap.org ) at 2021-03-12 20:43 EST Nmap scan report for localhost (127.0.0.1) Host is up (0.000012s latency). Not shown: 997 closed ports PORT STATE SERVICE 80/tcp open http 631/tcp open ipp 3306/tcp open mysql Nmap done: 1 IP address (1 host up) scanned in 0.18 seconds

Проверьте, какие порты открыты в брандмауэре ufw

Есть большое предостережение, о котором вам следует помнить. При использовании команд ss или nmap localhost в нашей локальной системе мы обходим брандмауэр. Действительно, эти команды показывают порты, находящиеся в состоянии прослушивания, но это не обязательно означает, что порты открыты для Интернета, поскольку наш брандмауэр может запрещать соединения.

Проверьте состояние брандмауэра ufw с помощью следующей команды.

$ sudo ufw status verbose Status: active Logging: on (low) Default: deny (incoming), allow (outgoing), disabled (routed) New profiles: skip

Из вывода мы видим, что ufw запрещает входящие соединения. Поскольку порты 80 и 3306 не были добавлены в исключения, HTTP и MySQL не могут получать входящие соединения, несмотря на то, что ss и nmap сообщают, что они находятся в состоянии прослушивания. Давайте добавим исключения для этих портов с помощью следующих команд.

$ sudo ufw allow 80/tcp Rule added Rule added (v6) $ sudo ufw allow 3306/tcp Rule added Rule added (v6)

Мы можем еще раз проверить статус ufw и убедиться, что порты теперь открыты.

$ sudo ufw status verbose Status: active Logging: on (low) Default: deny (incoming), allow (outgoing), disabled (routed) New profiles: skip To Action From -- ------ ---- 80/tcp ALLOW IN Anywhere 3306/tcp ALLOW IN Anywhere 80/tcp (v6) ALLOW IN Anywhere (v6) 3306/tcp (v6) ALLOW IN Anywhere (v6)

Теперь наши два порта открыты в брандмауэре и находятся в состоянии прослушивания. Чтобы узнать больше о брандмауэре ufw, включая примеры команд, ознакомьтесь с нашим руководством по установке и использованию брандмауэра ufw в Linux.

Заключительные мысли

В этом руководстве мы увидели, как использовать команду ss , а также утилиту nmap для проверки портов прослушивания в Ubuntu Linux. Мы также узнали, как проверить брандмауэр ufw, чтобы узнать, какие порты открыты, и при необходимости добавить исключения.

Если порт находится в состоянии прослушивания и ему разрешен доступ через брандмауэр, он должен быть открыт для входящих подключений. Но это также зависит от вашего маршрутизатора или других сетевых устройств, находящихся между вашим компьютером и Интернетом, поскольку у них могут быть свои собственные правила, блокирующие входящие соединения.

Все права защищены. © Linux-Console.net • 2019-2024

Как проверить открытые порты в Linux Ubuntu с помощью командной строки

Проверка открытых портов на сервере Linux Ubuntu является важной задачей, особенно когда вам нужно убедиться, что определенные службы или приложения могут быть доступны извне. В этой статье мы рассмотрим, как выполнить проверку открытых портов в Linux Ubuntu с помощью командной строки и языка программирования shell.

1. Использование утилиты netstat

Одним из способов проверки открытых портов в Linux Ubuntu является использование утилиты netstat. Она позволяет просмотреть список активных сетевых соединений и открытых портов на вашем сервере.

Чтобы использовать утилиту netstat, откройте терминал и выполните следующую команду:

$ netstat -tuln

Эта команда покажет список всех открытых портов на сервере. В выводе будут указаны протокол, локальный адрес, внешний адрес и состояние соединения.

2. Использование утилиты nmap

Другим способом проверки открытых портов в Linux Ubuntu является использование утилиты nmap. Она предоставляет более широкий функционал для сканирования сети и проверки открытых портов.

Чтобы использовать утилиту nmap, откройте терминал и выполните следующую команду:

$ sudo nmap -p [порт] [IP-адрес]

Здесь [порт] — номер порта, который вы хотите проверить, а [IP-адрес] — IP-адрес вашего сервера.

$ sudo nmap -p 80 192.168.0.1

Эта команда проверяет, открыт ли порт 80 на IP-адресе 192.168.0.1.

3. Использование утилиты telnet

Третьим способом проверки открытых портов в Linux Ubuntu является использование утилиты telnet. Она позволяет установить соединение с указанным портом на удаленном сервере.

Чтобы использовать утилиту telnet, откройте терминал и выполните следующую команду:

$ telnet [IP-адрес] [порт]

Здесь [IP-адрес] — IP-адрес вашего сервера, а [порт] — номер порта, который вы хотите проверить.

$ telnet 192.168.0.1 80

Эта команда пытается установить соединение с портом 80 на IP-адресе 192.168.0.1.

Вывод

Проверка открытых портов в Linux Ubuntu является важной задачей для обеспечения доступности ваших приложений и служб. В этой статье мы рассмотрели три способа выполнить такую проверку с использованием командной строки и языка программирования shell. Утилиты netstat, nmap и telnet помогут вам определить, какие порты открыты на вашем сервере и доступны извне.

Как проверить, открыт ли порт в Ubuntu

Когда вы работаете с Ubuntu или любым другим Linux-сервером, может возникнуть необходимость проверить, открыт ли определенный порт на сервере. Это может быть полезно, например, когда вы настраиваете сетевые сервисы или хотите убедиться, что ваш сервер отвечает на определенный порт.

Использование команды nc (netcat)

Одним из способов проверить открыт ли порт является использование команды nc (netcat). Netcat — это утилита командной строки, которая позволяет устанавливать сетевые соединения с использованием TCP или UDP протоколов.

Проверка открытости порта TCP

nc -zv адрес_сервера порт_TCP 

Например, чтобы проверить, открыт ли порт 80 на сервере с IP-адресом 192.168.0.1:

nc -zv 192.168.0.1 80 

Если порт открыт, вы увидите сообщение «Connection to 192.168.0.1 80 port [tcp/http] succeeded!». Если порт закрыт или сервер не отвечает, вы увидите сообщение «nc: connect to 192.168.0.1 port 80 (tcp) failed: Connection refused».

Проверка открытости порта UDP

nc -zvu адрес_сервера порт_UDP 

Например, чтобы проверить, открыт ли порт 53 (используется для DNS) на сервере с IP-адресом 192.168.0.1:

nc -zvu 192.168.0.1 53 

Если порт открыт, вы увидите сообщение «Connection to 192.168.0.1 53 port [udp/domain] succeeded!». Если порт закрыт или сервер не отвечает, вы увидите сообщение «nc: connect to 192.168.0.1 port 53 (udp) failed: Connection refused».

Использование команды telnet

Другим способом проверить открытость порта является использование команды telnet. Telnet — это протокол, позволяющий установить удаленное сетевое соединение с сервером.

Проверка открытости порта TCP

telnet адрес_сервера порт_TCP 

Например, чтобы проверить, открыт ли порт 22 (используется для SSH) на сервере с IP-адресом 192.168.0.1:

telnet 192.168.0.1 22 

Если порт открыт, вы увидите сообщение «Connected to 192.168.0.1». Если порт закрыт или сервер не отвечает, вы увидите сообщение «telnet: Unable to connect to remote host: Connection refused».

Проверка открытости порта UDP

Команда telnet не поддерживает проверку открытости порта UDP.

Использование команды nmap

Еще одним инструментом, который можно использовать для проверки открытости порта в Ubuntu, является команда nmap. Nmap — это утилита для сканирования сети, которая позволяет анализировать сетевые хосты и обнаруживать открытые порты.

Проверка открытости порта TCP

nmap -p порт_TCP адрес_сервера 

Например, чтобы проверить, открыт ли порт 443 (используется для HTTPS) на сервере с IP-адресом 192.168.0.1:

nmap -p 443 192.168.0.1 

Если порт открыт, вы увидите сообщение «443/tcp open https». Если порт закрыт или сервер не отвечает, вы увидите сообщение «443/tcp closed».

Проверка открытости порта UDP

nmap -p порт_UDP -sU адрес_сервера 

Например, чтобы проверить, открыт ли порт 161 (используется для SNMP) на сервере с IP-адресом 192.168.0.1:

nmap -p 161 -sU 192.168.0.1 

Если порт открыт, вы увидите сообщение «161/udp open snmp». Если порт закрыт или сервер не отвечает, вы увидите сообщение «161/udp closed».

Заключение

В этой статье мы рассмотрели несколько способов проверить, открыт ли порт на Ubuntu. Вы можете использовать команды nc, telnet или nmap в зависимости от ваших потребностей. Будьте осторожны при проверке портов на удаленных серверах и убедитесь, что у вас есть права доступа.

Просмотр открытых портов в Ubuntu

Любая программа связывается с другой через интернет или в пределах локальной сети. Используются для этого специальные порты, обычно протоколов TCP и UDP. Узнать, какие из всех доступных портов на данный момент используются, то есть считаются открытыми, можно с помощью подручных средств в операционной системе. Давайте детально рассмотрим эту процедуру на примере дистрибутива Ubuntu.

Просматриваем открытые порты в Ubuntu

Для выполнения поставленной задачи мы предлагаем использовать стандартную консоль и дополнительные утилиты, позволяющие проводить мониторинг сети. Разобраться в командах смогут даже неопытные пользователи, поскольку мы дадим объяснение каждой. Предлагаем ознакомиться с двумя различными утилитами далее.

Способ 1: lsof

Утилита под названием lsof проводит мониторинг всех системных соединений и выводит на экрана подробную информацию о каждом из них. Нужно лишь присвоить правильный аргумент, чтобы получить интересующие вас данные.

    Запустите «Терминал» через меню или командой Ctrl + Alt + T.

Запустить консоль через меню в Ubuntu

Запустить сканирование lsof в Ubuntu

Ввести пароль для запуска сканирования в Ubuntu

Ознакомиться с результатами сканирования lsof в Ubuntu

Выборочное сканирование lsof в Ubuntu

Результаты выборочного сканирования в Ubuntu

Способ 2: Nmap

Открытое программное обеспечение Nmap тоже способно выполнять функцию сканирования сетей на предмет активных соединений, однако реализовано оно немного иначе. У Nmap есть и версия с графическим интерфейсом, но сегодня она нам не пригодится, поскольку использовать ее не совсем целесообразно. Работа же в утилите выглядит так:

    Запустите консоль и проведите установку утилиты путем ввода sudo apt-get install nmap .

Установка Nmap через терминал в Ubuntu

Ввод пароля для установки Nmap в Ubuntu

Подтверждение добавления файлов Nmap в Ubuntu

Запустить сканирование сети в Nmap Ubuntu

Ознакомиться с результатами сканирования Nmap в Ubuntu

Приведенная выше инструкция подходит для получения внутренних портов, если же вы заинтересовались внешними, следует провести немного другие действия:

    Узнайте ваш сетевой IP-адрес через онлайн-сервис Icanhazip. Для этого в консоли введите wget -O — -q icanhazip.com , а затем нажмите на Enter.

Узнать свой сетевой IP через онлайн-сервис в Ubuntu

Ознакомиться со своим сетевым адресом в Ubuntu

Провести сканирование по сетевому адресу Nmap в Ubuntu

Результаты сканирования по сетевому адресу в Ubuntu

Мы рассмотрели два метода, поскольку каждый из них ищет информацию по своим алгоритмам. Вам же остается только выбрать наиболее оптимальный вариант и путем мониторинга сети узнать, какие порты на текущий момент открыты.

Виктор Бухтеев Вам помогли мои советы?

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *