- Настройка точки доступа в Ubuntu
- Подготовка к созданию точки доступа
- Настройка точки доступа Wifi в Ubuntu
- Настройка точки доступа вручную
- Выводы
- Настройка Wifi AP на примере Ubuntu
- Программная точка доступа
- Содержание
- [WiFi Hostapd AP] Программа для создания точки доступа WiFi
- Возможности программы
- Установка программы
- Настройка программы
- Проблемы с Network Manager
- Старый способ
- Краткое описание руководства
- Прежде чем начать
- Совместимость оборудования
- Network Manager
- Другие интерфейсы
- Скорость передачи данных
- Установка необходимых пакетов и обновление
- Настройка интерфейсов
- Настройка беспроводного интерфейса
- Настройка моста
- Итоговый interfaces
- Настройка hostapd
- Настройка общего доступа
- Настройка iptables и ip форвардинга
- Настройка dnsmasq
- Как улучшить эту статью
Настройка точки доступа в Ubuntu
В бюджетных ноутбуках часто используются беспроводные сетевые адаптеры от компании Broadcom. Если в Windows не возникает никаких проблем при создании точки доступа на карте практически любого производителя, то в Linux про точку доступа мы уже не говорим, просто подключиться к сети через WiFi может вызвать очень серьезные затруднения. Правда, в последнее время ситуация немного улучшилась.
В этой инструкции мы рассмотрим как создать точку доступа Wifi Ubuntu, на примере карты на карте Broadcom. В других дистрибутивах действия и настройки будут похожие, только файлы и команды установки могут немного отличаться. Мы разберемся как сделать точку доступа wifi через графический интерфейс и в терминале.
Подготовка к созданию точки доступа
Для карт Broadcom есть четыре драйвера: стандартный и по умолчанию включенный b43, входящие в состав ядра brcmsmac и brcmfmac, а также проприетарный драйвер broadcom linux под названием wl. Сразу скажу что проприетарный драйвер совсем никудышный, так как не поддерживает не только режим точки доступа, но и неразборчивый режим тоже.
Стандартный b43 и brcmfmac для карты B4313 не подходят потому что не работают в режиме точки доступа, хотя эти уже поддерживают режим монитора. Посмотреть поддерживает ли ваш драйвер режим точки доступа (Master Mode) можно на этой странице. Остается только brcmsmac, который можно заставить раздать wfi linux. Сначала разберемся с драйверами ядра. Теперь, когда мы определились что будем использовать, перейдем к настройке broadcom linux. Смотрим какой драйвер загружен:
Если есть вот такие строчки, то все хорошо и драйвер загружен правильно:
brcmsmac 497481 0
cordic 1024 1 brcmsmac
brcmutil 4596 1 brcmsmac
Но если загружен b43 или broadcom-wl их нужно удалить. Например, для b43:
И запустить brcmsmac:
sudo modprobe brcmsmac
Лучше полностью удалить проприетарный драйвер broadcom linux из системы если он установлен и добавить в черный список ненужные драйверы, оставив только brcmsmac. Чтобы при перезагрузке грузился только он, для этого добавляем такие строчки в файл /etc/modprobe.d/50-blacklist.conf:
sudo vi /etc/modprobe.d/50-blacklist.conf
blacklist b43
blacklist b43-legacy
Для сетевых карт других производителей, вам следует сначала попробовать раздавать Wifi и только если не получится пробовать использовать другой драйвер.
Настройка точки доступа Wifi в Ubuntu
Чтобы создать точку доступа Ubuntu сначала нужно кликнуть по значку сети в правом верхнем углу и выбрать Параметры Wifi:
В открывшемся меню кликните по кнопке бутерброда и выберите Включить точку доступа:
Перед активацией компьютер предупредит вас, что вы не сможете подключится к интернету по Wifi если включёна точка доступа:
Затем покажет имя сети и пароль от неё, который создаётся автоматически:
Используя эти данные вы можете подключится к только что созданной точке доступа. Всё должно работать. Отключить её можно здесь же, надо только кликнуть по соответствующему переключателю.
Настройка точки доступа вручную
Для того чтобы раздать Wifi вручную нам понадобится пакет hostapd. Установите его командой:
sudo apt install hostapd
Стандартная конфигурация программы нам не подойдет, поэтому оригинальный конфигурационный файл переименовываем и создаем вот такой:
sudo vi /etc/hostapd/hostapd.conf
interface=wlp3s0
driver=nl80211
logger_syslog=-1
logger_syslog_level=2
logger_stdout=-1
logger_stdout_level=2
ctrl_interface=/var/run/hostapd
ctrl_interface_group=0
macaddr_acl=1
ssid=LosstAccessPoint
hw_mode=g
channel=7
macaddr_acl=0
auth_algs=3
ieee80211n=1
wmm_enabled=1
eap_server=0
eap_message=hello
eapol_key_index_workaround=0
own_ip_addr=127.0.0.1
wpa=2
wpa_passphrase=your_password
wpa_key_mgmt=WPA-PSK
wpa_pairwise=CCMP TKIP
rsn_pairwise=CCMP
Здесь и далее wlp3s0 — ваш сетевой интерфейс wifi адаптера. В поле ssid укажите желаемое имя точки доступа, в wpa_passphrase — пароль.
Сервис файл hostapd по умолчанию замаскирован, его нужно розмаскировать, для этого выполните:
sudo systemctl unmask hostapd
Затем в конфигурационном файле /etc/default/hostapd в строчке DAEMON_CONF добавьте путь к конфигурационному файлу:
sudo vi /etc/default/hostapd
С настройкой hostapd все, но запускать точку доступа еще рано, я бы даже сказал очень рано. Перейдем к конфигурации сетевого интерфейса. Нам нужно задать статический ip, DNS, режим и еще несколько настроек. Для этого идем в /etc/network/interfaces и добавляем следующие строки:
auto wlp3s0
iface wlp3s0 inet static
address 10.10.0.1
netmask 255.255.255.0
Это нужно в том числе для того, чтобы NetworkManager не трогал сетевой интерфейс Wifi. После сохранения настроек перезапустите компьютер. Осталось настроить DHCP сервер для раздачи IP пользователям, которые будут подключаться к нашей сети. Для этого используем dnsmasq:
sudo apt install dnsmasq
После установки открываем конфигурационный файл и добавляем туда несколько строк, чтобы программа слушала интерфейс wlp3s0, и выдавала адреса в диапазоне 10.10.0.x:
sudo vi /etc/dnsmasq/dnsmasq.conf
dhcp-range=10.10.0.2,10.10.0.255,255.255.255.0,12h
interface=wlp3s0
listen-address=127.0.0.1
dhcp-host=00:0f:00:5a:b6:42,10.10.0.1
cache-size=300
dhcp-authoritative
server=8.8.8.8
no-resolv
address=/backbone/10.10.0.1
dhcp-option=3,10.10.0.1
dhcp-option=1,255.255.255.0
log-queries
log-dhcp
В этом конфигурационном файле вам надо кое-что поправить, а именно MAC адрес в поле dhcp_host замените значение 00:0f:00:5a:b6:42 на своё для интерфейса wlp3s0. Его можно узнать командой:
ip addr list | grep wlp3s0
В выводе команды ищите параметр link:
Осталось настроить iptables для пропускания трафика и настроить автозагрузку всего этого, но предлагаю пойти другим путем. Мы напишем скрипт, которым можно будет в любой момент раздать Wifi в Linux, а также остановить раздачу. Вот сам скрипт:
sudo vi /usr/local/bin/wifi_access_point.sh
#!/bin/bash
case $1 in
start )
# на случай если интерфейс программно отключен
rfkill unblock all
# запускаем сервисы
systemctl stop systemd-resolved
systemctl start hostapd
systemctl start dnsmasq
# включаем форвардинг пакетов
sysctl net.ipv4.ip_forward=1
# правила для iptables
iptables -t nat -A POSTROUTING -o enp2s0f0 -j MASQUERADE
iptables -A FORWARD -i enp2s0f0 -o wlp3s0 -m state —state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i wlp3s0 -o enp2s0f0 -j ACCEPT
;;
stop )
systemctl stop hostapd
systemctl stop dnsmasq
systemctl start systemd-resolved
sysctl net.ipv4.ip_forward=0
;;
esac
После сохранения скрипта дайте ему права на выполнение:
sudo chmod ugo+x /usr/local/bin/wifi_access_point.sh
И вот только теперь можно тестировать. Для чтобы раздать Wifi Ubuntu используйте:
sudo /usr/local/bin/wifi_access_point.sh start
А для остановки:
sudo /usr/local/bin/wifi_access_point.sh stop
Вы можете добавить этот скрипт в автозагрузку, чтобы настройка точки доступа wifi linux выполнялась автоматически.
Выводы
Вот и все. Теперь вы знаете как выполняется настройка точки доступа Ubuntu и сможете раздать Wifi на своем компьютере или ноутбуке. Это довольно сложный процесс, но если разобраться, то вполне можно выполнить. Если у вас остались вопросы, спрашивайте в комментариях!
Источник
Настройка Wifi AP на примере Ubuntu
Этот топик является продолжением Настройка Wifi в Linux при помощи Adhoc на примере Ubuntu. Я не буду описывать настройку раздачи интернета и dhcp т.к. это есть в предыдущем типике. Как и прошлая статья, эта будет нацелена на новичка. Благодаря покупке HTC Hero, я был вынужден настроить WIFI на режим AP, ибо оказалось, что Hero Adhoc изначально не поддерживает.(Кстати HTC Hero подключился, но интеренет не работает надеюсь в новой прошивке это решится)
К сожалению в моем Dlink DWA-110 нет AP, зато есть SoftAP. Его то мы и настроим.
Для работы необходимо ядро 2.6.30 или новее.
Нам понадобится запустить терминал и перейти в режим суперпользователя командой sudo su
Установим требующиеся пакеты:
sudo apt-get install binutils hostapd libnl1 wireless-tools libiw29
Сделаем бекап стандартной конфигурации
sudo mv /etc/hostapd/hostapd.conf /etc/hostapd/hostapd-bak.conf
Узнаем наш интерфейс Wifi
ifconfig
Появится что то вроде
eth0 Link encap:Ethernet
inet addr:192.168.1.2 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:77068 errors:0 dropped:0 overruns:0 frame:0
TX packets:55746 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:90178476 (90.1 MB) TX bytes:7529014 (7.5 MB)
Interrupt:31 Base address:0xc000
lo Link encap:Локальная петля (Loopback)
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:107457 errors:0 dropped:0 overruns:0 frame:0
TX packets:107457 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:32888450 (32.8 MB) TX bytes:32888450 (32.8 MB)
Источник
Программная точка доступа
Содержание
[WiFi Hostapd AP] Программа для создания точки доступа WiFi
Эта программа создана с целью облегчить создание точки доступа WiFi на основе Hostapd и DNSMASQ.
Возможности программы
В данный момент актуальна версия 1.1
Установка программы
Настройка программы
У меня заработало с такими параметрами:
Также в настройках DNSMASQ’a выберите правильный интерфейс подключения к интернету, иначе у вас его не будет.
Проблемы с Network Manager
Обнаружилось, что довольно часто Network Manager мешает нормальному запуску программной точки доступа. Есть два варианта решения данной проблемы: 1) отключить Network Manager, как это сделать описано ниже в этой статье 2) запретить ему управлять WI-FI модулем. Дя этого потребуется добавить в конфигурационный файл /etc/NetworkManager/NetworkManager.conf следующие строки:
После этого выполняем
Теперь NetworkManager не управляет wi-fi модулем и не мешает нормально работать hostapd
Старый способ
Краткое описание руководства
В данном руководстве объясняется, как организовать программный Wi-Fi-роутер на основе Wi-Fi адаптера и компьютера под управлением Ubuntu. Все действия описаны для CLI интерфейса и подходят к воспроизведению на серверной версии дистрибутива. Если вы используете desktop версию с GUI — просто выполняйте все в терминале. Подразумевается, что вы имеете уже настроенное интернет-соединение, доступ к которому вы хотите предоставить некой локальной сети, в которую входят клиенты подключенные как через ethernet (проводная сеть), так и через Wi-Fi .
Прежде чем начать
Совместимость оборудования
В качестве точки доступа 1) в данном примере выступает обыкновенная Wi-Fi плата, которая может быть встроенной в вашу материнскую плату, или быть подключена через PCI или USB. За программную часть ТД отвечает специальный демон hostapd и драйвер самого Wi-Fi адаптера. Несмотря на достаточно хорошую поддержку беспроводного оборудования в linux, некоторые свободные реализации драйверов не обеспечивают стопроцентной поддержки своих устройств. И если в случае, когда Wi-Fi адаптер выступает в качестве клиента, большинство устройств работают хорошо, то в случае с AP-режимом 2) некоторые устройства вообще невозможно использовать в режиме точки доступа. Поэтому прежде чем начать — убедитесь, что вы настраиваете устройство, поддерживающее AP-Mode. Для этого нужно сначала узнать что это за устройство. Сделать это можно так:
Вывод должен быть примерно таким:
В моем случае это Atheros Communications Inc. AR5001 Wireless Network Adapter [168c:001c] (rev 01) . Теперь зная название устройства, можно посмотреть на используемый драйвер:
Ответ должен быть примерно таким:
Где ath5k и есть используемый драйвер. Далее нужно обратиться к ресурсу wireless.kernel.org и узнать, что работает для вашего устройства, а что нет. Продолжая пример про ath5k мне нужно перейти wireless.kernel.org по вкладкам: Users → Devices → PCI devices…. и в списке Device list найти и выбрать ath5k. Затем нужно обратиться к таблице «Currently supported PCI ID list with respective status report on basic-testing as defined above» в которой по своему значению PCI ID 3) узнать, что ваш адаптер может, а что нет. Если вы обнаружили, что по той или иной причине ваш драйвер не поддерживает режим ТД — не стоит отчаиваться. В некоторых случаях, например, в случае с адаптерами от Atheros, вы можете использовать другой драйвер, например Madwifi, который скорее всего будет нормально работать в режиме ТД, но имеет ряд особенностей в настройке с hostapd .
Network Manager
На десктопных системах по умолчанию установлен менеджер сетевых соединений — NetworkManager. Его автоматическая работа может помешать процедуре настройки, поэтому настоятельно рекомендуется его отключить. Как это сделать — описано в статье Отключение Network Manager’а.
Другие интерфейсы
Перед началом настройки, убедитесь, что все остальные сетевые интерфейсы подключены и работают нормально. Если вы еще не настроили интерфейс, отвечающий за интернет соединение — самое время сделать это сейчас. Более подробно про настройку сетевых интерфейсов можно почитать тут.
Скорость передачи данных
Реальная скорость передачи данных по каналу WiFi значительно отличается от заявленных производителем, кроме того- чем больше устройств работает на одной точке доступа- тем меньше пропускная способность (канал делится на количество клиентов). Ниже приведена таблица, отображающая технические характеристики различных протоколов передачи данных интерфейса WiFi, для одного устройства.
Протокол | Используемая частота | Максимальная теоретическая скорость | Типичная скорость на практике | Дальность связи в помещении | Дальность связи на открытой местности |
---|---|---|---|---|---|
802.11b | 2.4ГГц | 11Мбит/сек | 0.4Мбайт/сек | 38 | 140 |
802.11a | 5ГГц | 54Мбит/сек | 2.3Мбайт/сек | 35 | 120 |
802.11g | 2.4ГГц | 54Мбит/сек | 1.9Мбайт/сек | 38 | 140 |
802.11n | 2.4ГГц,5ГГц | 600Мбит/сек | 7.4Мбайт/сек | 70 | 250 |
Установка необходимых пакетов и обновление
И ставим необходимые пакеты:
Настройка интерфейсов
Настройка беспроводного интерфейса
Прежде всего вам нужно перевести беспроводной адаптер в режим точки доступа. В зависимости от драйвера вам нужно попробовать несколько способов. В принципе — адаптер переводится в режим ТД командой:
Где wlan0 — имя вашего беспроводного интерфейса.
Однако, в некоторых случаях, этот способ не сработает, тогда вам нужно сначала «удалить» старый интерфейс и «создать» новый, с режимом ТД. Для этого вам понадобится утилита iw установить которую можно например так:
Где wlan0 — имя вашего интерфейса. Обратите внимание на конец второй строчки приведенной команды — _ _ a p — перед символами ap два символа подчеркивания.
Если у вас madwifi перевод адаптера в режим ТД выглядит так:
В любом случае, после этих действий, команда iwconfig , запущенная без параметров, должна выдать примерно следующее:
Обратите внимание на значение Mode:Master — это значит, что адаптер работает в режиме точки доступа.
Для закрепления результата необходимо внести изменения в файл /etc/network/interfaces 5) и добавить настройки вашего беспроводного интерфейса:
Настройка моста
Для того, чтобы объединить вашу проводную локальную сеть с беспроводной 6) в одну — вам нужно создать сетевой мост между ними. Таким образом вы сможете подключать компьютеры-клиенты к общей сети как через Wi-Fi, так и через обычный Ethernet 7) .
Для этого вам нужно отредактировать файл /etc/network/interfaces и внести в него следующие настройки:
Где: br0 — имя интерфейса-моста, eth1 — интерфейс, «смотрящий» в локальную сеть, wlan0 — беспроводной интерфейс, а самой локальной сети назначается адресация 192.168.0.0/24.
Стоит заметить, что интерфейс eth1 не нужно дополнительно описывать в файле interfaces , т.к. ifupdown разберется с ним автоматически, при включении интерфейса br0.
Итоговый interfaces
В итоге, после всех приведенных выше манипуляций вы должны были получить файл /etc/network/interfaces примерно такого содержания:
Теперь вы можете перезапустить сеть командой:
И посмотреть, что из этого получилось при помощи ifconfig . Если вы нигде не ошиблись — вы увидите все свои интерфейсы, в том числе не описанный в interfaces eth1 и br0. Для просмотра информации о сетевом мосте можно использовать:
Настройка hostapd
Теперь, когда все подготовительные действия выполнены нужно настроить собственно точку доступа — hostapd . Основной файл настроек hostapd — /etc/hostapd/hostapd.conf . Лучше сразу создать его резервную копию, т.к. сам файл содержит большое количество подробных комментариев о настройке, и в случае, если вы что-то удалите — вы всегда сможете обратиться к оригиналу:
Файл hostapd.conf содержит в себе список опций, которые принимают то или иное значения и все вместе влияют на конфигурацию hostapd . Каждая опция снабжена достаточно подробным комментарием 8) . Вот некоторые основные опции:
Параметр | Описание | Значение по умолчанию |
---|---|---|
interface | Устройство точки доступа. Т.е. то сетевое устройство, которое является Wi-Fi адаптером. Например, wlan0 или, например, ath0 в случае madwifi. | n/a |
bridge | Если используются madwifi, atheros, или nl80211 — может быть использован дополнительный параметр — bridge. С его помощью можно сказать hostapd что используемый интерфейс включен в сетевой мост. Если параметр не задан — драйверы автоматически определят интерфейс моста. | n/a |
driver | Тип драйвера. (hostap/wired/madwifi/test/none/nl80211/bsd). nl80211 для всех «Linux mac80211 drivers». madwifi для madwifi (кто бы мог подумать?) Если задать none — hostapd будет работать как выделенный RADIUS сервер, не управляя каким либо интерфейсом. | hostap |
logger_syslog logger_syslog_level logger_stdout logger_stdout_level | Опции журналирования. Два метода вывода сообщений: syslog и stdout (последний полезен только в случае простого запуска hostapd — не в режиме демона). Возможные значения: -1 = все модули. 0 = IEEE 802.11 1 = IEEE 802.1X 2 = RADIUS 3 = WPA 4 = driver interface 5 = IAPP 6 = MLME Уровни журналов: 0 = verbose debugging 1 = debugging 2 = informational messages 3 = notification 4 = warning | logger_syslog=-1 logger_syslog_level=2 logger_stdout=-1 logger_stdout_level=2 |
ssid | SSID (имя точки доступа) | test |
country_code | Country code (ISO /IEC 3166-1). Используется для установки региональных ограничений. Задает страну, в которой работает точка доступа. В зависимости от выбранной страны может влиять на количество и номера доспупных каналов и мощность сигнала. | US |
ieee80211d | Включить IEEE 802.11d (Интернациональные роуминговые расширения (2001)). В зависимости от параметра country_code задает список доступных каналов и устанавливает мощность сигнала на основе ограничений, действующих в этой стране. | 0 = выключено |
hw_mode | Режим работы. (a = IEEE 802.11a, b = IEEE 802.11b, g = IEEE 802.11g) | b |
channel | Номер канала (IEEE 802.11). Стоит заметить, что некоторые драйверы (например madwifi) не используют это значение из hostapd и в таком случае канал должен быть задан отдельно через утилиту iwconfig. | 0, т.е. не задан |
macaddr_acl accept_mac_file deny_mac_file | Аутентификация на основе MAC адресов клиентских станций. Cтоит заметить, что подобный вид аутентификации требует драйвер, использующий hostapd для управления обработки кадров, т.е. это может быть использовано с driver=hostap или driver=nl80211, но не с driver=madwifi. 0 = принимать клиента, если его нет в «черном списке» 1 = отклонять клиента, если его нет в «белом списке» 2 = использовать внешний RADIUS сервер. (черные/белые списки обрабатываются первыми). Черные/белые списки читаются из отдельных файлов (которые содержат MAC адреса — по одному на строку). Необходимо указывать абсолютный путь. | macaddr_acl=0 accept_mac_file=/etc/hostapd.accept deny_mac_file=/etc/hostapd.deny |
auth_algs | IEEE 802.11 описывает 2 алгоритма аутентификации. hostapd может работать с обоими. «Открытая система» (Open system authentication) должна быть использована с IEEE 802.1X. Значения: 0 = Open System Authentication 1 = Shared Key Authentication (требуется WEP) | 3 |
ignore_broadcast_ssid | Посылать пустое поле SSID в широковещательных сообщениях и игнорировать запросы от клиентов, запрашивающие имя ТД. Т.е. то, что в Wi-Fi роутерах называется «скрывать точку доступа» — клиент должен знать SSID для соединения. 1 = посылать пустой (length=0) SSID и игнорировать probe запросы на имя ТД. 2 = очистить SSID (ASCII 0), но сохранить оригинальную длину поля (требуется для некоторых клиентов, которые не поддерживают пустой SSID) и игнорировать probe запросы. | выключено (0) |
ap_max_inactivity | Лимит неактивности клиентской станции. Если клиент ничего не передает в течение времени, указанном в ap_max_inactivity (секунды), посылается пустой дата-фрейм клиенту с целью проверки «А доступен ли он еще?» (Например, клиент мог покинуть зону покрытия ТД). Если на запрос на было ответа (ACK), станция клиента отключается (сначала деассоциируется, затем деаутентифицируется). Эта функция используется для очистки таблицы активных станций от старых («мертвых») записей. | 300 (т.е., 5 минут) |
wpa | Опции WPA. Указание этого параметра требуется чтобы заставить ТД требовать от клиентов WPA аутентификации. (WPA-PSK или WPA-RADIUS/EAP). Для WPA-PSK, нужно указать wpa_psk или wpa_passphrase и включить WPA-PSK в wpa_key_mgmt. Для WPA-RADIUS/EAP, дожен быть настроен ieee8021x (без динамических WEP ключей), должен быть сконфигурирован RADIUS сервер и включено WPA-EAP в wpa_key_mgmt. Возможные значения: 0 = без WPA/WPA2 (не рекомендуется) 1 = WPA (не рекомендуется) 2 = IEEE 802.11i/RSN (WPA2) — на сегодня безопаснее всего. 3 = разрешена как WPA, так и WPA2 аутентификация | 1 |
wpa_psk wpa_passphrase wpa_psk_file | Ключи WPA для WPA-PSK. Могут быть заданы как 256-битным ключем в шестнадцатиричном формате (64 hex digits), так и в виде wpa_psk (в виде ASCII фразы 8..63 символа). В полседнем случае фраза будет сконвертирована в PSK, при этом используется SSID, таким образом, PSK меняется каждый раз когда меняется SSID. Дополнительно, есть возможность счтывать WPA PSK из файла, содержащего список MAC адресов и PSK (по паре MAC — PSK на строку). Таким образом можно настроить несколько PSK. Нужно указывать абсолютный путь до файла с ключами. | n/a n/a /etc/hostapd.wpa_psk |
wpa_key_mgmt | Список принимаемых алгоритмов управления ключами. (WPA-PSK, WPA-EAP, или оба). Записи разделются проблами. Можно использовать WPA-PSK-SHA256 и WPA-EAP-SHA256 для# более стойких алгоритмов, основанных на SHA256. | WPA-PSK WPA-EAP |
wpa_pairwise rsn_pairwise | Набор принимаемых алгоритмов шифрования. Разделенный пробелами список алгоритмов: CCMP = AES in Counter mode with CBC-MAC [RFC 3610, IEEE 802.11i/D7.0] TKIP = Temporal Key Integrity Protocol [IEEE 802.11i/D7.0] | Парные алгоритмы шифрования для WPA (v1) (по умолчанию: TKIP) wpa_pairwise=TKIP CCMP Парные алгоритмы шифрования для RSN/WPA2 (по умолчанию: используется значение wpa_pairwise) rsn_pairwise=CCMP |
Пример конфигурационных файлов для точки доступа со скрытым SSID и авторизацией WPA2 на основе MAC адресов клиентских станций:
hostapd.conf
/etc/hostapd/wpa_psk
Теперь, когда мы настроили hostapd самое время установить его на автоматический запуск при загрузке системы. Для этого нужно отредактировать файл /etc/default/hostapd 9) и изменить закомментированные строки на:
Настройка общего доступа
После перезагрузки компьютера мы сможем «увидеть» свою точку доступа, однако вряд ли сможем подключиться к ней, т.к. нам пока никто не может раздать сетевые параметры и доступ к интернету. Поэтому необходимо выпонить ряд общих действий, не связанных в принципе с Wi-Fi, но необходимых для разделения одного интернет-канала на несколько компьютеров.
Настройка iptables и ip форвардинга
В GNU/Linux в общем и в Ubuntu в частности присутствует замечательный программный файерволл, работающий на уровне ядра операционной системы — Netfilter . Существует утилита, под названием iptables , служащая для управления netfilr’ом и позволяющая достаточно тонко настроить правила проходжения пакетов через шлюз. Более подробно см. в соответствующей статье (скоро будет). Для настройки фаерволла в нашем случае нужно создать скрипт, например, в /etc/firewall/iptables 10) и вставить в него следующий текст:
Далее нужно сделать этот скрипт исполняемым:
И установить его на автоматический запуск при инициализации сетевых служб:
Настройка dnsmasq
Теперь можно перезагрузить шлюз и попытаться соединиться с ним по Wi-Fi или через Ethernet. Если по какой-то причине что-то не работает — внимательно перечитайте руководство и поищите ошибки в ваших конфигурационных файлах. Не забудьте, что если вы используете скрытый SSID вашей точки доступа — она не будет отображаться в списке доступных беспроводных сетей на машинах клиентов — в этом случае вам необходимо вручную указать SSID при подключении.
Как улучшить эту статью
Было бы просто замечательно, если бы кто-то попробовал прогнать это руководство на madwifi устройствах и описал возможные различия в необходимых настройках.
И см. заметку в главе про настройку оборудования.
UPD: А еще было бы неплохо описать различные утилиты внешнего управления hostapd и их настройку.
Прокомментируйте настройку eth0 в /etc/network/interfaces. Какой тип подключения подразумевается под этим интерфейсом? Что делать, если для связи с Интернетом требуется авторизация по VPN?
Источник