Как проверить наличие открытых портов в Debian 10
Проверка портов очень важна для проверки того, какие порты открыты и прослушиваются в вашей системе. Службы прослушивания могут быть отправной точкой для хакеров, которые могут использовать уязвимости в системах для получения доступа или взлома системы. Не рекомендуется поддерживать работу службы, если вы ее не используете. Кроме того, это потребляет дополнительные ресурсы. Поэтому необходимо постоянно проверять открытые порты в вашей системе.
В этой статье мы объясним, как проверить открытые порты в системе Debian 10 четырьмя различными способами.
Проверить открытые порты с помощью команды ss
Команда ss (статистика сокетов) в Linux предоставляет важную информацию о сетевых подключениях, включая открытые порты и прослушиваемые сокеты. Он получает эту информацию от ядра Linux. Когда команда ss используется без каких-либо аргументов командной строки, она отображает подробную информацию обо всех текущих подключениях, независимо от того, в каком состоянии они находятся. Команда ss заменяет команду netstat. Команда ss включена в пакет iproute2 и доступна в системе Debian. Однако, в любом случае, если вы не найдете его в своей системе, вы легко сможете его установить.
Откройте Терминал в вашей системе Debian 10 и выполните в нем следующую команду:
Чтобы проверить открытые порты в вашей системе Debian, введите в Терминале следующую команду:
- -t, –tcp: Чтобы увидеть все сокеты TCP
- -u, –udp: Чтобы увидеть все сокеты UDP
- -l, –listening: Чтобы увидеть все прослушивающие сокеты
- -p, —processes: Чтобы увидеть, какие процессы используют сокеты
- -n, –numeric: Используйте этот параметр, если хотите видеть номер порта вместо имен служб.
В выводе вы увидите список всех прослушиваемых соединений TCP и UDP.
Приведенный выше вывод показывает, что в системе открыт только порт 22.
Если вы используете опцию -p или —processes с командой ss, вы должны быть пользователем root или пользователем с привилегиями sudo. В противном случае вы не сможете увидеть идентификационный номер процесса (PID) процесса, работающего на портах.
Проверьте открытые порты с помощью команды netstat
Команда Netstat в Linux предоставляет информацию о текущих сетевых соединениях и статистику. Netstat имеет почти те же параметры команды, что и команда ss. Чтобы использовать команду netstat, вам необходимо установить net-tools. Для этого выполните следующую команду в Терминале:

После установки вы можете использовать команду netstat в своем терминале Debian.
Чтобы проверить открытые порты в вашей системе Debian, выполните в ней следующую команду:
- -t, —tcp: Чтобы увидеть все сокеты TCP
- -u, —udp: Чтобы увидеть все сокеты UDP
- -l, —listening: Чтобы увидеть все прослушивающие сокеты
- -p, —processes: Чтобы увидеть, какие процессы используют сокеты
- -n, —numeric: Используйте этот параметр, если хотите видеть номер порта вместо имен служб.

Приведенный выше вывод показывает, что в системе открыт только порт 22.
Если вы используете опцию -p или —processes с командой netstat, вы должны быть пользователем root или пользователем с привилегиями sudo. В противном случае вы не сможете увидеть идентификационный номер процесса (PID) процесса, работающего на портах.
Проверьте открытые порты с помощью команды lsof
Команда lsof в Linux означает список открытых файлов (поскольку в Linux все является файлом, включая устройства, каталоги, порты и т. д.). С помощью команды lsof вы можете искать информацию о файлах, открытых разными процессами.
Команда lsof доступна в системе Debian. Однако в любом случае, если вы не найдете его в своей системе, вы можете легко установить его, используя следующую команду в Терминале:
Чтобы использовать lsof для просмотра всех прослушиваемых портов TCP, введите следующую команду в Терминале:

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

После выполнения вышеуказанной команды система может запросить подтверждение того, хотите ли вы продолжить установку или нет. Нажмите y, чтобы продолжить, после этого в вашей системе начнется установка.
После установки вы можете использовать Nmap для проверки открытых портов в вашей системе. Для этого введите в Терминале следующую команду:
Поскольку IP-адрес нашей системы — 192.168.72.158, команда будет такой:

