Гид по технологиям

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

4 min read Linux Обновлено 04 Dec 2025
Как проверить открытые порты в Linux
Как проверить открытые порты в Linux

Диаграмма портов и сетевых соединений в Linux

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

Что такое порт?

Порт — это 16‑битное число от 0 до 65535. Порт помогает идентифицировать приложение или процесс в операционной системе Linux/Unix. Один и тот же хост может обслуживать множество приложений, каждое из которых использует свой порт.

Категории портов:

  • 0–1023 — Well Known Ports (системные)
  • 1024–49151 — Registered Ports (зарегистрированные)
  • 49152–65535 — Dynamic/Private (динамические)

Чтобы увидеть таблицу назначений портов, можно просмотреть файл services:

cat /etc/services

Вывод файла /etc/services с назначением портов

Краткие определения протоколов и сокетов:

  • TCP — Transmission Control Protocol. Надёжный протокол с подтверждением доставки.
  • UDP — User Datagram Protocol. Быстрее, без подтверждений и коррекции ошибок.
  • Сокет — точка обмена данными между процессами, локально или по сети.

1. netstat — классика

Команда netstat даёт информацию о сокетах и портах. Один из распространённых вариантов:

netstat -atu

Флаги:

  • -a — показывает все сокеты
  • -t — TCP
  • -u — UDP

Чтобы увидеть имя процесса и PID, добавьте -p:

netstat -atup

Пример вывода netstat -atu

Примеры фильтрации:

# Только UDP
netstat -vaun

# Только TCP
netstat -vatn

Важно: на современных дистрибутивах netstat может отсутствовать в чистом виде; он входит в пакет net-tools.

2. lsof — какие файлы открыты

lsof показывает процессы, использующие сетевые ресурсы:

lsof -i

Пример вывода lsof -i

Полезные варианты:

# Только слушающие сокеты (LISTEN)
lsof -nP | grep LISTEN

# Все TCP соединения
lsof -i tcp

# Все UDP соединения
lsof -i udp

3. nmap — внешний и внутренний сканер

nmap применяется для активного сканирования портов. Пример TCP‑сканирования localhost:

nmap -sT -O localhost

Nmap: сканирование TCP-портов localhost

UDP‑сканирование (дольше и требует прав):

nmap -sU localhost

Nmap: сканирование UDP-портов localhost

Важно: nmap — мощный инструмент. При сканировании чужих сетей следуйте законам и корпоративным правилам.

Альтернатива: ss и средства брандмауэра

ss — современная замена netstat. Быстро показывает сокеты:

ss -tuln

Где флаги:

  • -t — TCP
  • -u — UDP
  • -l — LISTEN (слушающие сокеты)
  • -n — не разрешать имена (показывать номера портов)

Инструменты работы с брандмауэром:

  • iptables / nftables — управление правилами сетевого фильтра
  • firewall-cmd (firewalld) — удобный интерфейс для RHEL/CentOS/Fedora

Пример блокировки порта 8080 с помощью firewall-cmd:

firewall-cmd --permanent --add-port=8080/tcp
firewall-cmd --reload

(Для удаления используйте –remove-port.)

Практическое руководство: шаги аудита портов

  1. Соберите текущий список прослушивающих портов: ss -tuln и lsof -nP | grep LISTEN.
  2. Сопоставьте порты с процессами: netstat -atup или lsof -i.
  3. Оцените необходимость сервиса: если он не нужен — остановите и отключите автозапуск.
  4. Закройте порт в брандмауэре или ограничьте доступ IP‑фильтрами.
  5. Повторно просканируйте систему извне с nmap.
  6. Введите мониторинг и регламент обновлений.

Когда методы могут не сработать

  • Контейнеры (Docker, podman) могут скрывать хостовые порты. Проверяйте порты внутри контейнера.
  • Приложения, использующие сетевые неймспейсы, видны не всем инструментам.
  • Если служба слушает только на localhost, внешний nmap её не найдёт.
  • Фаервол может блокировать ответы, и nmap будет показывать порт как закрытый.

Критерии приёмки

  • Все слушающие порты перечислены в одном из инструментов (ss, netstat, lsof).
  • На каждый слушающий порт сопоставлен процесс и исполняемый файл.
  • Неиспользуемые сервисы отключены и заблокированы брандмауэром.
  • Внешний сканер (nmap) не показывает неожиданных открытых портов.

Чеклист по ролям

Администратор:

  • Выполнить ss -tuln и lsof -nP | grep LISTEN
  • Отключить/удалить ненужный сервис
  • Настроить правила брандмауэра

Разработчик:

  • Проверить, что сервис слушает на правильном интерфейсе
  • Не запускать сервисы на привилегированных портах без необходимости

Инженер по безопасности:

  • Провести внешнее сканирование nmap
  • Провести контроль доступа и аудит логов

Практики безопасности

  • Закрывайте ненужные порты через iptables/nftables или firewalld.
  • Ограничьте доступ к сервисам по IP или VPN.
  • Запускайте сервисы с минимальными правами.
  • Используйте Fail2Ban или аналог для защиты от брутфорса.
  • Применяйте SELinux/AppArmor для дополнительной изоляции.

Важно: Не просто закройте порт — убедитесь, что удалённый доступ действительно не нужен.

Факт‑бокс: ключевые номера портов

  • 22 — SSH
  • 80 — HTTP
  • 443 — HTTPS
  • 25 — SMTP
  • 3306 — MySQL

Эти номера часто используются и обычно первыми проверяются при аудите.

Примеры команд‑шпаргалка

# Быстрый список слушающих портов
ss -tuln

# Посмотреть процессы, связанные с портами
netstat -atup
lsof -i

# Сканирование локального хоста (TCP)
nmap -sT localhost

# Сканирование UDP (медленнее)
nmap -sU localhost

Заключение

Проверка открытых портов — обязательная часть сетевого аудита и обеспечения безопасности. Используйте сочетание инструментов: ss/netstat и lsof для локального просмотра, nmap для внешней проверки. После обнаружения ненужных портов — отключите сервис, закройте порт в брандмауэре и внедрите мониторинг.

Краткие шаги: собрать список портов, сопоставить процессы, оценить необходимость сервисов, закрыть и повторно проверить.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Запись экрана iPhone: как включить и использовать
How-to

Запись экрана iPhone: как включить и использовать

Perl на IIS 7 — Windows Server 2008
Серверы

Perl на IIS 7 — Windows Server 2008

Удаление вокала в Audacity
Аудио

Удаление вокала в Audacity

План электропитания Windows 11 постоянно меняется — что делать
Windows

План электропитания Windows 11 постоянно меняется — что делать

Рип DVD на жёсткий диск и воспроизведение
Руководство

Рип DVD на жёсткий диск и воспроизведение

YouTube падает: причины и простые исправления
Технологии

YouTube падает: причины и простые исправления