Назад | Перейти на главную страницу

Как использовать режим клиента WPA2 в точке доступа Cisco WAP4410N на базе Linux

У меня есть точка доступа Cisco WAP4410N, которую я хочу использовать в качестве клиента для подключения к беспроводной сети WPA2 (для мониторинга услуг WLAN).

Предположительно эта точка доступа поддерживает режим «Беспроводной клиент / ретранслятор», который позволяет это делать. Функция повторителя не является обязательной (у меня этот флажок не установлен, чтобы никто не мог подключиться к этой точке доступа по беспроводной сети). Я проверил через SSH, что точка доступа настроена как клиент, а не как мастер. Но он никогда не ассоциируется с SSID, о котором я прошу. Вот что показывает iwconfig:

ath04     IEEE 802.11ng  ESSID:"myownssid"
          Mode:Managed  Channel:0  Access Point: Not-Associated
          Bit Rate:0 kb/s   Tx-Power:14 dBm   Sensitivity=1/3
          Retry:off   RTS thr:off   Fragment thr:off
          Encryption key:off
          Power Management:off
          Link Quality=0/94  Signal level=161/162  Noise level=161/161
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

Хотя я никогда не делал этого из командной строки, я полагаю, что мог бы использовать wpa_supplicant или wpa_client, чтобы связать его, но я не знаю, как это сделать без редактирования файлов конфигурации, а файловая система доступна только для чтения. Кроме того, мне пришлось бы запускать эти команды вручную после каждой перезагрузки.

Я хотел бы знать, как это сделать по-Cisco, если возможно. Если нет, то были бы полезны любые уловки, чтобы заставить эту работу работать.

Изменить: это последняя версия прошивки 2.0.4.2. И я обнаружил, что не вся файловая система доступна только для чтения, поскольку / var и / tmp монтируются с типом ramfs.

Хорошо, я думаю, что понял. Я подключился к точке доступа по ssh и думаю, что это ошибка прошивки Cisco.

После выбора режима «Беспроводной клиент / ретранслятор» опция сохраняется, и система перезагружается. Параметры можно прочитать с помощью команды nvram, и эта конкретная опция кажется

wlan0_op_mode=UnversalClient

При каждой загрузке система считывает эту опцию и генерирует подходящий файл конфигурации для wpa_supplicant, сохраняя его в /var/wpasupp.cfg (оказалось, что / var смонтирован в ОЗУ и доступен для записи).

SSID и кодовая фраза, хранящиеся в этом файле, правильно взяты из первого настроенного SSID. НО есть ошибка в коде, который генерирует файл конфигурации, поскольку он включает строку, которую wpa_supplicant не может проанализировать.

Эта строка гласит:

ctrl_interface=/var/run/wpa_supplicant

Теперь эта строка кажется нормальной, учитывая, как ведут себя другие версии wpa_supplicant. Но эта конкретная версия wpa_supplicant, включенная в Cisco WAP4410N, не может ее проанализировать и сообщает об этом при запуске с параметром отладки -d.

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

Чтобы он заработал, этот файл необходимо изменить, а wpa_supplicant нужно запускать вручную после каждой загрузки.