Введение в сетевой аудит с Nmap
Своевременное обнаружение открытых портов и активных сетевых демонов — базовый шаг в обеспечении безопасности любого сервера под управлением Ubuntu. Утилита nmap по праву признана индустриальным стандартом для комплексной диагностики соединений и выявления потенциальных брешей. В данном руководстве подробно рассматривается развертывание инструмента, методика точечной проверки сокетов, а также расшифровка формируемых отчетов с версиями обнаруженных служб.
Развертывание Nmap и подготовка тестового стенда
Для безопасного проведения экспериментов на локальной машине необходимо установить сам сканер и вспомогательный интерпретатор Python:
apt-get update -qq && apt-get install -y nmap python3

Функционал nmap ориентирован на детальный аудит узлов, проверку доступности портов и анализ сетевого ландшафта. Чтобы удостовериться в корректности установки и просмотреть скомпилированные модули, запрашиваем версию утилиты через nmap --version.
⚙️ [Ключевые параметры сканирования]
-p : задает конкретный порт, список через запятую или диапазон номеров для проверки.-sS : скрытное SYN-сканирование TCP (half-open scan), при котором соединение прерывается до завершения рукопожатия.-sT : стандартная проверка через полное трехстороннее рукопожатие TCP (TCP connect).-sU : исследование сервисов, взаимодействующих по протоколу UDP без установки соединения.-sV : углубленный опрос портов для выявления названий и точных релизов работающих демонов.-O : анализ сетевых ответов для идентификации типа и версии целевой операционной системы.-A : универсальный режим агрессивного аудита (объединяет определение ОС, версий ПО, работу встроенных скриптов и трассировку).-v : расширенный вывод хода сканирования в реальном времени.

Для формирования реалистичной цели поднимем встроенный веб-сервер Python на нестандартном порту 8080, отправив процесс в фоновый режим:
python3 -m http.server 8080 > /dev/null 2>&1 &

Даем операционной системе секунду на привязку сокета и инициализацию сетевого слушателя с помощью команды sleep 1.

Базовый опрос хоста и экспресс-сканирование
Первичная оценка сетевого периметра петлевого интерфейса запускается передачей адреса петли:
nmap 127.0.0.1
По умолчанию утилита выполняет зондирование тысячи наиболее распространенных TCP-портов. В результате отобразится список открытых интерфейсов, среди которых окажутся системный SSH (22/tcp) и только что запущенный веб-сервис (8080/tcp).

Когда требуется молниеносная проверка без ожидания полного цикла, количество опрашиваемых портов целесообразно ограничить сотней критических сокетов посредством nmap -F 127.0.0.1. Применение флага -F (Fast scan) кратно ускоряет получение сведений о ключевых точках входа в систему.

Точечный анализ портов и идентификация версий служб
Если необходимо отслеживать статус строго определенной службы, утилите явно передается целевой номер порта:
nmap -p 8080 127.0.0.1
Прямое указание исключает лишний трафик и позволяет мгновенно подтвердить статус доступности (open) исследуемого приложения.

Знания одного лишь номера порта недостаточно для полноценного аудита — важно понимать, какое именно ПО обслуживает входящие пакеты. Добавление флага -sV запускает процедуру сигнатурного анализа:
nmap -sV -p 8080 127.0.0.1
Инструмент опрашивает порт и безошибочно вычисляет запущенный экземпляр (SimpleHTTPServer 0.6, Python 3.12.3), что критически важно при поиске устаревших компонентов и уязвимостей.

Экспорт отчетов в файл и завершение фоновых служб
Для дальнейшей обработки результатов или формирования отчетов безопасности вывод консоли перенаправляется в стандартный текстовый файл с помощью аргумента -oN:
nmap -p 8080 -oN scan_report.txt 127.0.0.1
Создаваемый файл scan_report.txt сохраняет форматированный терминальный отчет, что упрощает ведение документации по состоянию сервера.

Убедиться в целостности записанных данных можно стандартным просмотром содержимого через cat scan_report.txt. В теле документа отражены временные метки сессии, использованные ключи и статус исследованного порта.

Завершив практические испытания, необходимо освободить порт и остановить фоновый процесс Python командой pkill -f 'http.server 8080'.

Мы разобрали базовый инструментарий Nmap в среде Ubuntu: от первоначального обнаружения портов до глубокой инспекции активных сетевых служб и протоколирования результатов. Регулярный аудит доступных сокетов помогает вовремя устранять неиспользуемые сервисы и существенно повышает общий уровень защищенности серверной инфраструктуры.