Приведенный выше вывод показывает, что в системе открыт только порт 22.
Вот и все! В этой статье мы обсудили, как проверить открытые порты в системе Debian 10. Надеюсь, вам понравилась статья!
Проверка доступности TCP/UDP- порта в Linux-server
Приветствую тебя, читатель! Если ты попал сюда, видимо, ты находишься в поиске информации, как проверять сетевые доступы в командной строке Linux. Постараюсь ответить на этот вопрос.
Проверка доступности TCP-порта
Для проверки доступности TCP-порта в командной строке Linux идеально подходит утилита telnet. Ниже я приведу несколько примеров:
Вместо telnet можно воспользоваться утилитой nc (NetCat), команды у нее очень простые. Ниже приведу аналогичную проверку доступности порта MySQL:
С полным списком доступных ключей утилиты nc и их описанием можно ознакомиться тут.
Проверка доступности UDP-порта
Для проверки UDP-портов выбор утилит меньше. Я использую в основном nc (NetCat). Ниже приведу несколько примеров проверки UDP-порта:
Как посмотреть открытые порты в Linux
Сетевые порты — это механизм, с помощью которого операционная система определяет какой именно программе необходимо передать сетевой пакет. Здесь можно привести пример с домом. Например, почтальону необходимо доставить посылку. Он доставляет посылку к дому, это IP адрес компьютера. А дальше в самом доме уже должны разобраться в какую квартиру направить эту посылку. Номер квартиры — это уже порт.
Если порт открыт это означает, что какая либо программа, обычно сервис, использует его для связи с другой программой через интернет или в локальной системе. Чтобы посмотреть какие порты открыты в вашей системе Linux можно использовать множество различных утилит. В этой статье мы рассмотрим самые популярные способы посмотреть открытые порты Linux.
Как посмотреть открытые порты linux
1. netstat
Утилита netstat позволяет увидеть открытые в системе порты, а также открытые на данный момент сетевые соединения. Для отображения максимально подробной информации надо использовать опции:
- -l или —listening — посмотреть только прослушиваемые порты;
- -p или —program — показать имя программы и ее PID;
- -t или —tcp — показать tcp порты;
- -u или —udp показать udp порты;
- -n или —numeric показывать ip адреса в числовом виде.
Открытые порты Linux, которые ожидают соединений имеют тип LISTEN, а перед портом отображается IP адрес на котором сервис ожидает подключений. Это может быть определенный IP адрес или */0.0.0.0 что означают любой доступный адрес:
sudo netstat -tulpn

Утилита ss — это современная альтернатива для команды netstat. В отличие от netstat, которая берет информацию из каталога /proc, утилита ss напрямую связывается со специальной подсистемой ядра Linux, поэтому работает быстрее и её данные более точные, если вы хотите выполнить просмотр открытых портов это не имеет большого значения. Опции у неё такие же:

Можно вывести только процессы, работающие на 80-том порту:
sudo ss -tulpn | grep :80

3. lsof
Утилита lsof позволяет посмотреть все открытые в системе соединения, в том числе и сетевые, для этого нужно использовать опцию -i, а чтобы отображались именно порты, а не названия сетевых служб следует использовать опцию -P:

Ещё один пример, смотрим какие процессы работают с портом 80:
sudo lsof -i -P | grep :80

4. Nmap
Программа Nmap — мощный сетевой сканер, разработанный для сканирования и тестирования на проникновение удаленных узлов, но ничего не мешает направить его на локальный компьютер. Утилита позволяет не только посмотреть открытые порты, но и примерно определить какие сервисы их слушают и какие уязвимости у них есть. Программу надо установить:
sudo apt install nmap
Затем можно использовать:

Для простого сканирования можно запускать утилиту без опций. Детальнее о её опциях можно узнать в статье про сканирование сети в Nmap. Эта утилита ещё будет полезна если вы хотите посмотреть какие порты на компьютере доступны из интернета.
Если это публичный сервер, то результат скорее всего не будет отличатся от локального сканирования, но на домашнем компьютере все немного по другому. Первый вариант — используется роутер и в сеть будут видны только порты роутера, еще одним порогом защиты может стать NAT-сервер провайдера. Технология NAT позволяет нескольким пользователям использовать один внешний IP адрес. И так для просмотра открытых внешних портов сначала узнаем внешний ip адрес, для надежности воспользуемся онлайн сервисом:
wget -O — -q eth0.me

Дальше запускаем сканирование:

