Мощный роутер своими руками

Мощный домашний маршрутизатор своими руками

Xakep #269. Реверс-шелл на 237 байт

Хотя в интернет-магазинах есть любое сетевое оборудование, но всё равно найдутся любители сделать всё по-своему. Например, инженер Ник Пегг был очень недоволен ограничениями классического домашнего маршрутизатора WRT54GL с 4 МБ флэш-памяти и слабым ЦПУ. В то же время, будучи весьма стеснённым в средствах, он не мог позволить себе профессиональный маршрутизатор.

Выход нашёлся: собрать устройство своими руками из компьютерных комплектующих, которые найдутся в шкафу или б/у в интернете.

Нужно было нечто дешёвое, с низким энергопотреблением и несколькими сетевыми адаптерами.

Свой выбор Ник остановил на материнской плате Mini-ITX, которая идеально подходит для такой задачи. В его случае достаточно было платы с двумя сетевыми разъёмами, но несложно достать такую же плату с большим количеством NIC.

Для беспроводной связи инженер взял адаптер Intel 7260-ac Mini-PCIe, хотя позже сам понял ошибочность такого решения. Из-за специфичной прошивки и драйвера под Linux карта упорно отказывалась работать в диапазоне 5 ГГц.

Карта Intel 7260-ac Mini-PCIe

Задним умом он понял, что лучше использовать карту на чипсете Atheros и с нормальным драйвером. В любом случае, предварительно следует обязательно проверить в интернете, что другим хакерам успешно удалось решить проблему и накатить прошивку OpenWRT.

Так или иначе, инструкция Ника Пегга по сетевой настройке и конфигурации оборудования будет очень полезна при попытке реализовать подобный проект.

Источник

Самодельный роутер, распространённые ошибки

Хороший подарок – тот, который сделан своими руками (при условии их достаточной «прямизны»). Ну и самый хороший роутер, наверно, тоже может быть только самодельным. Сейчас появилось много комплектующих, отвечающих стандарту mini-ITX. И в компактном корпусе, который Вы купите в магазине, можно собрать WiFi роутер своими руками, работая только одной отвёрткой, ну и головой тоже. Здесь мы хотели бы перечислить советы, которые оградят разработчика от типичных ошибок, совершаемых при выборе аппаратных компонентов.

Задача выглядит так: нужно собрать компьютер, состоящий из системной платы с процессором, корпуса с блоком питания, и одной платы расширения (проводной сетевой карточки). Память лучше покупать минимально возможного объёма (1 Gb), а те корпуса, конструкция которых не позволяет установить плату расширения, пусть останутся у продавца. Ещё нужно позаботиться о правильно выполненном охлаждении. В инструкции на корпус может приводиться значение TDP CPU, для которого использовать вентиляторы ещё не обязательно, но если TDP Вашего процессора будет больше, то рекомендацией пренебрегать нельзя. В качестве жёсткого диска лучше применять такие варианты:

  • Накопитель SSD m-SATA (mini-SATA), если системная плата совместима с ними.
  • Устройство класса Intel Z-U130 или его аналоги от других фирм (если найдёте). Обратите внимание, что установить такой накопитель на некоторые платы нельзя из-за механической несовместимости.

Самый оптимальный объем SSD равен 4 GB, а сейчас мы поговорим о выборе процессора и платы.

Выбор материнской платы mini-ITX

Нашим требованиям лучше всего отвечала бы такая «материнка»:

  • Процессор уже распаян, его TDP не превышает 10 Ватт (о выборе CPU будет сказано дальше)
  • Есть совместимость с накопителями m-SATA
  • Питание к «материнке» подводится через стандартный разъём ATX (сейчас есть блоки питания мощностью 60-120 Ватт, являющиеся безвентиляторными)
  • Разъём PCI-E x1, а лучше просто PCI, присутствует хотя бы в количестве одного.

Вы будете смеяться, но продуктов, соответствующих всем требованиям сразу, сейчас нет, и не было никогда. Есть близкие варианты, например, платы Intel D525mw (и D525mwv) не поддерживают m-SATA, а остальным требованиям вполне отвечают. То есть для них придётся найти накопитель Intel Z-U130, что сегодня осуществить очень сложно. В общем, пользуйтесь сервисом «Яндекс. Маркет», внимательно просматривая все характеристики.

Есть такие корпуса, которые по внешнему виду напоминают решето, и в них используются БП следующего формата:

Обратите внимание, что если разъём «12V-ATX» есть на материнской плате, то он должен присутствовать и в комплекте источника питания. Смысл от покупки подобного корпуса в том, что можно собрать безвентиляторную систему. Только вот в инструкции может быть указано, что при использовании процессора с TDP 10 Wt или больше вентилятор устанавливается обязательно. Таблица с характеристиками процессоров Intel:

  • D525 – «атом» предыдущего поколения, быстрый, TDP равно 13 Wt, идеальная совместимость с Linux
  • D2700 – ещё быстрее, чем предыдущий, TDP равно 10 Wt, Linux обещали «допилить» до него (речь идёт о встроенной графике)
  • N2800 – небольшое значение TDP (6,5 Wt), но заметно медленнее «старичка» D525, хотя и новее его
  • N2600 – сверхнизкое TDP, медленнее «Атома N2800», используется в платах thin mini-ITX, что для наших целей будет «слишком шикарно».

Выбор оставляем за будущим владельцем.

«Сетевые дела»: WAN, Wi-Fi

Всегда советуют делать такой выбор: если у Вас уже есть точка доступа, оснащённая портом LAN, покупайте системную плату с двумя контроллерами LAN. В иных случаях лучше докупить внешнюю точку доступа, подключаемую к USB, и пара Ethernet-портов на задней стороне платы будет излишеством. Мы говорили о том, что кабель провайдера Вы будете подключать к порту, распаянному на дополнительной сетевой карте. И это не случайно. Порт сетевой карточки, используемый в качестве WAN-порта, вполне может сгореть. В общем, сетевую карту, подключаемую к провайдеру, нужно считать своеобразным «расходником» (шутка, но с долей правды).

Читайте также:  Масло грецкого ореха своими руками

Пара команд из Linux

Допустим, в качестве операционной системы нашего роутера используется Linux. Надеемся, что ядро правильно определило все аппаратные Ethernet-контроллеры. Можно производить настройку подключения к провайдеру, но прежде нередко требуется сменить MAC-адрес как минимум одной сетевой карты. Это было бы просто сделать в Windows, а в Linux придётся прописать пару команд.

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

  • # ifconfig eth2 down//мы настраиваем именно «eth2», у Вас может быть другой номер
  • # ifconfig eth2 hw ether 01:02:03:04:dd:ff//новое значение присвоено
  • # ifconfig eth2 up//включили контроллер «eth2».

Новое значение MAC можно присвоить сетевой карте «навсегда», точнее, мы заставим ОС эмулировать требуемое значение всё время. Но для выполнения последнего, отделаться только командами консоли уже не получится:

  • nano /etc/network/interfaces//нужно открыть на редактирование файл «interfaces».

Теперь ищем в файле строки с названием нужного контроллера (у нас это «eth2»), и после строчки «iface eth2 inet…» мы добавили следующее:

Сохранили файлик, и всё (после перезагрузки будет использоваться «наше» значение).

А вообще, заметим, что эмуляция MAC – это плохо по определению.

Утверждение в равной степени относится ко всем операционным системам, и даже к тем, которые прошиты в «обычном» роутере. Эмулирование выполняется программно, что, как минимум, отнимает лишние вычислительные ресурсы (память, процессорное время). Лучшее решение – добиться того, чтобы провайдер изменил значение в своей базе MAC-адресов на то, которое нужно Вам. Говоря короче, клонирование MAC вполне можно использовать в качестве временной меры, но не более.

Как настроить Wi-Fi USB?

Многие думают, что если в Linux есть такое чудо, как Hostapd, то переключить в режим «Точка доступа» можно любой адаптер Wi-Fi. В действительности, это не так. От интерфейса подключения к ПК (USB, PCI-E и т.д.) почти ничего не зависит, а главным критерием является наименование чипсета и драйвер, предназначенный для него. Если драйвер действительно поддерживает режим «Access Point», это будет отображено на сайте «wireless.kernel.org». Зайдите на указанную страницу, выполните переход «USERS» –> «Devices».

Дальше нужно воспользоваться ссылкой «USB Devices», и откроется таблица, где Вы с помощью поиска по странице найдёте требуемую модель девайса. Затем нажмите на ссылку в первом столбце, чтобы перейти к описанию используемого драйвера:

На появившейся странице нужно выполнить поиск по слову «mode». Если увидите, что режим «AP Mode» действительно поддерживается – значит все хорошо. В ином случае заставить адаптер стать точкой доступа можно только нестандартными методами (либо нельзя вообще). Желаем удачи.

