RFC (Request for Comments, Запрос на комментарии) - серия документов, публикуемая сообществом исследователей и разработчиков, руководствующихся практическими интересами, в которой описывается набор протоколов и обобщается опыт функционирования Интернет.
Точка доступа Wi-Fi на базе адаптера D-Link DWA-510 [2010]
Организация точки доступа Wi-Fi - задача достаточно распространённая. Для решения это задачи можно использовать как аппаратные точки доступа, так и программные (последние представляют из себя сервер с добавленным к нему Wi-Fi-адаптером и специальным ПО).
Далее будет показано как можно добавить точку доступа для сети, подобной описанной ранее. Точка будет раздавать адреса из сети 192.168.2.0/24, для которой выделен vlan2. Для аутентификации и шифрования будет использоваться технология WPA2
Первым делом выключим сервер, вставим Wi-Fi-адаптер в PCI-слот и включим сервер. Система загрузится в обычном режиме, но в ней появится новый интерфейс - wlan0, который принадлежит адаптеру. Дальнейший план действий такой:
Объединить интерфейсы wlan0 и vlan2 в br0;
Изменить настройки файрвола под новую конфигурацию сетевых интерфейсов;
Установить и настроить демон hostapd, который и будет сердцем нашей точки доступа.
Объединяем интерфейсы: первым делом "опустим" vlan2:
ifdown vlan2
Далее открываем в редакторе файл /etc/network/interfaces и находим там строки:
auto vlan2
iface vlan2 inet static
address 192.168.2.1
netmask 255.255.255.0
network 192.168.2.0
broadcast 192.168.2.255
mtu 1500
vlan_raw_device eth0
Их надо заменить на:
auto vlan2
iface vlan2 inet static
address 0.0.0.0
netmask 255.255.255.255
mtu 1500
vlan_raw_device eth0
auto br0
iface br0 inet static
address 192.168.2.1
netmask 255.255.255.0
network 192.168.2.0
broadcast 192.168.2.255
bridge_ports vlan2 wlan0
Далее поднимаем интерфейсы:
ifup vlan2 && ifup br0
Отдельно остановимся на том, почему не обязательно указывать настройки для wlan0: при поднятий интерфейса типа "мост" (в данном случае это br0) утилита ifup предварительно пытается поднять все интерфейсы, являющиеся частью этого моста. Интерфейс wlan0 не требует специфических параметров и потому ifup поднимет его без проблем. А вот для vlan2 нужно как минимум указать "vlan_raw_device", ради чего и указывается его конфигурация.
Теперь открываем файл /root/scripts/firewall.sh и ищем строки:
# Разрешаем доступ к SSH из сети администрации комплекса:
И последний шаг: установка и настройка hostapd. Для начала установим пакет:
apt-get install hostapd
Теперь открываем в редакторе файл /etc/hostapd/hostapd.conf. Снимаем комментарий со строки:
bridge=br0
Устанавливаем значение параметра "driver" в "nl80211":
driver=nl80211
Указываем имя нашей сети:
ssid=mega-net
Устанавливаем код страны, который ограничивает используемый диапазон частот разрешёнными в нашей стране величинами:
country_code=RU
Режим работы:
hw_mode=g
Используемый канал (от 0 до 15):
channel=6
Метод авторизации:
wpa=3
Пароль для доступа к нашей точке:
wpa_passphrase=s3cr3tp4assw0rd
Способ управления ключами:
wpa_key_mgmt=WPA-PSK
Способ шифрования:
wpa_pairwise=TKIP CCMP
В итоге файл примет вот такой вид (комментарии вырезаны):
interface=wlan0
bridge=br0
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=mega-net
country_code=RU
hw_mode=g
channel=6
beacon_int=100
dtim_period=2
max_num_sta=255
rts_threshold=2347
fragm_threshold=2346
macaddr_acl=0
auth_algs=3
ignore_broadcast_ssid=0
wme_enabled=1
wme_ac_bk_cwmin=4
wme_ac_bk_cwmax=10
wme_ac_bk_aifs=7
wme_ac_bk_txop_limit=0
wme_ac_bk_acm=0
wme_ac_be_aifs=3
wme_ac_be_cwmin=4
wme_ac_be_cwmax=10
wme_ac_be_txop_limit=0
wme_ac_be_acm=0
wme_ac_vi_aifs=2
wme_ac_vi_cwmin=3
wme_ac_vi_cwmax=4
wme_ac_vi_txop_limit=94
wme_ac_vi_acm=0
wme_ac_vo_aifs=2
wme_ac_vo_cwmin=2
wme_ac_vo_cwmax=3
wme_ac_vo_txop_limit=47
wme_ac_vo_acm=0
eapol_key_index_workaround=0
eap_server=0
own_ip_addr=127.0.0.1
wpa=3
wpa_passphrase=s3cr3tp4assw0rd
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP CCMP
Теперь открываем файл "/etc/default/hostapd" и снимаем комментарий со строки:
RUN_DAEMON="yes"
И запускаем демона:
invoke-rc.d hostapd start
На этом настройку точки доступа можно считать законченной. Однако если надо чтобы клиенты, подключающиеся по Wi-Fi, получали IP-адреса автоматически нужно настроить DHCP-сервер. Если к описываемой сети уже был добавлен DHCP-сервер по этой инструкции то достаточно заменить в конфигурации все упоминания "vlan2" на "br0". Если DHCP нужен только для одной подсети и только на одном интерфейсе то можно воспользоваться более простой инструкцией.