Точка доступа
Как из Wi-Fi карты на чипсете Atheros и сервера c Debian Lenny сделать стабильно работающую точку доступа с шифрованием WPA2 без использования madwifi? Долго мучился я этим вопросом, пока не наткнулся на новость о проекте backports…
Модуль открытого драйвера ath5k с поддержкой режима Access Point можно найти в ядре начиная с версии 2.6.31 1), но в стабильной ветке Debian последнее ядро 2.6.26! Оказывается получить подходящее ядро можно не переходя со стабильной ветки Lenny на Squeeze. Для этого достаточно подключить репозиторий backports. Подробные инструкции здесь. Вкратце процесс выглядит так:
- Добавляем репозиторий в apt;
- /etc/apt/sources.list.d/backports.list
# Backports repository deb http://backports.debian.org/debian-backports lenny-backports main contrib non-free
- Обновляем список пакетов:
sudo aptitude update
; - Обновляем ядро:
sudo aptitude install linux-image-2.6-686
;
К сожалению, на день создания этого лога демон hostapd из Debian Lenny не поддерживал драйвер nl80211 (ath5k относится к этому типу драйверов), а в репозитории backports более свежей версии не нашлось. Пришлось собирать из исходников. Рекомендуемая версия 0.6.8 и выше.
- Качаем:
wget http://w1.fi/releases/hostapd-0.7.3.tar.gz
; - Распаковываем:
tar xzf hostapd-0.7.3.tar.gz
; cd hostapd-0.7.3/hostapd
;- Создаём конфиг на базе примера:
cp defconfig .config
; - В файле .config включаем поддержку драйверов nl80211:
CONFIG_DRIVER_NL80211=y
; - Устанавливаем зависимости:
sudo aptitude install libnl1 libnl-dev libssl-dev
; - Собираем:
make
; - Копируем собранный hostapd куда-нибудь в PATH:
sudo cp hostapd /usr/local/sbin/
; - Добавляем в автозапуск:
- /etc/rc.local
... /usr/local/sbin/hostapd /etc/hostapd/hostapd.conf exit 0
Мой конфиг для hostapd:
- /etc/hostapd/hostapd.conf
interface=wlan0 driver=nl80211 logger_syslog=-1 logger_syslog_level=2 logger_stdout=-1 logger_stdout_level=2 dump_file=/tmp/hostapd.dump ctrl_interface=/var/run/hostapd ctrl_interface_group=0 ssid=your_ssid_name hw_mode=g channel=11 beacon_int=100 dtim_period=2 max_num_sta=255 rts_threshold=2347 fragm_threshold=2346 auth_algs=1 ignore_broadcast_ssid=0 wmm_enabled=1 wmm_ac_bk_cwmin=4 wmm_ac_bk_cwmax=10 wmm_ac_bk_aifs=7 wmm_ac_bk_txop_limit=0 wmm_ac_bk_acm=0 wmm_ac_be_aifs=3 wmm_ac_be_cwmin=4 wmm_ac_be_cwmax=10 wmm_ac_be_txop_limit=0 wmm_ac_be_acm=0 wmm_ac_vi_aifs=2 wmm_ac_vi_cwmin=3 wmm_ac_vi_cwmax=4 wmm_ac_vi_txop_limit=94 wmm_ac_vi_acm=0 wmm_ac_vo_aifs=2 wmm_ac_vo_cwmin=2 wmm_ac_vo_cwmax=3 wmm_ac_vo_txop_limit=47 wmm_ac_vo_acm=0 eapol_key_index_workaround=0 eap_server=0 own_ip_addr=127.0.0.1 wpa=2 wpa_passphrase=******* wpa_key_mgmt=WPA-PSK wpa_pairwise=TKIP rsn_pairwise=CCMP
И мои сетевые настройки:
- /etc/network/interfaces
auto lo iface lo inet loopback auto eth1 iface eth1 inet static address 192.168.0.254 netmask 255.255.255.0 network 192.168.0.0 broadcast 192.168.0.255 auto wlan0 iface wlan0 inet static address 192.168.1.254 netmask 255.255.255.0 network 192.168.1.0 broadcast 192.168.1.255
Если вы до этого пользовались madwifi, то не забудьте поменять ath0 на wlan0 в конфигурационных файлах.
Ссылки:
~~DISCUSSION~~