Wifi роутер на ноутбуке linux

Содержание
  1. Wifi роутер на ноутбуке linux
  2. Командная строка
  3. Рассмотрим пример подключения к wifi-точке с шифрованием WEP
  4. Рассмотрим более сложный случай — соединение с точкой доступа по WPA-шифрованию
  5. Заключение
  6. MNorin.com
  7. Блог про Linux, Bash и другие информационные технологии
  8. Настройка WiFi из командной строки
  9. Установка необходимых пакетов
  10. Проверка беспроводного контроллера
  11. Настройка WiFi из командной строки
  12. Изменение конфигурационных файлов
  13. Программная точка доступа
  14. Содержание
  15. [WiFi Hostapd AP] Программа для создания точки доступа WiFi
  16. Возможности программы
  17. Установка программы
  18. Настройка программы
  19. Проблемы с Network Manager
  20. Старый способ
  21. Краткое описание руководства
  22. Прежде чем начать
  23. Совместимость оборудования
  24. Network Manager
  25. Другие интерфейсы
  26. Скорость передачи данных
  27. Установка необходимых пакетов и обновление
  28. Настройка интерфейсов
  29. Настройка беспроводного интерфейса
  30. Настройка моста
  31. Итоговый interfaces
  32. Настройка hostapd
  33. Настройка общего доступа
  34. Настройка iptables и ip форвардинга
  35. Настройка dnsmasq
  36. Как улучшить эту статью

Wifi роутер на ноутбуке linux

Предполагается, что у вас имеется беспроводное сетевое устройство (адаптер), который работает под Linux. Если вы вдруг обнаружили, что ваше устройство не работает, можно предложить, как один из вариантов для новичков, поставить последнюю версию дистрибутива Ubuntu и установить проприетарные драйвера для своей беспроводной карточки. Предложенный случай является наиболее простым и действенным, по сравнению с попытками заставить работать адаптер через драйвер ndiswrapper.

Также предполагается, что у вас имеются в наличии два параметра для подключения к беспроводной точке: SSID и идентификационный ключ. Без них (особенно — без второго, так как первый еще можно легко узнать) вы не сможете установить соединение.

Wicd — графическое приложение, написанное на Python. Гибкая и удобная в использовании программа, предлагающая большой функционал. Wicd легко устанавливается и им также легко пользоваться. Достаточно всего нескольких минут для ознакомления с программой. Стоит также заметить, что Wicd, помимо графического интерфейса, имеет и консольный вариант «исполнения», не уступающий по функциональности.

Командная строка

Давайте теперь посмотрим, как настроить wifi-соединение через командную строку. К слову сказать, такой способ является универсальным, так как используются утилиты, являющиеся стандартными для всех дистрибутивов Linux. Более того, все приложения с графическим интерфейсом (GUI) основаны на работе именно этих утилит. Образно говоря, если мы «снимем» «крышу» GUI у любого графического приложения, то под ней мы увидим скромных и незаметных тружеников консоли: ifconfig, wireless-tools, wpa_supplicant, ping, nmap и многих других.

Для выполнения нашей задачи понадобятся следующие утилиты:

  • — ifconfig : полностью управляет работой любого сетевого адаптера вашего компьютера (будь то проводной или беспроводной интерфейс);
  • — iwlist : выдает список доступных для подключения (находящихся в радиусе досягаемости) беспроводных дочек доступа;
  • — iwconfig : утилита управления и конфигурирования беспроводных сетевых устройств (адаптеров);
  • — dhclient (или его налоги): автоматически получает IP-адрес от dhcp-сервера беспроводной точки;
  • — wpa_supplicant : утилита для настройки шифрованных соединений.

Перед началом настройки wifi-соединения логичным было бы проверить наличие всех этих утилит в системе (хотя, почти все они входят в стандартный набор Linux-дистрибутивов). Давайте, все же, убедимся в том, что они есть у нас, выполнив совсем несложные команды (см. man which):

  • — which ifconfig
  • — which iwlist
  • — which iwconfig
  • — which dhclient
  • — which wpa_supplicant