В результате мы видим, что открыт порт 80 веб-сервера и 22 — порт службы ssh, я их не открывал, эти порты открыты роутером, 80 — для веб-интерфейса, а 22 для может использоваться для обновления прошивки. А еще можно вообще не получить результатов, это будет означать что все порты закрыты, или на сервере установлена система защиты от вторжений IDS. Такая проверка портов может оказаться полезной для того, чтобы понять находится ли ваш компьютер в безопасности и нет ли там лишних открытых портов, доступных всем.
5. Zenmap
Программа Zenmap — это графический интерфейс для nmap. Она не делает ничего нового кроме того, что может делать nmap, просто предоставляет ко всему этому удобный интерфейс. Для её установки выполните:
sudo apt install zenmap
Запустить программу можно из главного меню или командой:
Затем введите адрес localhost в поле Цель и нажмите кнопку Сканирование:

После завершения сканирования утилита вывела список открытых портов Linux.
Выводы
В этой статье мы рассмотрели инструменты, которые вы можете использовать для того чтобы узнать узнать открытые порты linux. Инструментов не так много как для просмотра информации об оперативной памяти или процессоре, но их вполне хватает. А какими программами пользуетесь вы? Напишите в комментариях!
How to Check for Open Ports on Debian 11
Checking ports is very important to determine which ports on your system are open and being listened to. Listening services can be a gateway for hackers who can exploit vulnerabilities in systems to gain access or compromise a system. It is not recommended to leave a service running when you are not using it. Besides, it consumes additional resources. That’s why it’s important that you constantly monitor the open ports of your system.
In this article, we will explain how to check for open ports on your Debian system in four different ways.
Note: The commands and procedures described in this article have been tested on a Debian 11 Bullseye system.
Check open ports using ss command
The ss (socket statistics) command in Linux provides important information about network connections, including open ports and listening sockets. It obtains this information from the Linux kernel. When used without command-line arguments, the ss command displays detailed information about all current connections, regardless of their state. The ss command is the replacement for the netstat command. The ss command is included in the iproute2 package and is available on the Debian system. If you do not find it in your system, you can still install it easily.
Open the Terminal in your Debian 11 system, and issue the following command in it:
To check open ports on your Debian system, issue the following command in the Terminal:
- -t, –tcp: To see all TCP sockets
- -u, –udp: To see all UDP sockets
- -l, –listening: To see all listening sockets
- -p, processes: To see which processes are using sockets
- -n, –numeric: Use this option if you want to see a port number instead of service names
In the output, you will see a list of all listening TCP and UDP connections.

The above output shows that only port 22 is opened on the system.
Note: If you are using the -p or –processes option with ss command, you must be root user or the user with sudo privileges. Otherwise, you will not be able to see the process identification number (PID) of the process running on the ports.
Check open ports using netstat command
Netstat command in Linux provides information about current network connections and statistics. Netstat has almost the same command options as that of ss command. In order to use the netstat command, you will need to install the net-tools. Issue the following command in Terminal to do so:

Once installed, you can use the netstat command in your Debian Terminal.
To check open ports on your Debian system, issue the following command in it:
- -t, –tcp: To see all TCP sockets
- -u, –udp: To see all UDP sockets
- -l, –listening: To see all listening sockets
- -p, processes: To see which processes are using sockets
- -n, –numeric: Use this option if you want to see a port number instead of service names

The above output shows that only port 22 is opened on the system.
Note: If you are using the -p or –processes option with the netstat command, you must be the root user or the user with sudo privileges. Otherwise, you will not be able to see the process identification number (PID) of the process running on the ports.
Check open ports using the lsof command
The lsof command in Linux stands for list open files (as everything in Linux is a file including devices, directories, ports, etc). Using the lsof command, you can look for the information about the files which are opened by different processes.
The lsof command is available on the Debian system. However, in any case, if you do not find it in your system, you can install it easily using the following command in Terminal:
In order to use lsof to view all listening TCP ports, issue the following command in Terminal:
The above output shows that only port 22 is opened on the system.
Check open ports using the Nmap utility
Nmap is a Linux command-line utility used to perform systems and network scans. It is mostly used for network auditing and security scans. It does not come installed by default on Linux systems, however, you can install it using the following command in Terminal:

After running the above command, the system might ask for confirmation if you want to continue the installation or not. Hit y to continue, after that, the installation will be started on your system.
Once installed, you can use the Nmap to check for open ports on your system. To do so, issue the following command in Terminal:
As our system’s IP address is 192.168.72.158, therefore the command would be:

The above output shows that only port 22 is opened on the system.
That is all there is to it! In this article, we have discussed how to check open ports on Debian 11 system. I hope you liked the article!