Самодельная антенна WI-FI

Источник

Превращаем бытовой роутер в хак-станцию

Решил написать статью о своём опыте превращения бытового роутера в хак-станцию.
Атака на WPS иногда занимает более 10 часов. Чем же брутить? Выбор не большой:
PC – совместимые железяки
Android – устройства
— Специализированные девайсы вроде WiFi Pineapple
Встала задача брутить на работе, оставлять ноутбук не хотелось. Решил попробовать Android смартфоном. Выяснилось, что, режим монитора в драйвере Wi-Fi отказывается корректно работать. Свою задачу, осуществил роутером.

Выбор беспроводного роутера


Перед роутером я поставил следующие критерии:
— наличие прошивки OpenWrt/DD-WRT/etc для установки Aircrack-ng, Reaver/Bully
— наличие USB порта
— съёмная антенна (требовалось вынести антенну из помещения)

Реальность, оказалась не столь радужной. Актуальных девайсов в продаже с такими характеристиками оказалось не много.
Первый роутер, который я приобрёл для превращения его хак-станцию был UPVEL UR-326N4G. Однако его пришлось вернуть в магазин т.к. OpenWrt от UPVEL не поддерживала подключение USB накопителей. А подключить модули для полноценной поддержки USB так же было невозможно из-за недостаточности свободного места.

К выбору второго роутера я подошёл более серьёзно. Был куплен ASUS RT-N10U B. На первый взгляд единственным минусом было отсутствия для этой модели прошивки OpenWrt. Но зато были DD-WRT, Tomato, прошивка от Олега. Вроде бы не плохо. Установил OPKG под DD-WRT, смонтировал USB Flash. Развернул софт Aircrack-ng. Попытался перевести в airmon-ng Wi-Fi в режим монитора. И тут меня ждало разочарование, оказалось, что его BCM5357 не мог переходить в режим монитора.

Этот ASUS RT-N10U B с большим трудом удалось поменять на другой роутер. DNS крайне тугой магазин. И так наконец я взял TP-Link TL-MR3220 v2. Оказалось, что в нём используется Atheros AR9331, такой же установлен в Pineapple Mark V.

Превращение в хак-станию

Прошивка с сайта OpenWrt для TP-Link TL-MR3220 v2, не имела в себе модулей для монтирования USB накопителей. Пришлось поискать модифицированную версию: https://app.box.com/s/cqk23ztqlux1zs034896
Процесс установки описан подробно здесь (простая установка OEM-способом).
Итак, OpenWrt раскатали, всё настроено по дефолту.
Теперь подготавливаем USB накопитель. Необходимо отформатировать флешку в Ext3 (самый надёжный выбор ФС, с FAT работать не будет).
Подключаем USB накопитель к роутеру и перезагружаем его. Далее идем в веб-интерфейс 192.168.1.1. Открываем вкладку System ⇾ Mount Points

Далее как на скриншотах:


Далее открываем вкладку Network ⇾ Wifi нажимаем Enable на интерфейсе (radio1)

Нужно сменить дефолтный пароль, иначе не получиться авторизоваться чрез SSH.
Перезагружаемся.
Наша флешка будет смонтирована в /tmp/overlay-disabled
Теперь о самом главном, о софте. Для пентестов нам нужен следующий набор:
• aircrack-ng
• reaver
• bully

Если вы хотите устанавливать утилиты самостоятельно, то нужно выполнить следующее:

Устанавливать нужно с ключом -d usb
Пример:
opkg install -d usb aircrack-ng
Софт для TP-Link TL-MR3220 v2 подходит от ar71xx

Но тем, кто не желает тратить время на установку или сборку утилит, я предлагаю готовый набор, который нужно скопировать в корень флешки: https://yadi.sk/d/5WUca8OrhkULA
Версии:

  • aircrack-ng — 1.1-3
  • bully — 1.0-22
  • reaver с поддержкой pixie!
Читайте также:  Мобильная сцена своими руками

Сразу же после того, как зашли по SSH нужно применить следующие патчи:

Прошу не пинать сильно в комментариях, т.к. делалось всё «на скорую руку».

Заключение

Как пользоваться этими утилитами я не буду здесь описывать. Укажу только на один нюанс. Для того что бы airmon-ng мог перебирать каналы, нужно выполнить следующее:

Источник

