Какие порты прослушиваются в Linux

Опубликовано admin в

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

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

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

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

$ sudo netstat -ltup 

Флаг -l указывает netstat вывести все прослушивающие сокеты (сокет это ip + порт), -t показывает все TCP-соединения, -u отображает все соединения UDP, а -p позволяет выводить имя приложения/программы, прослушивающее порт.

Чтобы выводить числовые значения (номер порта), а не имена служб, добавьте флаг -n.

$ sudo netstat -lntup

Вы также можете использовать команду grep, чтобы узнать, какое приложение прослушивает конкретный порт, например:

$ sudo netstat -lntup | grep "nginx"

В качестве альтернативы вы можете указать порт и найти приложение:

$ sudo netstat -lntup | grep ":80"

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

ss — еще один полезный инструмент для отображения информации о сокетах. Он в своём использовании похож на netstat. Следующая команда выведет все порты прослушивающие соединения TCP и UDP в числовом формате.

$ sudo ss -lntu

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

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

$ sudo apt install nmap [On Debian/Ubuntu]
$ sudo yum install nmap [On CentOS/RHEL]
$ sudo dnf install nmap [On Fedora 22+]

Чтобы «отсканировать» все открытые/прослушивающие порты в вашей Linux-системе, выполните следующую команду (она займет много времени для своего выполнения).

$ sudo nmap -n -PN -sT -sU -p- localhost

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

Конечным инструментом, который мы рассмотрим для поиска открытых портов, является команда lsof.

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

$ sudo lsof -i

Чтобы узнать, какое приложение прослушивается на определенном порту, запустите lsof в таком виде:

$ sudo lsof -i :80

На этом всё! В этой статье мы объяснили четыре способа узнать какие порты прослушиваются в Linux. Мы также показали, как проверить, какие процессы связаны с конкретными портами.

Источник

Рубрики: ApacheUbuntu