При выполнении каждой из этих команд вы увидите путь, по которому они располагаются в файловой системе. Если вдруг не увидите — вам придется установить отсутствующие. Наиболее простой и рекомендуемый — это менеджером пакетов того дистрибутива Linux, которым вы пользуетесь. Как альтернатива — можно предложить установку из исходников, но такой путь требует достаточного опыта от пользователя.

Рассмотрим пример подключения к wifi-точке с шифрованием WEP

1 . Первое, что мы сделаем — посмотрим, какие сетевые адаптеры имеются у нас на компьютере:

Вывод будет содержать имена и подробное описание всех сетевых интерфейсов, которые удалось обнаружить утилите ifconfig. Если не был обнаружен желаемый, то причина заключается только в одном — нет драйверов для него и не включена поддержка этого интерфейса в ядре Linux.

2 . Запускаем беспроводной сетевой адаптер:

здесь :
— wlan0 — стандартное в большинстве Linux-систем имя wifi-карточки;
— up — опция говорит команде ifconfig запустить для работы («поднять») сетевое устройство.

3 . Теперь нам надо сканировать эфир вокруг себя на наличие доступных hot-spot’ов:

— wlan0 — имя беспроводного адаптера;
— scan — команда iwlist запускается в режиме сканирования.

Результатом работы iwlist будет детальный отчет, из которого на данном этапе нас интересует только одна строчка: ESSID:»Some_Name». Значение параметра ESSID («Some_Name») — это имя беспроводной точки доступа. Теперь мы знаем, к какой конкретно wifi-точке мы будем подключаться.

4 . Выполняем подключение:

— wlan0 — сетевой адаптер, на котором настраивается соединение;
— essid — задаем имя точки доступа, к которой подключаемся;
— key — указываем ключ шифрования, использующийся этой точкой доступа для передачи данных.

Команда iwconfig по умолчанию использует для ключа шифрования данные в шестнадцатеричном виде HEX. Если вы хотите указать ключ в виде простого текста (ASCII), вам необходимо использовать опцию s .

5 . Последний шаг — получаем от dhcp-сервера wifi-точки IP-адрес:

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

Здесь мы добавили еще одну команду sleep с параметром 10 секунд. Это рекомендуется делать перед получением IP-адреса для надежности установки соединения.

Сохраняем этот файл под каким-либо именем (например, wireless_up) и делаем его исполняемым командой:

Переносим wireless_up по пути /usr/local/bin, чтобы сделать его глобально видимым всей системой.

Теперь вам достаточно набрать в командной строке:

. и соединение будет установлено.

Рассмотрим более сложный случай — соединение с точкой доступа по WPA-шифрованию

Соединение с таким шифрованием поддерживает только утилита wpa_supplicant, поэтому она нам понадобиться. Также, опять таки, предполагаем, что мы знаем ключ (пароль) шифрования этой точки доступа.

1 . Генерируем пароль на основе этого ключа с помощью утилиты wpa_passphrase, которая входит в состав пакета wpa_supplicant. Дело в том, что пароль, который мы будем использовать далее, должен быть в виде шестнадцатиричного числа:

Утилита выдаст сгенерированную строку psk, которую мы вставим в конфигурационный файл wpa_supplicant.conf:

Читайте также:  Провод для подключения камеры видеонаблюдения к роутеру

Это очень упрощенный файл конфигурации, но он будет работать. Возможно, вам потребуется добавить в шапку этого файла еще одну строку:

для предоставления необходимых прав доступа.

2 . «Поднимаем» интерфейс wlan0:

3. Указываем, к какой точке мы хотим подключиться:

4 . Запускаем утилиту wpa_supplicant на установку соединения:

здесь :
— B — запускать команду wpa_supplicant в фоновом режиме;
— Dwext — говорим утилите wpa_supplicant использовать драйвер wext для интерфейса wlan0;
— i — задаем настраиваемый сетевой интерфейс (wlan0 в нашем случае);
— с — указываем путь к конфигурационному файлу wpa_supplicant.conf.

