← Назад ко всем вопросам

Как проверить, что порт открыт/сервис слушает порт (ss/netstat/lsof)?

1️⃣ Как кратко ответить

Для проверки открытых портов и прослушивающих сервисов можно использовать команды ss, netstat и lsof. Команда ss -tuln показывает все прослушивающие TCP и UDP порты. Команда netstat -tuln выполняет аналогичную задачу, но может быть устаревшей на некоторых системах. Команда lsof -i -P -n выводит информацию о всех сетевых соединениях и прослушивающих портах.

2️⃣ Подробное объяснение темы

Проверка открытых портов и прослушивающих сервисов — важная задача в автоматизации тестирования и администрировании систем. Это позволяет убедиться, что нужные сервисы запущены и доступны для взаимодействия.

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

ss — это современная утилита для отображения информации о сетевых соединениях. Она заменяет netstat в большинстве современных дистрибутивов Linux.

ss -tuln
  • -t: Показывает только TCP соединения.
  • -u: Показывает только UDP соединения.
  • -l: Показывает только прослушивающие (listening) сокеты.
  • -n: Не выполняет преобразование IP-адресов и номеров портов в имена, что ускоряет выполнение команды.

Эта команда выведет список всех прослушивающих TCP и UDP портов. Например, если сервис слушает порт 80, вы увидите строку с :80.

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

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

netstat -tuln
  • -t: Показывает только TCP соединения.
  • -u: Показывает только UDP соединения.
  • -l: Показывает только прослушивающие сокеты.
  • -n: Не выполняет преобразование IP-адресов и номеров портов в имена.

Эта команда выполняет ту же задачу, что и ss -tuln, но может быть менее эффективной.

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

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

lsof -i -P -n
  • -i: Показывает сетевые файлы (сокеты).
  • -P: Не выполняет преобразование номеров портов в имена.
  • -n: Не выполняет преобразование IP-адресов в имена.

Эта команда выведет список всех сетевых соединений и прослушивающих портов. Она полезна, если нужно узнать, какой процесс использует конкретный порт.

Применение в AQA

В автоматизации тестирования (AQA) проверка открытых портов может быть частью тестов инфраструктуры, чтобы убедиться, что все необходимые сервисы запущены и работают корректно. Например, перед запуском тестов на веб-приложение можно проверить, что сервер действительно слушает на нужном порту. Это помогает избежать ложных срабатываний тестов из-за проблем с конфигурацией окружения.

Тема: Linux и CLI
Стадия: Tech

🔒 Подпишись на бусти автора и стань Алигатором, чтобы получить полный доступ к функционалу сайта и отслеживать свой прогресс!

Твои заметки