hostapd отключает и включает интерфейс

Вопрос или проблема

Мой hostapd, после нескольких минут работы, делает следующее:

wlan1: INTERFACE-DISABLED
wlan1: INTERFACE-ENABLED

затем, подключенные клиенты теряют связь, и, если пытаюсь переподключиться, больше не подключается. Я также пробовал с WPA2, но при переподключении говорит, что пароль неправильный.

Мой hostapd.conf:

interface=wlan1
driver=nl80211
ssid=the-bash-guy
hw_mode=g
channel=6
macaddr_acl=0
ignore_broadcast_ssid=0
ieee80211n=1
wme_enabled=1

Мой dnsmasq.conf:

interface=wlan1
dhcp-range=192.168.1.2,192.168.1.30,255.255.255.0,12h
dhcp-option=3,192.168.1.1
dhcp-option=6,192.168.1.1
server=8.8.8.8
server=8.8.4.4
log-queries
log-dhcp
listen-address=127.0.0.1

Перед запуском hostapd, я сделал следующую команду (.sh файл):

echo "BEFORE MONITOR MODE\n\n"
iwconfig wlan1
ifconfig wlan1 down
iwconfig wlan1 mode monitor
ifconfig wlan1 up
echo "AFTER MONITOR MODE\n\n"
iwconfig wlan1
echo "\n\nSTART HOSTAPD!\n\n"
ifconfig wlan1 192.168.1.1 netmask 255.255.255.0
hostapd ./hostapd.conf

затем:

iptables --table nat --append POSTROUTING --out-interface wlan0 -j MASQUERADE
iptables --append FORWARD --in-interface wlan1 -j ACCEPT
dnsmasq -C dnsmasq.conf -d

(wlan0 это Intel Wi-Fi AX200)