5 . Проверяем, что соединение установлено:

На выводе увидим подробную информацию по указанному интерфейсу wlan0.

6 . Получаем локальный IP-адрес:

7 .Упрощаем процесс, создав по пути /etc/network/interfaces запись следующего вида:

Заключение

В зависимости от дистрибутива Linux, существует множество способов настройки wifi-соединений. Именно благодаря такому разнообразию настроить соединение можно практически в любой Linux-системе.
Главное, чтобы сам беспроводной адаптер поддерживался в Linux на уровне драйверов. Но это уже зависит главным образом от разработчиков операционных систем.

Источник

MNorin.com

Блог про Linux, Bash и другие информационные технологии

Настройка WiFi из командной строки

Если вы пользуетесь какой-либо операционной системой на базе ядра linux, то скорее всего уже видели графические приложения для подключения к беспроводными сетям. Но если графического приложения еще нет, и для установки его требуется наличие сети, а для получения доступа к Интернету необходимо подключиться к беспроводной точке, то выход тогда только один — настройка WiFi из командной строки. Или еще пример — настроить сервер по ssh, чтобы он мог работать с беспроводным контроллером.

Установка необходимых пакетов

В первую очередь необходимо проверить, установлены ли пакет wpasupplicant и wireless-tools. Эти пакеты позволят вам подключаться к беспроводным сетям с WPA и WPA2 аутентификацией. В Debian и Ubuntu это делается командами

Если пакеты не установлены, то, возможно, поднять беспроводную сеть не получится, если у вас нет другого носителя. Пакеты устанавливаются следующей командой:

Кроме того, может понадобиться поставить микрокод (firmware) для устройства, установив соответствующий производителю пакет. Микрокод также называют прошивкой, но это не совсем правильно. Микрокод загружается в устройство перед началом работы с ним, а прошивка в устройстве находится постоянно. Для Intel это может быть, например, пакет firmware-iwlwifi из репозитория non-free. Микрокод часто лежит именно в этой ветке репозиториев. Либо это может быть пакет firmware-realtek, либо firmware-linux-free.

Проверка беспроводного контроллера

Перед тем, как пытаться подключаться, нужно убедиться, что система видит WiFi-контроллер и правильно его распознает, для просмотра списка устройств можно использовать команду lspci, в ее выводе должна быть строчка наподобие этой:

А в списке интерфейсов должен присутствовать соответствующий сетевой интерфейс, обычно это wlan0. Просмотреть список можно командой

Настройка WiFi из командной строки

Если устройство в системе найдено, можно переходить к настройке сети. Для начала просмотрим список доступных локальных сетей:

На экран будет выведен список доступных сетей в виде записей такого вида:

Из этой информации нам понадобится поле «ESSID», представляющее название точки доступа, в данном случае «wireless-net», а также строчки «IEEE 802.11i/WPA2 Version 1» и «Authentication Suites (1) : PSK». Эти два значения дают нам понимание того, что используется WPA2-PSK аутентификация.

Создаем файл /etc/wpa_supplicant/wpa_supplicant.conf:

И затем даем команду

После этого, если адрес не получен автоматически, вызываем DHCP-клиент:

После получения адреса Интернет может быть недоступен. Необходимо командой route проверить таблицы роутинга. Если шлюз по умолчанию отсутствует, то надо добавить его командой

Если адрес указан верно, то вы сможете получить доступ к Интернету. Но обычно DHCP-клиент получает шлюз по умолчанию автоматически

Изменение конфигурационных файлов

Теперь нам необходимо задать в конфигурационных файлах параметры беспроводной сети — название и ключ.

Записываем в файл /etc/network/interfaces следующее:

Источник

Программная точка доступа

Содержание

[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.
= принимать клиента, если его нет в «черном списке»
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. Значения:
= 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. Возможные значения:
= без 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?

Источник

Adblock
detector