UBNT. Решение «Not enough free memory to upload Firmware image»

Однажды я решил обновить прошивку на Nanostation M2 и заметил следующую ошибку:

Читать далее «UBNT. Решение «Not enough free memory to upload Firmware image»»

Установка UNMS (Ubiquiti Network Management System)

UNMS (Ubiquiti Network Management System) — система управления устройствами EdgeMAX®, EdgeSwitch®, airMAX®, UFiber, включающая обновление программного обеспечения, создание резервных копий конфигурации, графики производительности в реальном времени, уведомления, карты расположения устройств и т.д.

На примере выполню установку UNMS в Ubuntu Server 18.04 64bit.

Сначала установим необходимые компоненты:

sudo apt-get update
sudo apt-get install curl sudo bash netcat

Скачаем во временную директорию скрипт установки с официального сайта:

curl -fsSL https://unms.com/install > /tmp/unms_inst.sh

Запустим скачанный скрипт:

sudo bash /tmp/unms_inst.sh

Если необходимо во время установки изменить web порты:

sudo bash /tmp/unms_inst.sh --http-port 8080 --https-port 8443

По умолчанию UNMS использует Let’s Encrypt при создания SSL сертификатов для вашего домена и сохраняет их в /home/unms/data/cert/live.
Если вы хотите использовать свои SSL сертификаты, то при установке например укажем (UNMS должен иметь права чтения в ssl-cert-dir):

sudo bash /tmp/unms_inst.sh --http-port 8080 --https-port 8443 --ssl-cert-dir /etc/certificates --ssl-cert fullchain.pem --ssl-cert-key privkey.pem

UBNT с прошивкой 6.0 перестают работать

Когда-то лечил Ubiquiti Networks airMAX® M Series устройства с прошивками 5+ от эксплоита и обновлял прошивку на последнюю, на тот момент это была версия XM 6.0 и XW 6.0.
Смотрите мою статью — Удаление эксплоита с Ubiquiti устройств

В прошивке 6.0 была устранена уязвимость через которую эксплоит получал доступ, НО появились другие баги.

Буквально через пару недель я заметил что на некоторых мостах в режиме Access Point (AP) нет подключенных станций, со стороны станции пропадало электропитание, станция загрузилась и подключилась к AP, но в интерфейсе AP не отображалось подключенных станций и трафик не проходил, это как раз и есть баг.

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

К счастью эту проблему позже устранили в новых прошивках, точно не смотрел в какой версии, но на устройствах с прошивкой 6.1+ её уже не наблюдалось.

Мониторинг количества клиентов секторной Ubiquiti по SSH из Zabbix

На тесте приведу пример получения количества клиентов подключенных к обычной секторной антенне Ubiquiti AirMax Rocket M5.
Получать данные будем через SSH.

Для проверки один раз подключимся к устройству (первый раз при подключении наберем yes и нажмем enter):

sudo -u zabbix ssh -p 22 admin@192.168.0.55

Теперь в Zabbix добавим элемент данных к шаблону или хосту, например с именем «Template Ubiquiti Rocket M5 Sector»:

Имя: любое
Тип: SSH агент
Ключ: ssh.run[clients,,22,utf8]
Метод аутентификации: Пароль
Имя пользователя: ИМЯ
Пароль: ПАРОЛЬ
Выполняемый скрипт: команда выполняемая на устройстве (смотрите ниже)

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

wstalist |grep "mac" |wc -l

Соответственно создадим график элементу данных, а также триггер:

Имя: На секторной антенне  {HOST.NAME} > 40 клиентов
Выражение: {Template Ubiquiti Rocket M5 Sector:ssh.run[clients,,22,utff8].last(#1)}>40

Смотрите также:
Настройка SSH проверок в Zabbix

Удаление эксплоита с Ubiquiti устройств

Заметил однажды распространение вируса/эксплоита в сети с устройствами Ubiquiti. Эксплоит используя уязвимость в старых версиях прошивок копировал себя на другие устройства и с них же атаковал следующие.

Читать далее «Удаление эксплоита с Ubiquiti устройств»

Ограничение доступа к Ubiquiti по IP используя Firewall

Для теста возьму секторную антенну airMAX Rocket M5 в режиме бриджа и клиентскую airMAX NanoBeam M5 в режиме роутера.

Ограничим доступ сначала на клиентской.
Предположим что она подключена к секторной и имеет IP адрес 192.168.110.40 который смотрит в интернет (получен по DHCP).
IP администратора который должен иметь доступ к ней дистанционно — 10.10.10.5, остальным его необходимо заблокировать.

И так, зайдем в web интерфейс airMAX NanoBeam M5, откроем вкладку «NETWORK», напротив «Configuration Mode:» выберем «Advanced», после этого появится больше настроек.
Внизу где «Firewall» поставим галочку на «Enable».

Чуть ниже добавим правило, указав:
Target: DROP
Interface: WLAN0
IP Type: TCP
Source: 10.10.10.5 (IP с какого разрешено подключаться, а также обязательно поставим галочку перед ним под знаком восклицания)
Port: оставим пустым
Destination: 192.168.110.40 (IP антенны который смотрит наружу)
Port: 22 (это порт SSH, аналогично создаются другие правила для ограничения доступа к HTTP порт — TCP 80, HTTPS — TCP 443, Telnet — TCP 23, SNMP — UDP 161, Discovery — UDP 10001)

Как видим это правило блокирует все TCP соединения к порту 22 интерфейса WLAN0 на IP 192.168.110.40, а поставленная галочка на ! перед Source: 10.10.10.5 означает что блокируется все кроме этого IP.

Жмем «Add», потом «Change» внизу и вверху «Apply» чтобы применить изменения, после этого антенна перезапустится.

Чтобы ограничить доступ на секторной антенне которая настроена бриджом, добавим эти же правила, только где Interface: укажем ANY (ВСЕ).

Готово.

После добавления правил и подключения к устройству по SSH в конфигурации можно увидеть следующее:

ebtables.status=enabled
ebtables.1.status=enabled
ebtables.1.cmd=-A FIREWALL -p 0x0800 --ip-protocol 6 --ip-src ! 10.10.10.5/32 --ip-dst 192.168.110.40/32 --ip-dport 22 -j DROP
ebtables.1.comment=
ebtables.2.status=enabled
ebtables.2.cmd=-A FIREWALL -p 0x0800 --ip-protocol 6 --ip-src ! 10.10.10.5/32 --ip-dst 192.168.110.40/32 --ip-dport 80 -j DROP
ebtables.2.comment=
ebtables.3.status=enabled
ebtables.3.cmd=-A FIREWALL -p 0x0800 --ip-protocol 6 --ip-src ! 10.10.10.5/32 --ip-dst 192.168.110.40/32 --ip-dport 443 -j DROP
ebtables.3.comment=
ebtables.4.status=enabled
ebtables.4.cmd=-A FIREWALL -p 0x0800 --ip-protocol 17 --ip-src ! 10.10.10.5/32 --ip-dst 192.168.110.40/32 --ip-dport 161 -j DROP
ebtables.4.comment=

Смотрите также мою статью:
Управление оборудованием Ubiquiti по SSH

Настройка ACL на Ubiquiti устройствах

Допустим мы хотим настроить ACL (список контроля доступа) на точке доступа Ubiquiti.

В веб-интерфейсе устройства откроем вкладку «Wireless«.

В самом низу напротив «MAC ACL:» поставим галочку на «Enable«.

И выберем «Policy:«, на «Allow» (означает что в списке будут устройства которым разрешено подключаться, всем кто не прописан — нельзя) либо «Deny» (в списке устройства которым нельзя подключаться, а всем остальным можно).

Нажав на кнопку «ACL…«, в открывшемся окне чтобы добавить устройство, в первом поле укажем его MAC, во втором любое желаемое описание и нажмем «Add«, потом «Save«.
И последний этап — в самом верху жмем кнопку «Apply«, после чего изменения сохранятся и применяться без потери связи с устройством (без перезагрузки).

Ограничение скорости на Ubiquiti устройствах

Допустим нам необходимо ограничить скорость на клиентской антенне.
Соответственно она в режиме station и подключается к точке доступа.

Для ограничения зайдем в веб-интерфейс управления антенной, откроем вкладку Network, изменим Configuration Mode: на Advanced, поле чего появится больше параметров которые можно настроить.

В самом низу нажмем на Traffic Shaping, поставим галочку на Enable и укажем для WLAN0 или LAN0 желаемый лимит скорости.
Например нужно ограничить скорость на прием до 5Мб/с и отправку до 512Кб/с, для надежности укажем лимит для обеих сетевых интерфейсов, где Ingress укажем для WLAN0 5120, а для LAN0 512, соответственно для Egress наоборот, WLAN0 — 512, а LAN0 — 5120, Burst оставим везде без изменений, то есть 0.

Чтобы применить изменения жмем внизу Change и потом вверху Apply, после чего конфигурация антенны перезагрузится.

На точке доступа увы нельзя ограничивать скорость для каждого клиента, если проделать указанные выше настройки (в обратном порядке), то ограничится общая скорость для всех клиентов. В этом случае можно резать скорость например биллингом, включив во вкладке Advanced функцию Client Isolation чтобы клиенты не видели друг друга по сети и не обменивались трафиком.

Все.

Проброс портов на Ubiquiti (UBNT) устройствах

Так как настройки почти одинаковы на airMAX® M Series Ubiquiti устройствах, то эта инструкция подойдет к Rocket, NanoBridge, LiteBeam, NanoBeam, airGrid и т.д.

Читать далее «Проброс портов на Ubiquiti (UBNT) устройствах»