Беспроводной машрутизатор своими руками

  1. Выбор комплектующих
  2. Запуск сетевых интерфейсов
  3. Установка точки доступа 802.11ac (5 ГГц)
  4. Настройка виртуального SSID с помощью hostapd

Последние десять лет я покупал дешёвое сетевое оборудование и ставил на него DD-WRT, чтобы вернуть «функции» ценой более $500, удалённые из ядра Linux, на котором основаны стоковые прошивки.

Несмотря на нестабильные сборки, неисправленные ошибки и споры, DD-WRT всё равно предпочтительнее стоковых прошивок. Но сейчас достойные комплектующие дешевле, чем когда-либо, а DIY-сообщество поголовно перешло на Linux (я смотрю на вас, м-р Raspberry), так почему бы не собрать собственный беспроводной маршрутизатор раз и навсегда?

Выбор комплектующих

Первым делом нужно определиться с платформой: x86 или ARM? Не буду подробно обсуждать ключевые различия, но вкратце: у первой лучше производительность, а вторая дешевле и энергоэффективнее. Платы Raspberry Pi (и аналоги) чрезвычайно дёшевы и, вероятно, мощнее большинства беспроводных коммерческих маршрутизаторов, но платформы x86 широко распространены и имеют преимущество за счёт стандартизированных форм-факторов и портов расширения.

Конечно, самая важная деталь — это чипсет. Сегодня стандартами де-факто являются 802.11n (2,4 ГГц) и 802.11ac (5 ГГц), но подобрать драйверы под Linux — та ещё задачка, тем более с поддержкой режима AP (точка доступа). Короче, если не хотите проблем, то выбирайте чипсеты Atheros. Драйверы ath9k и ath10k хорошо поддерживаются, вы легко найдёте их с интерфейсами USB и/или mini-PCIe.

Хотя бы один контроллер сетевого интерфейса (NIC) — необходимый минимум, а RAM и накопитель выбирайте на свой вкус.

Список материалов

Принеся в жертву цену и энергопотребление, я выбрал x86-платформу ради модульной, относительно мощной конфигурации, доступной для апгрейда.

Если вам не нужен ARM, то и вентилятор не обязателен.

  • Gigabyte GA-J1900N-D3V (J1900 четырёхъядерный 2 ГГц Celeron, два NIC)
  • Airetos AEX-QCA9880-NX (двухдиапазонный 802.11ac, MIMO)
  • 4 ГБ RAM (DDR3-LP, 1333 МГц, 1,35 В)
  • Удлинитель mPCIe
  • Корпус MX500 mini-ITX
  • Три двухдиапазонных антенны 6dBi RP-SMA + кабель RP-SMA
  • PicoPSU-90
  • Запасной HDD 2.5”

Корпус просторный, с двумя подготовленными отверстиями для штепсельной вилки AC/DC. Установка материнской платы, RAM и Pico-PSU прошла гладко:


Железячное порно

Самым сложным оказалась установка mini-PCIe WiFi, потому что плата поддерживает только карты половинного размера: здесь на помощь пришёл удлинитель mPCIe. Я взял кабель FFC на 20 см (входит в комплект) для подключения обеих сторон адаптера и закрепил mini-PCIe на шасси с помощью двустороннего скотча.


Расширитель mini-PCIe

К счастью, корпус поставляется с тремя предварительно вырезанными отверстиями для антенн. Вот окончательный результат:

Программное обеспечение

Понятно, что ставим Linux. В зависимости от оборудования, это может быть оптимизированный дистрибутив вроде Raspbian (для Raspberry Pi) или любой другой дистрибутив Linux, который вам нравится. Поскольку я много лет использую Ubuntu, то выбрал Ubuntu Server 18.04 LTS, с которым мне привычнее работать и которому обеспечена долгосрочная поддержки.

В дальнейшем статья предполагает, что вы используете дистрибутив на базе Debian.

Если установка прошла нормально и вы зашли в консоль, определим имена интерфейсов:

На материнской плате два встроенных NIC: это enp1s0 и enp2s0 . Беспроводная карта отображается как wlp5s0 и поддерживает режим AP, как и предполагалось:

Теперь можем обрисовать, что нам нужно: первый NIC поставим как WAN-порт, а второй соединим с беспроводным интерфейсом:

Если у вас Ubuntu 18.04, то немедленно избавимся от netplan , чтобы вернуться к поддержке /etc/network/interfaces:

В качестве DHCP/DNS-сервера выберем dnsmasq:

Так как мы будем запускать и настраивать процесс dnsmasq через хук post-up , не забудьте отключить демон при загрузке:

Напишем предварительную конфигурацию сетевых интерфейсов в соответствии с диаграммой, включая минимальную настройку dnsmasq :

Как вы могли заметить по секции post-up , dnsmasq стартует, как только поднимается мост. Его настройка выполняется только аргументами командной строки ( —conf-file=/dev/null ), и процесс остановится при отключении интерфейса.

В поле bridge_ports специально не указан интерфейс wlp5s0 , потому что hostapd добавит его к мосту автоматически (brctl может отказаться делать это, прежде чем запущен hostapd для изменения режима интерфейса).

Теперь можно перезапустить сеть ( sudo service networking restart ) или просто перезагрузиться, чтобы проверить правильность настройки конфигурации сети.

Обратите внимание: хотя мы в данный момент можем получить DHCP от enp2s0 , но у нас не будет ни беспроводной связи (позже подробнее об этом), ни доступа в интернет (см. ниже).

Маршрутизация

На этом этапе нужно маршрутизировать пакеты между интерфейсами LAN ( enp2s0 ) и WAN ( enp1s0 ) и включить трансляцию сетевых адресов.

Включить переадресацию пакетов легко:

Последняя команда гарантирует, что конфигурация сохранится до следующей перезагрузки.

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

FireHOL — это язык для защищённого файрвола с сохранением состояния, его конфигурация легко понятна и доступна. Больше не надо писать операторы iptables : конфигурационный файл сам транслируется в операторы iptables и применяется как надо. Никакого демона в фоновом режиме.

Включение трансляции сетевых адресов для интерфейсов локальной сети с добавлением минимальных правил файрвола делается элементарно:

FireHOL написан людьми для людей, документация здесь.

Можете проверить настройки, вручную запустив firehol ( sudo firehol start ) и подключив ноутбук к порту LAN: теперь вы сможете выйти интернет, если подключен порт WAN.

Перед перезагрузкой не забудьте отредактировать /etc/default/firehol , чтобы разрешить запуск FireHol при загрузке:

Не буду вдаваться в детали всего синтаксиса firehol , конфигурационный файл сам себя объясняет, рекомендую обратиться к документации в случае более сложной настройки. Если вам действительно интересно, что firehol сотворил с iptables , просто введите sudo firehol status в командной строке.

Читайте также:  Как сделать щипцы для барбекю своими руками

Беспроводная точка доступа

Очевидно, управлять точкой доступа будем с помощью hostapd:

Ниже вы найдёте минимальный и почти не требующий пояснений файл конфигурации 802.11 n/2.4 Ghz/WPA2-AES:

Документацию hostpad.conf см. в /usr/share/doc/hostapd/examples/hostapd.conf .

Описанную конфигурацию можно протестировать вручную:

Если всё идёт хорошо, появится беспроводное подключение. Если вы удовлетворены результатом, не забудьте изменить конфигурацию, чтобы запустить hostapd сразу как поднимется интерфейс (как показано ниже).

Вот ваш окончательный /etc/network/interfaces:

Установка точки доступа 802.11ac (5 ГГц)

Пассивное сканирование

Согласно документации Airetos AEX-QCA9880-NX, чипсет поддерживает 802.11ac, так что мы можем уйти из переполненных каналов 2,4 ГГц в райские 5 ГГц.

Посмотрим, какие частоты поддерживаются:

В приведённом списке видим, что чипсет поддерживает каналы 1−14 (2,4 ГГц) и каналы 36−165 (5 ГГц), но вы заметили флаг no IR ?

Флаг no IR обозначает no-initiating-radiation (то есть пассивное сканирование). Это значит, что данный режим запрещён в случае, когда устройство первым инициирует излучение (включая маяки). Другими словами, нельзя запускать точку доступа на этих каналах!

Нормативные требования

Вышеописанная ситуация объясняется нормативными требованиями Linux, которые регулируют использование радиочастотного спектра в зависимости от страны.

Я живу в США, а по ссылке написано, что я имею право инициировать излучение на каналах 36-48, так в чём дело? Посмотрим, какой домен регулирования используется в данный момент:

Выдача показывает, что сейчас активен мировой домен (или не установлен), то есть минимальные значения, разрешённые в каждой стране.

К сожалению, вручную установить домен sudo iw reg set не получится, потому что домен зашит в EEPROM:

К счастью, нормативные требования обрабатываются на уровне драйвера, так что их можно легко изменить: находим патч в исходниках Open-WRT.

Прежде всего, не забудьте подключить репозиторий исходного кода из /etc/apt/sources.list :

Затем подготовьте окружение, установив необходимые зависимости:

Скачайте источники своего ядра:

Поскольку оригинальный патч Open-WRT нельзя применить «как есть» к дереву ядра Ubuntu из-за тонких различий в системе сборки, пришлось его исправить:

Всё готово для сборки:

Если проблем нет, то теперь можно установить исправленное ядро поверх предыдущего:

Перезагрузка, и вуаля:

Во избежание автоматического обновления может потребоваться закрепить версию ядра Linux.

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

Новый файл конфигурации hostapd будет довольно простым: hw_mode=a включает диапазоны 5 ГГц, а ieee80211ac=1 включает 802.11ac (VHT). Опция ieee80211d=1 с указанием country_code=US определяет нормативный домен, под которым мы работаем.

Чтобы максимально использовать пропускную способность, ht_capab и vht_capab должны отражать возможности оборудования:

С учётом этого вот окончательный hostapd.conf :

Документацию hostpad.conf см. в /usr/share/doc/hostapd/examples/hostapd.conf .

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

Настройка виртуального SSID с помощью hostapd

Независимо от того, хотите вы настроить гостевую точку доступа или выделенную беспроводную сеть для своего VPN, в какой-то момент придётся настроить виртуальный SSID.

Диаграмма

Исходя из текущей конфигурации, вот обновлённая диаграмма, что мы хотим получить. Предполагая, что wlp5s0 является физическим беспроводным интерфейсом, виртуальный SSID будет работать на виртуальном интерфейсе wlan0 , используя собственную подсеть 192.168.2.0/24 :

Подготовка

Прежде всего проверим, что ваше беспроводное устройство поддерживает несколько SSID:

Как видим, чипсет поддерживает до восьми точек доступа на одном канале. Это означает, что можно настроить до семи виртуальных SSID, и все они будут работать на одном канале.

Сетевой интерфейс

Согласно документации в hostapd.conf, существует строгая связь между MAC-адресом физического интерфейса и BSSID виртуальных интерфейсов:

hostapd will generate a BSSID mask based on the BSSIDs that are configured. hostapd will verify that dev_addr & MASK == dev_addr. If this is not the case, the MAC address of the radio must be changed before starting hostapd. If a BSSID is configured for every secondary BSS, this limitation is not applied at hostapd and other masks may be used if the driver supports them (e.g., swap the locally administered bit)

BSSIDs are assigned in order to each BSS, unless an explicit BSSID is specified using the ‘bssid’ parameter.

If an explicit BSSID is specified, it must be chosen such that it:
— results in a valid MASK that covers it and the dev_addr
— is not the same as the MAC address of the radio
— is not the same as any other explicitly specified BSSID

Чтобы выполнить эти требования и позволить hostapd автоматически назначать BSSID виртуального интерфейса(ов), обновим MAC-адрес физического беспроводного интерфейса, обнулив четыре наименее значимых бита. Этого хватит на 15 виртуальных BSSID — намного больше, чем необходимо.

Сначала определим текущий MAC-адрес:

Если очистить четыре последних бита и установить бит U/L, получится MAC-адрес 46:c3:06:00:03:e0 .

Теперь обновим конфигурацию, чтобы установить правильный MAC-адрес прямо перед загрузкой интерфейса, а также объявить виртуальный беспроводной интерфейс в соответствии с нашей диаграммой:

Отлично. Я использую dnsmasq как DHCP-сервер — не стесняйтесь заменить на то, что вам нравится. Обратите внимание, что для корректной работы виртуального интерфейса требуется allow-hotplug .

Конфигурация точки доступа

Теперь самое простое: добавим виртуальный SSID к текущей конфигурации hostapd . Просто добавьте это в конец существующего файла hostapd.conf :

В приведённом примере я применил шифрование WPA2, но тут доступно большинство опций радиоинтерфейса (например, channel ). Можно добавить больше виртуальных SSID, просто дописав строчки в конфигурационном файле, согласно объявленным и правильно настроенным виртуальным интерфейсам.

Теперь перезагрузимся — и видим свой новый SSID вместе с новым беспроводным интерфейсом (обратите внимание на MAC-адрес):

Источник

Оцените статью
Своими руками