(wlan1 это RTL8812BU с драйвером: https://github.com/morrownr/88x2bu-20210702)

ОС: 5.16.0-kali7-amd64

После нескольких часов я выяснил, что работает для меня.
Во-первых, я просто хочу WarDrive.

Обычно просто запускаешь свой Pi, и готово. Все хранится на USB-накопителе.
Но мне эта идея не нравится. Так что точка доступа без Интернета была бы неплоха.
Но с использованием встроенного Wi-Fi чипа !!!(WLAN0)!!!
Здесь я использую RPI4 2GB

И да…
Каждые 5 минут происходит DISABLED/ENABLED

>┌──(kali㉿kali-raspberry-pi)-[~/start]  
└─$ date  
Sat Jan 28 10:37:17 AM GMT 2023
>
>┌──(kali㉿kali-raspberry-pi)-[~/start]  
└─$ sudo hostapd /etc/hostapd/hostapd.conf
>
>wlan0: interface state UNINITIALIZED->COUNTRY_UPDATE  
wlan0: interface state COUNTRY_UPDATE->ENABLED  
wlan0: AP-ENABLED
wlan0: INTERFACE-DISABLED
wlan0: INTERFACE-ENABLED
wlan0: INTERFACE-DISABLED
wlan0: INTERFACE-ENABLED
wlan0: interface state ENABLED->DISABLED
wlan0: AP-DISABLED
wlan0: CTRL-EVENT-TERMINATING
>                                                                                                                    
>┌──(kali㉿kali-raspberry-pi)-[~/start]  
└─$ date  
Sat Jan 28 10:51:50 AM GMT 2023

Это ужасно…

Я искал Timeout/Release в каждом конфиге.
Изменил много чего, но ничего не помогает…
Даже sudo hostapd -dd /etc/hostapd/hostapd.conf не дает полезной информации.
Или лог-файла…

Так что я установил чистый Kali.
Я использую релиз: 2022.4

После установки я использовал:

sudo apt update && sudo apt upgrade -y && reboot now

Я также установил

sudo apt install dnsmasq  
sudo apt install hostapd 

Мой dnsmasq.conf (/etc/dnsmasq.conf) выглядит так:

>interface=wlan0  
dhcp-range=192.168.100.2,192.168.100.10,24h  
dhcp-option=option:dns-server,192.168.100.1

Мой hostapd.conf (/etc/hostapd/hostapd.conf) выглядит так:

>interface=wlan0  
#driver=nl80211  
country_code=AT  
ssid=WarDrive  
hw_mode=g  
ieee80211n=1  
channel=13  
macaddr_acl=0  
auth_algs=1  
wpa=2  
wpa_passphrase=12345678  
wpa_key_mgmt=WPA-PSK  
wpa_pairwise=TKIP  
rsn_pairwise=CCMP  

Поскольку на Raspberry Pi нет Интернета, мне не нужна пересылка через таблицу IP.

dnsmasq получает автозапуск с помощью:

sudo systemctl enable dnsmasq

Мне нужно вручную установить диапазон IP для моего WLAN0:

sudo ifconfig wlan0 up 192.168.100.1 netmask 255.255.255.0

Мой iwconfig

>┌──(kali㉿kali-raspberry-pi)-[~/start]  
>└─$ iwconfig  
>lo        no wireless extensions.
>
>eth0      no wireless extensions.
>
>wlan0     IEEE 802.11  ESSID:off/any  
          Mode:Managed  Access Point: Not-Associated   Tx-Power=31 dBm  
          Retry short limit:7   RTS thr:off   Fragment thr:off  
          Power Management:on

wlan0 находится в управляемом режиме. И точка доступа не ассоциирована.

Теперь мы можем запустить hostapd, но в этом состоянии он сам себя отключает/включает.
Поэтому я решил остановиться на этом и не использовать RPI как точку доступа…

Если вы хотите его использовать в качестве WarDrive, вы можете использовать airmon.
Чтобы начать airmon, вам нужно проверить процессы, которые могут вызвать проблемы.

>┌──(kali㉿kali-raspberry-pi)-[~/start]  
>└─$ sudo airmon-ng check  
>
>Найдено 3 процесса, которые могут вызвать проблемы.  
>Убейте их с помощью 'airmon-ng check kill' перед переводом  
>карты в режим монитора, они будут вмешиваться, меняя каналы  
>и иногда возвращая интерфейс в управляемый режим  
>  
>    PID Имя  
>    306 dhclient  
>    459 NetworkManager  
>    494 wpa_supplicant  
>

Чтобы продолжить, используем команду sudo airmon-ng check kill.
Это убивает dhclient и wpa_supplicant.
NetworkManager все еще работает.

И вот и все!

Я случайно запустил hostapd. И он остается включенным ^.-
(sudo hostapd /etc/hostapd/hostapd.conf)

Я перезагрузился и снова запустил hostapd. И он снова начал отключаться/включаться
Я снова использовал sudo airmon-ng check kill и запустил hostapd.
И он остался ВКЛЮЧЕН ….

>┌──(kali㉿kali-raspberry-pi)-[~/start]  
>└─$ date  
>Sat Jan 28 11:58:15 AM GMT 2023  
>
>┌──(kali㉿kali-raspberry-pi)-[~/start] 
>└─$ sudo hostapd /etc/hostapd/hostapd.conf  
>wlan0: interface state UNINITIALIZED->COUNTRY_UPDATE  
>wlan0: interface state COUNTRY_UPDATE->ENABLED  
>wlan0: AP-ENABLED  
>wlan0: STA de:26:19:22:36:93 IEEE 802.11: associated  
>wlan0: AP-STA-CONNECTED de:26:19:22:36:93  
>wlan0: STA de:26:19:22:36:93 RADIUS: starting accounting session 9B9C755AB07529A0  
>wlan0: STA de:26:19:22:36:93 WPA: pairwise key handshake completed (RSN)  
>wlan0: EAPOL-4WAY-HS-COMPLETED de:26:19:22:36:93  
>wlan0: STA de:26:19:22:36:93 IEEE 802.11: disassociated  
>wlan0: AP-STA-DISCONNECTED de:26:19:22:36:93  
>wlan0: STA de:26:19:22:36:93 IEEE 802.11: associated  
>wlan0: AP-STA-CONNECTED de:26:19:22:36:93  
>wlan0: STA de:26:19:22:36:93 RADIUS: starting accounting session 71C186FC5DB118F4  
wlan0: STA de:26:19:22:36:93 WPA: pairwise key handshake completed (RSN)  
wlan0: EAPOL-4WAY-HS-COMPLETED de:26:19:22:36:93  
wlan0: interface state ENABLED->DISABLED  
wlan0: AP-STA-DISCONNECTED de:26:19:22:36:93  
wlan0: AP-DISABLED  
wlan0: CTRL-EVENT-TERMINATING  
nl80211: deinit ifname=wlan0 disabled_11b_rates=0  
>
>┌──(kali㉿kali-raspberry-pi)-[~/start]    
>└─$ date  
>Sun Jan 29 01:36:20 PM GMT 2023  

Здесь вы можете увидеть 2 подключения
Одно вчера и одно сегодня для тестирования, продолжает ли оно работать.

Точка доступа на этом RPI работает отлично, даже с vncserver :1

Ответ или решение

Конечно, давайте разберемся с проблемой, связанной с работой hostapd, который периодически отключает и повторно включает интерфейс. Исходя из предоставленного контекста, можно сделать вывод о некоторых возможных причинах и предложить пути решения.

Анализ проблемы hostapd

Проблемы с конфигурацией

1. Конфликтирующие процессы:
Проблема может быть связана с процессами, которые могут мешать работе hostapd. В вашем случае, такие процессы были обнаружены с помощью airmon-ng check. Это процессы dhclient, NetworkManager и wpa_supplicant. Убедитесь, что эти не относящиеся к делу процессы отключены, так как они могут изменить режим работы интерфейса обратно на Managed, что конфликтует с работой точки доступа.

2. Режимы работы интерфейса:
Ваша конфигурация включает этап перевода интерфейса в режим мониторинга через iwconfig, что может вызвать неожиданные отключения. Рекомендуется использовать режим Managed и довериться hostapd для задания всех необходимых параметров интерфейса, без предварительного перевода его в монитор.

Рекомендации по конфигурации

Изменение настроек hostapd.conf и dnsmasq.conf:

hostapd.conf

  • Убедитесь, что используете правильный драйвер для вашего устройства. Если используете адаптер на базе RTL8812BU, проверьте совместимость драйвера с hostapd.
  • Добавьте строку country_code=US или любой другой ваш код страны, чтобы избежать проблем с частотами и излучением.
  • Проверьте настройки безопасности, например, добавление WPA2 и корректной фраза-пароля:
    auth_algs=1
    wpa=2
    wpa_passphrase=ваш_пароль
    wpa_key_mgmt=WPA-PSK

dnsmasq.conf

  • Убедитесь, что инспекторы DHCP-анонсов не конфликтуют с dnsmasq, и указаны только необходимые IP-адреса:
    dhcp-range=192.168.1.2,192.168.1.30,255.255.255.0,12h

Диагностика и логирование

  • Убедитесь, что вы используете актуальную версию hostapd. Возможно, проблема уже была решена в более новых выпусках.
  • Используйте команду hostapd -dd /etc/hostapd/hostapd.conf для более детализированного логирования и поиска потенциальных источников проблем.
  • Проверьте журнал системных событий (dmesg или /var/log/syslog) для выявления системных ошибок, которые могут негативно влиять на работу hostapd.

Аутентификация и авторизация

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

Следуя вышеуказанным рекомендациям, вы сможете устранить проблему с повторяющимся отключением и включением интерфейса вашего hostapd. Рекомендуется также мониторинг сети после изменений, чтобы вовремя отбавливать аномалии или ошибки в работе.

Оцените материал
Добавить комментарий

Капча загружается...