Подробный гайд: Обнаружение хостов с помощью Nmap в ALT Linux
Этот гайд посвящён обнаружению активных хостов (host discovery) в сети с использованием nmap в операционной системе ALT Linux. Рассмотрены установка, базовые и продвинутые техники, работа с сетевыми интерфейсами, сохранение результатов и особенности дистрибутива.
1. Установка Nmap в ALT Linux
ALT Linux использует пакетный менеджер apt (на базе apt-rpm). Пакет nmap доступен в официальных репозиториях веток p10, p11 и Sisyphus.
# Обновление списков пакетов
sudo apt update
# Установка nmap (консольная версия)
sudo apt install nmap
# Опционально: графический фронтенд Zenmap
sudo apt install zenmap
Проверка установки:
nmap --version
2. Требования к правам и сетевой доступ
Для большинства методов обнаружения хостов (ARP, ICMP, TCP SYN/ACK, UDP) требуются права суперпользователя, так как Nmap формирует сырые пакеты (raw sockets).
# Запуск от root или через sudo
sudo nmap <опции> <цель>
Если запускать без sudo, Nmap автоматически переключится на connect()-сканирование, которое не поддерживает быстрое обнаружение хостов и будет медленнее/неполным.
3. Базовое обнаружение хостов
Флаг -sn (Ping Scan)
Отключает сканирование портов. Выполняет только обнаружение хостов.
# Сканирование подсети /24
sudo nmap -sn 192.168.1.0/24
# Сканирование диапазона
sudo nmap -sn 192.168.1.1-50
# Сканирование по списку (файл с целями, каждая на новой строке)
sudo nmap -sn -iL targets.txt
Как это работает:
- В локальной сети (одна L2-домен) автоматически используется ARP-запрос (
-PR). - За пределами локальной сети используются ICMP Echo, TCP SYN к порту 443, TCP ACK к порту 80, ICMP Timestamp/Netmask.
- Ответ от любого типа пакета = хост активен.
Отключение/включение DNS-резолвинга
# Без обратного DNS-резолвинга (ускоряет сканирование)
sudo nmap -sn -n 192.168.1.0/24
# Принудительный обратный резолвинг
sudo nmap -sn -R 192.168.1.0/24
4. Продвинутые методы обнаружения
Используются при наличии фаерволов, фильтрации ICMP или нестандартных сетевых настройках.
| Метод | Флаг | Описание |
|---|---|---|
| ARP-запрос | -PR |
Работает только в локальной L2-сети. Самый быстрый и надёжный. |
| ICMP Echo | -PE |
Классический ping. Часто блокируется. |
| ICMP Timestamp | -PP |
Альтернатива Echo, реже фильтруется. |
| ICMP Netmask | -PM |
Запрос маски подсети. Редко поддерживается современными ОС. |
| TCP SYN | -PS <port> |
Отправляет SYN на указанный порт. Ответ RST = хост жив. |
| TCP ACK | -PA <port> |
Отправляет ACK. Ответ RST = хост жив. |
| UDP | -PU <port> |
Отправляет UDP-пакет. Ответ ICMP port unreachable = хост жив. |
Комбинация зондов
# ICMP Echo + TCP SYN на 443 + TCP ACK на 80
sudo nmap -sn -PE -PS443 -PA80 192.168.1.0/24
# UDP на порт 53 (DNS) + TCP SYN на 22 (SSH)
sudo nmap -sn -PU53 -PS22 10.0.0.0/24
Указание сетевого интерфейса
Если в системе несколько интерфейсов или маршруты неоднозначны:
sudo nmap -sn -e enp3s0 192.168.10.0/24
Отладка пакетов
# Показывает каждый отправленный/полученный пакет
sudo nmap -sn --packet-trace 192.168.1.1
5. Сохранение и анализ результатов
Рекомендуется всегда сохранять выводы для аудита и отчётов.
# Сохранить во всех форматах (обычный, XML, grepable)
sudo nmap -sn -oA scan_$(date +%F) 192.168.1.0/24
Создаст файлы:
scan_2026-04-26.nmap(читаемый текст)scan_2026-04-26.xml(для парсинга, интеграции с другими инструментами)scan_2026-04-26.gnmap(удобно дляgrep)
Быстрый подсчёт активных хостов:
grep "Nmap scan report for" scan_2026-04-26.nmap | wc -l
6. Особенности ALT Linux
| Аспект | Рекомендация |
|---|---|
| Пакетный менеджер | Используется apt (apt-rpm). Команды apt update/install работают штатно. |
| Фаервол | По умолчанию в p10/p11 используется firewalld или iptables. Убедитесь, что исходящие ICMP/TCP/UDP не блокируются: sudo firewall-cmd --list-all |
| SELinux/AppArmor | ALT Linux не использует SELinux в стандартных редакциях. AppArmor может быть включён в серверных профилях. При проблемах с сырыми сокетами проверьте dmesg | grep -i apparmor |
Права CAP_NET_RAW |
Если нужен запуск от обычного пользователя, можно настроить: sudo setcap cap_net_raw+ep /usr/bin/nmap (снижает безопасность) |
| Сетевые утилиты | Для проверки интерфейсов используйте ip a, ip route, ss -tulnp. |
7. Типовые сценарии
Поиск живых хостов в локальной сети
sudo nmap -sn -n -e eth0 192.168.0.0/24
Обход корпоративного фаервола
sudo nmap -sn -PE -PS22,80,443 -PA80,443 -PU53,123 10.10.0.0/16
Аудит с экспортом в XML для дальнейшего анализа
sudo nmap -sn -n -oA audit_hosts 172.16.0.0/12
8. Важные предупреждения
Законность:
- Сканирование сетей без письменного разрешения владельца запрещено законодательством РФ (ст. 272–274 УК РФ, ФЗ «О персональных данных», ФЗ «О связи»). Используйте только в сетях, которыми вы управляете, или при наличии договора на тестирование.
Безопасность:
- Не запускайте
nmapиз непроверенных скриптов. - Результаты сканирования могут содержать конфиденциальные данные (имена хостов, MAC-адреса). Храните отчёты безопасно.
- Активное сканирование может вызывать нагрузку на сеть или срабатывание IDS/IPS.
9. Устранение неполадок
| Проблема | Решение |
|---|---|
Permission denied |
Запустите через sudo или настройте setcap cap_net_raw+ep |
Host seems down для реальных хостов |
Добавьте -PE -PS443 -PA80 или используйте --packet-trace для диагностики |
| Сканирование идёт слишком медленно | Добавьте -n, -T4, --min-rtt-timeout 50ms, --max-retries 2 |
nmap: command not found |
sudo apt install nmap или проверьте репозитории: sudo apt policy nmap |
| Неправильный интерфейс | Укажите явно: -e <имя_интерфейса> (см. ip link) |