Подробный гайд: Настройка скрытой точки доступа Wi-Fi через hostapd
Важно заранее:
Скрытие SSID не повышает безопасность. Современные сканеры легко обнаруживают скрытые сети по пробным запросам (probe requests) клиентов. Это лишь косметическая настройка, которая может усложнить подключение на некоторых устройствах и увеличить фоновый эфирный трафик.
1. Установка hostapd
Debian/Ubuntu/Raspbian:
sudo apt update
sudo apt install hostapd
Arch Linux:
sudo pacman -S hostapd
Fedora/RHEL:
sudo dnf install hostapd
Убедитесь, что ваша Wi-Fi-карта поддерживает режим AP (
iw list | grep -i "ap"). Встроенные адаптеры ноутбуков часто поддерживают, но USB-адаптеры на старых чипах (RTL8192CU, MT7601 и т.п.) могут требовать проприетарных драйверов.
2. Подготовка конфигурационного файла
Основной конфиг обычно находится по пути:
/etc/hostapd/hostapd.conf
Создайте или отредактируйте его:
sudo nano /etc/hostapd/hostapd.conf
Полный рабочий пример (WPA2-PSK + скрытый SSID)
# === Базовые параметры ===
interface=wlan0
driver=nl80211
ctrl_interface=/var/run/hostapd
ctrl_interface_group=0
# === Регион и канал ===
country_code=RU
hw_mode=g
channel=6
# Для 5 ГГц: hw_mode=a, channel=36 (или другой разрешённый в вашей стране)
# === Скрытие точки доступа ===
ssid=MySecretNetwork
ignore_broadcast_ssid=1
# === Безопасность (WPA2-PSK) ===
auth_algs=1
wpa=2
wpa_passphrase=SuperStrongPassword123!
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP CCMP
rsn_pairwise=CCMP
# === Дополнительные опции ===
beacon_int=100
dtim_period=2
max_num_sta=10
3. Разбор ключевых директив
| Директива | Значение | Примечание |
|---|---|---|
ignore_broadcast_ssid |
1 |
Скрывает SSID. 0 = широковещание, 1 = скрыто, 2 = не вещать, но отвечать на probe-запросы |
ssid |
MySecretNetwork |
Имя сети (до 32 байт). Поддерживает UTF-8, но лучше латиница без спецсимволов |
hw_mode |
g / a / b / ax |
Режим работы. g = 2.4 ГГц (802.11g/n), a = 5 ГГц, ax = Wi-Fi 6 (требует поддержки драйвером) |
channel |
1-14 (2.4G) / 36-177 (5G) |
Должен соответствовать country_code и hw_mode |
wpa=2 |
2 |
Включает WPA2. 3 = WPA3, 1 = WPA1 (устарел) |
rsn_pairwise=CCMP |
CCMP |
AES-шифрование. TKIP устарел, используйте только для обратной совместимости |
ctrl_interface |
/var/run/hostapd |
Позволяет управлять демоном через hostapd_cli |
4. Интеграция с systemd
hostapd в большинстве дистрибутивов читает путь к конфигу из файла /etc/default/hostapd (Debian/Ubuntu) или /etc/conf.d/hostapd (Arch).
Debian/Ubuntu:
sudo nano /etc/default/hostapd
Раскомментируйте и измените строку:
DAEMON_CONF="/etc/hostapd/hostapd.conf"
Arch Linux:
sudo systemctl enable hostapd.service
# Конфиг по умолчанию уже /etc/hostapd/hostapd.conf
5. Запуск и проверка
Запуск в ручном режиме (для отладки)
sudo systemctl stop hostapd
sudo hostapd -d /etc/hostapd/hostapd.conf
-d выводит подробный лог. Если всё ок, прервите Ctrl+C.
Запуск через systemd
sudo systemctl daemon-reload
sudo systemctl start hostapd
sudo systemctl enable hostapd
Проверка статуса
systemctl status hostapd
journalctl -u hostapd -n 50 --no-pager
Проверка интерфейса
iw dev wlan0 info
Ожидаемый вывод:
Interface wlan0
ifindex 4
wdev 0x1
addr xx:xx:xx:xx:xx:xx
ssid MySecretNetwork
type AP
channel 6 (2437 MHz), width: 20 MHz, center1: 2437 MHz
6. Диагностика проблем
| Симптом | Решение |
|---|---|
nl80211: deinit ifname=wlan0 disabled_11b_rates=0 |
Драйвер не поддерживает AP-режим или интерфейс заблокирован NetworkManager/wpa_supplicant |
Channel 6 is not allowed |
Проверьте country_code или смените канал на разрешённый в вашем регионе |
| Клиенты не подключаются к скрытой сети | Включите ignore_broadcast_ssid=1 → убедитесь, что клиенты вводят SSID вручную с точным регистром |
Failed to initialize |
Проверьте синтаксис конфига: hostapd -d /etc/hostapd/hostapd.conf покажет строку с ошибкой |
| Интерфейс занят | Остановите конкурирующие службы: sudo systemctl stop NetworkManager wpa_supplicant |
Для работы hostapd интерфейс не должен управляться другими сетевыми менеджерами.
Отключите автоматическое управление:
sudo nmcli device set wlan0 managed no
7. Важные нюансы скрытых сетей
- Безопасность: Скрытие SSID не защищает от сканирования. Злоумышленники видят скрытые сети по
Probe Request/Responseкадрам. - Расход батареи: Клиенты будут постоянно рассылать пробные запросы в фоновом режиме, что ускоряет разряд мобильных устройств.
- Совместимость: Некоторые IoT-устройства, старые смартфоны и драйверы Windows/Linux не поддерживают подключение к скрытым сетям без патчей.
- Производительность: На некоторых чипсетах скрытие SSID может вызывать дополнительные задержки ассоциации.
Рекомендация по безопасности (вместо скрытия)
Если цель — защита сети, используйте:
- WPA3-SAE (устойчив к офлайн-перебору паролей)
- MAC-фильтрацию (обходится, но добавляет уровень контроля)
- Включение
wpa_strict_rekey=1 - Отключение WPS:
config_methods=disabledили сборка hostapd без WPS - Регулярную смену пароля и мониторинг логов
Пример минимального WPA3 конфига (требует поддержки чипсета и клиента):
wpa=2
wpa_key_mgmt=SAE
rsn_pairwise=CCMP
sae_password=SuperStrongPassword123!
Итог
- Установите
hostapd - Отредактируйте
/etc/hostapd/hostapd.conf, добавьтеignore_broadcast_ssid=1 - Настройте
DAEMON_CONFв/etc/default/hostapd - Отключите управление интерфейсом другими службами
- Запустите через
systemctl, проверьте логи и подключение клиентов