Как настроить точку доступа linux

Делаем Wi-Fi точку доступа в Linux

Практически многие сейчас имеют дома ноутбуки и современные сенсорные мобильные телефоны. И в тех, и в иных уже давненько присутствуют Wi-Fi приемники для упрощения выхода в интернет. Правда, для осуществления данного вывода еще нужен и Wi-Fi роутер, но они тоже уже перестали быть экзотикой. Даже и наоборот, экзотикой стало неимение роутера. А выйти в интернет с мобильного, при этом, хочется. Когда еще учесть, что цены на подвижный интернет кусаются, да и скорость мягко говоря не очень, выводом становится создание собственной wi-fi точки доступа. Вот как раз об одном из экзотических случаев и составлю, основываясь на собственном образце. У меня обычный стационарный компьютер (даже не ноутбук с wi-fi частью) который сходит в интернет через витую пару, смартфон, которому хочется в веб и, конечно, Linux на борту пк.

Для этого я покупал самый дешевый в моем городе usb wi-fi брелок D-Link DWA-125 (не сочтите за рекламу, но я очень доволен покупкой, работает как часы). До сих пор помню глаза продавца-консультанта в магазине, у которого я спросил: «Может ли этот брелок работать в режиме точки доступа?» Поэтому выходит что покупал я кота в мешке (вернее, почти, перед покупкой я всеже порыскал в вебе информацию по этому вопросу и всезнающий интернет хоть и неуверенно, но подтвердил что я делал правильный выбор). Значит так, есть брелок, вставили его в usb-порт. Открываем терминал и последующей командой проверяем, установился ли брелок системой:

lsusb | grep — i wireless

В выводе обязано быть что-то подобное на:

Bus 002 Device 004: ID 2001:3c19 D-Link Corp. DWA-125 Wireless N 150 Adapter(rev. A3) [Ralink RT5370]

Когда есть подобная строка (или такая же при применении DWA-125) продолжаем:

iwconfig eth0 no wireless extensions. lo no wireless extensions.

wlan0 IEEE 802.11bgn ESSID:off/any Mode:Managed Access Point: Not-Associated Tx-Power=0 dBm Retry long limit:7 RTS thr:off Fragment thr:off Power Management:on

Где «Access Point: Not-Associated» значивает что ваш брелок не работает сейчас в режиме точки доступа. Далее нужно проверить может ли он раздавать wi-fi или работает только как приемник. Для этого вводим в терминале такую команду:

И ищем в выводе такие строки:

Supported interface modes: . * AP * AP/VLAN . К

огда нашли, поздравляю, ваш брелок подходит для наших целей, осталось только настроить искру доступа. Для этого необходимо установить пару программ:

sudo pacman — S hostapd dnsmasq

Hostapd нам нужен собственно для поднятия точки доступа, а dnsmasq для того чтобы при подключении мобильного телефонного агрегата к нашей будущей wi-fi сети телефону автоматически выдавался IP-адрес. Для настройки hostapd идем в /etc/hostapd, показываем терминал в этой папке и создаем файл hostapd. conf:

sudo touch hostapd. conf

С сходственным содержимым:

ssid= wpa_passphrase= interface=wlan0 auth_algs=3 channel=1 driver=nl80211 hw_mode=g logger_stdout=-1 logger_stdout_level=2 max_num_sta=5 rsn_pairwise=CCMP wpa=2 wpa_key_mgmt=WPA-PSK wpa_pairwise=TKIP CCMP

Для минимальной настройки hostapd этого будет достаточно. Естественно и необходимо заменить на свои (кавычки убрать). Немного поясню: при таких значениях в этом файле ваша точка доступа будет работать на wi-fi-канале «g», с шифрованием AES и защитой WPA2-PSK. Как и большинство «железных» роутеров на нынешний сутки. Кстати, имя интерфейса у вас может быть не wlan0. Уточнить имя можно из команды iwconfig, доставленной выше. Перейдем к настройке dnsmasq. В папке /etc есть файл (именованная область этих на носителе информации) dnsmasq. conf. Там весьма много всяческих настроек с подробными комментами, но на английском, поэтому для того чтобы все трудило ищем вот такие строки в нем и меняем в согласовании с этим отрывком:

Читайте также:  Вкладки для папок windows

. user= . interface=wlan0 . dhcp-range=192.168.0.2,192.168.0.255,255.255.255.0,24h .

Тут мы высокомерничаем свое имя пользователя, опять же имя интерфейса и диапазон IP-адресов, которые будут выходить включающиеся устройства. В данном примере от 2 до 255. Ip-адрес 192.168.0.1 я оставил для самого пк, который станет раздавать интернет. Далее необходимо создать файл dnsmasq. service в папке /etc/systemd/system:

sudo touch /etc/systemd/system/dnsmasq. service

С сходственным содержимым:

.include /usr/lib/systemd/system/dnsmasq. service [Service] ExecStartPre=/usr/bin/ifconfig wlan0 192.168.0.1 netmask 255.255.255.0 up

Оглавление этого файла как раз и отвечает за присвоение компьютеру «оставленного» IP-адреса при загрузке системы и будет включаться в файл /usr/lib/systemd/system/dnsmasq. service при запуске сервиса dnsmasq. Перейдем к настройке iptables. Iptables — это очень мощный, гибко настраиваемый firewall в linux, но довольно сложноватый в усвоенье. Особо вдаваться в подробности не буду (так как и сам еще не до конца в нем разобрался), поэтому просто обнаруживаем терминал и включим по очереди следующие команды:

iptables — F iptables — X iptables — t nat — F iptables — t nat — X iptables — P INPUT ACCEPT iptables — P FORWARD ACCEPT iptables — P OUTPUT ACCEPT iptables — t nat — A POSTROUTING — o eth0 — j MASQUERADE iptables-save > /etc/iptables/iptables. rules

Все же немного поясню: все строки, кроме предпоследних двух сбрасывают все настройки firewall к начальным, предпоследняя строка разрешает нам пользоваться интернетом (всемирная система объединённых компьютерных сетей для хранения и передачи информации), подведенным к основному компьютеру (шлюзу) на устройствах, объединенных с ним в здешную сеть, а последняя строка сохраняет введенные нами настройки firewall. Важная деталь: eth0 в предпоследней строке — это имя интерфейса компьютера на который приходит интернет (у вас может отличаться).

Теперь нужно настроить проброс пакетов. делается это командой:

echo 1 > /proc/sys/net/ipv4/ip_forward

Но присутствует один недостаток, эту команду нужно будет вводить после каждой загрузки пк. Дабы так не заморачиваться идем в папку /etc/sysctl. d и в файле 99-sysctl. conf приводим строчку «net. ipv4.ip_forward =» к подобному виду:

net. ipv4.ip_forward = 1

То есть пишем 1 после знака одинаково. Тем самым разрешая проброс пакетов. Между прочим, если такого файла не оказалось, элементарно создайте его и поместите внутрь вышеописанную строчку. На этом с настройками закончили. На первый взор все кажется очень сложным, но… глаза опасаются, а руки делают. После независимой настройки все эти «магические надписи» станут логичными и удобопонятными. Теперь осталось только швырнуть необходимые сервисы и добавить их в автозагрузку:

sudo systemctl start hostapd sudo systemctl start dnsmasq sudo systemctl start iptables sudo systemctl enable hostapd sudo systemctl enable dnsmasq sudo systemctl enable iptables

После запуска проверьте на всякий случай работают ли сервисы:

systemctl status hostapd systemctl status dnsmasq systemctl status iptables

