
Легковесная платформа управления устройствами OpenWRT для небольших сетей. Централизованная настройка, мониторинг и управление WiFi для 2–20 устройств с простым развертыванием и совместимостью с OpenWISP.
Предупреждение: это ранний релиз, пожалуйста, прочитайте заметки к релизу ВСЕХ выпусков до настоящего момента
OpenSOHO создан для управления небольшим количеством сетевых устройств на базе OpenWRT. Отсюда название SOHO от Small Office Home Office (SOHO) Networks.
Вдохновлен OpenWISP, но нацелен на сети, которые слишком малы для обслуживания с помощью OpenWISP. Как упоминается в OpenWISP:
Однако OpenWISP может не подойти для очень маленьких сетей (менее 20 устройств), организаций, не имеющих ИТ-экспертизы, или предприятий, ищущих открытые альтернативы исключительно для экономии средств.
Следующие версии протестированы:
Настройка OpenSOHO требует нескольких простых шагов, каждый из которых описан в разделах ниже:
Загрузите последний релиз OpenSOHO (или используйте docker-контейнер)
Запустите OpenSOHO
Сначала выберите общий секрет, который позволит устройствам OpenWRT (использующим openwisp-config) зарегистрироваться в OpenSOHO.
Выберите длинную случайную строку для оптимальной безопасности.
Он должен совпадать с тем, что вы настроите в LuCI на следующих шагах.
OPENSOHO_SHARED_SECRET=randompassphrase ./opensoho serve --http 0.0.0.0:8090
Теперь OpenSOHO выводит URL в командной строке, который позволяет создать учетную запись администратора. Просто откройте URL в браузере.
Альтернативно, создайте учетную запись администратора через командную строку:
./opensoho superuser upsert EMAIL PASS
opkg install openwisp-config openwisp-monitoring luci-app-openwisp # OpenWRT 24.10
apk add openwisp-config openwisp-monitoring luci-app-openwisp # OpenWRT 25.12+
Если вы хотите использовать 802.11v client steering, необходим полный wpad-mbedtls.
На OpenWRT 24.10
opkg remove wpad-basic-mbedtls && \
opkg install wpad-mbedtls && \
service wpad restart
На OpenWRT 25.12+
apk del wpad-basic-mbedtls && \
apk add wpad-mbedtls && \
service wpad restart
После установки wpad-mbedtls сначала попробуйте service restart wpad, иначе может потребоваться перезагрузка для переключения на новый бинарный файл wpad. В противном случае вы можете получить ошибку вида daemon.notice netifd: radio1 (28210): WARNING (wireless_add_process): executable path /usr/sbin/wpad does not match process 1842 path (/usr/sbin/wpad (deleted)).
(Обратите внимание, что 802.11v client steering все еще в разработке)
Server URL и Shared secret.
Server URL. Пример URL: http://192.168.1.1:8090OPENSOHO_SHARED_SECRET).Update Interval до 30 секунд для более быстрых обновлений. (OpenSOHO сделает это за вас, если вы не сделаете)Настоятельно рекомендуется включить мониторинг, так как OpenSOHO выводит многие текущие настройки OpenWRT и заполняет их для удобной настройки.
Enabled устройства в true.numradios на правильное значение. Например, для устройства 2,4 + 5 ГГц это значение будет 2.numradios).OpenSOHO поставляется с базовой панелью мониторинга. Она доступна через кнопку в левой боковой панели, прямо под логотипом OpenSOHO.
Обратите внимание, что это не предназначено для замены более продвинутых инструментов построения графиков, она была и будет оставаться намеренно базовой.
Теперь OpenSOHO доступен по адресу http://ipaddress:8090/_/
Существует несколько коллекций конфигурации:
Это клиенты, подключенные к Wi-Fi. Эта таблица доступна только для чтения, за исключением псевдонима. Его можно использовать для присвоения устройствам понятного имени. Это работает только в том случае, если клиент не рандомизирует свой mac-адрес.
Содержит список клиентов, которые в данный момент подключены к вашей сети Wi-Fi. Чтобы показать IP-адрес устройства, OpenSOHO нужен доступ к вашим DHCP-арендам. Для этого необходимо, чтобы демон мониторинга openwisp был запущен на устройстве, содержащем DHCP-сервер. Устройства со статическим IP не получат IP. Это известное ограничение начиная с версии 0.12.0.
Это подключенные устройства.
healthy означает, что устройство связывалось в течение последней минуты. Если нет, статус здоровья становится unhealthy, и возможно, есть проблема с устройством или его подключением.Проверьте, является ли состояние устройства healthy.
Этот вид показывает всех клиентов Wi-Fi, которые все еще подключены в течение последних 30 секунд.
Мониторинг OpenSOHO может быть интегрирован с Home Assistant. (Подробнее) Этот REST API предназначен для использования с Home Assistant, но также может быть интегрирован с другими инструментами.
Если изменение Server URL OpenWISP в LuCI не приводит к правильной регистрации на новом контроллере.
Чтобы исправить это:
uci delete openwisp.http.uuid
uci delete openwisp.http.key
/etc/init.d/openwisp-config restart
Похоже, в OpenWRT есть проблема: первый настроенный SSID на устройстве Wi-Fi не включается автоматически. Обходное решение: нажмите кнопку включения в LuCI.
go mod tidy
Общий секрет используется openwisp-config для регистрации. Выберите длинную случайную строку для оптимальной безопасности.
Запуск модульных тестов:
go test -cover -v -coverprofile=coverage.out
go tool cover -html=coverage.out
Некоторые функции OpenWISP (в настоящее время) считаются выходящими за рамки OpenSOHO:
Цель — максимально использовать pocketbase. Могут быть внесены небольшие изменения, поскольку серверная часть pocketbase в настоящее время не имеет системы плагинов. Но цель не состоит в том, чтобы создать форк pocketbase, поэтому слияние изменений из основного репозитория остается простым.
GITHUB_TOKEN=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa goreleaser release