Когда все хорошо, вы увидите зеленую надпись «Active», если плохо — красную «Inactive», тогда проверьте все введенные настройки, возможно где-то в чем-то ошиблись. Теперь у вас есть собственная wi-fi точка доступа. Плюс ее в том что ваш телефон, планшет, ноутбук и т. д. теперь имеет целый высокоскоростной доступ в интернет, причем бесплатно (имею в виду что не за дополнительную плату. За вложение к интернету компьютера с нашей точкой доступа все же нужно платить). К тому же, через wi-fi вложение теперь можно передавать файлы с компьютера на телефон или планшет и назад без проводов. Для данного правда нужно установить на устройство с Android (не реклама, просто сам использую. На остальных подвижных операционных системах должны быть подобные программы) программу FTP-server (вновь же, не рекламная инфа), ввести несколько простых настроек (все на русском языке, просто и ясно) и готово! Но у подобной точки доступа есть и один минус: wi-fi раздается лишь при включенном пк, что вполне логично. Лично мне, например, интернета на мобильном хватает когда я ищусь вблизи с компьютером. В остальное время просто не пользуюсь им с телефона. Поэтому особо и не минус. Как для вас сходственное ограничение — попробуйте и сделаете выводы.

Читайте также:  Операционные системы windows installer

Источник

Software access point (Русский)

Программная точка доступа используется, если вы хотите чтобы Ваш компьютер выступал в качестве точки доступа для беспроводной локальной сети. Это решит проблему выбора отдельного беспроводного маршрутизатора(WI-FI).

Contents

Требования

Поддержка режима AP устройством Wi-Fi

Вам понадобится nl80211 совместимое беспроводное устройство, поддерживающее рабочий режим AP. Это можно проверить, выполнив команду iw list , которая должна вывести AP в секции Supported interface modes :

Беспроводной клиент и программная точка доступа на одном Wi-Fi устройстве

Создание программной AP не зависит от конкретного типа устройства (Ethernet, Wi-Fi, . ). Многие беспроводные устройства даже могут быть одновременно использованы как точки доступа и как беспроводные «клиенты». Используя эту возможность вы можете создавать программые AP действующие как «беспроводной ретранслятор» для существующей сети, используя единственное Wi-Fi устройство. Эта возможность указана в следующей секции вывода iw list :

Ограничение #channels означает, что ваша программная AP должна работать на том же канале, что и ваше Wi-Fi клиентскоее соединение; смотрите channel свойство в hostapd.conf ниже.

Если вы собираетесь использовать этот способ, возможно потому что Ethernet-соединение недоступно, вам необходимо создать два отдельных виртуальных интерфейса. Виртуальные интерфейсы для физического устройства wlan0 могут быть созданы так: сначала, «виртуальные интерфейсы» создаются непосредственно для самого сетевого соединения ( wlan0_sta ) и для программной AP/hostapd «беспроводного ретранслятора»:

Случайные MAC адреса могут быть сгенерированы при использовании macchanger.

Конфигурация

Настройка точки доступа включает в себя два основных пункта:

  • Настройка канального уровня Wi-Fi, так что беспроводные клиенты могут использовать вашу «программную точку доступа» и принимать/отправлять IP пакеты от/до вашей машины; это то, что пакет hostapd должен сделать за вас.
  • Настройка сетевой конфигурации на вашем компьютере, так что ваша машина будет правильно передавать IP пакеты от/до вашего собственного интернет соединения от/до беспроводных клиентов.

Канальный уровень Wi-Fi

Точку доступа Wi-Fi можно поднять с помощью пакета hostapd , который также поддерживает WPA2.

Скорректируйте настройки hostapd конфигурационного файла, если необходимо. В первую очередь измените ssid и wpa_passphrase . Больше информации на hostapd Linux documentation page.

Для автозапуска hostapd в качестве службы запустите hostapd.service .

Если вы запускаете hostapd в момент загрузки системы, убедитесь в том, что беспроводной сетевой интерфейс поднялся первым, иначе это не удастся. Для этого отредактируйте конфигурацию юнита, указав привязку и время запуска после поднятия вашего сетевого интерфейса:

Также убедитесь, что интерфейс не управляется другими менеджерами сети. Если вы используете NetworkManager, смотрите NetworkManager#Ignore specific devices.

Конфигурация сети

Есть два основных способа реализации:

  1. bridge: создав сеть типа мост на своём компьютере (беспроводные клиенты будут подключаться для доступа к тому же сетевому интерфейсу и к той же подсети, которые используются на вашем компьютере)
  2. NAT: используя IP перенаправление/маскарадинг и DHCP сервис (беспроводные клиенты будут использовать выделенные подсети, данные от/до этих подсетей будут обработаны NAT — подобно тому как это используется в обычном Wi-Fi роутере, который подключён по DSL или проводному модему)
Читайте также:  Рдп клиент для windows

Обращаться с мостом проще, но он требует, чтобы любой сервис который нужен вашим беспроводным клиентам (вроде DHCP) был доступен на внешнем интерфейсе вашего компьютера. Это означает, что он не будет работать если у вас dial-up соединение (например, через PPPoE или 3G modem), или если вы используете проводной модем, который поддерживает всего один IP адрес до вас посредством DHCP.

NAT более универсален, так как он явно разделяет Wi-Fi клиентов вашего компьютера и полностью проницаем наружу. Он будет работать с любым видом сетевого соединения, и (если необходимо) вы можете ввести политики использования трафика используя обычные методы iptables.

Конечно, возможно скомбинировать оба способа. Для этого изучение обеих статей будет необходимым. Например, имея мост, связанный с ethernet-устройством и беспроводным устройством, имеющим статический ip и раздающий адреса при помощи DHCP, можно создать NAT настроенный на клонирование трафика на дополнительное сетевое устройство — это может быть ppp или ethernet.

Настройка моста

Вам необходимо создать сетевой «мост» и присоединить к нему свой интерфейс (например, eth0 ). Вам не следует добавлять к мосту беспроводной интерфейс (например, wlan0 ); hostapd добавит его самостоятельно.

Настройка NAT

Смотрите Раздача интернета для получения дополнительной информации.

Учтите, что в той статье используется устройство net0 для подключения к локальной сети. В нашем случае в качестве его будет выступать беспроводное устройство (напр. wlan0 ).

Инструменты

linux-wifi-hotspot

Пакет linux-wifi-hotspot AUR включает в себя скрипт, который может создать точку доступа для раздачи интернета посредством моста/NAT. Он сочитает в себе hostapd, dnsmasq и iptables для создания точки доступа. Поддерживает интерфейс командной строки и графический интерфейс. Базовый синтаксис для создания виртуальной сети посредством NAT следующий:

Другой подход с использованием шаблона конфигурации, который предложен в /etc/create_ap.conf , может быть адаптирован под ваши нужды и запущен со скриптом:

Чтобы использовать графический интерфейс, запустите в терминале:

Включите/запустите службу create_ap.service для запуска скрипта в момент загрузки системы с конфигурацией, описанной в /etc/create_ap.conf .

RADIUS

Смотрите [1] инструкции для запуска сервера FreeRADIUS для WPA2 Enterprise.

This article or section needs expansion.

Решение проблем

WLAN очень медленно работает

Частые причины более низкой, чем ожидалось, пропускной способности включают:

  • Неправильный режим работы с hw_mode ниже поддерживаемого может искусственно ограничивать маршрутизатор. Убедитесь, что выбран современный режим работы.
  • Переполненный или нагруженный другими шумами канал channel может сильно ухудшить производительность, особенно в густонаселенных областях. Попробуйте изменить канал или даже переключать частоты.
  • Это может быть вызвано наличием слабой энтропией. Попробуйте установить haveged.

Вмешательство NetworkManager

hostapd может не работать, если устройство управляется NetworkManager. Вы можете замаскировать устройство используя MAC:

Либо имя интерфейса:

Не удаётся запустить режим AP в диапазоне 5Ghz

По-видимому, со специальным кодом страны 00 (глобальный), все доступные частоты в диапазоне 5Ghz будут с установленным флагом no-ir (no-initiating-radiation), тем самым предотвратив hostapd использовать их. Вам понадобится установить crda и выставить код вашей страны, чтобы hostapd стали доступны разрешённые в вашей стране частоты.

Источник

Оцените статью