Skip to content
KitploitKITPLOIT
ИнструментыЭксплойтыБлог
Log in
Отправить
ИнструментыЭксплойтыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

ЛентыКонтактыКонфиденциальность© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
opensoho — Легковесная платформа управления устройствами OpenWRT для небольших сетей. Централизованная настройка, мониторинг и управление WiFi для 2–20 устройств с простым развертыванием и совместимостью с OpenWISP. | Kitploit
Инструменты/GitHubGitHub/rubenbe/opensoho
Безопасность облачной инфраструктурыБезопасность IoTАудит конфигурацииСетевая безопасностьБезопасность беспроводных сетейDevSecOps
GitHubrubenbe/opensoho

opensoho

Легковесная платформа управления устройствами OpenWRT для небольших сетей. Централизованная настройка, мониторинг и управление WiFi для 2–20 устройств с простым развертыванием и совместимостью с OpenWISP.

Репозиторий
1691116615 ч 28 мин назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться
*Внимание: это ранний выпуск, пожалуйста, прочитайте примечания к выпуску ВСЕХ версий до текущей*

# <img src="https://raw.githubusercontent.com/rubenbe/opensoho/HEAD/logo.svg" alt="OpenSOHO logo" width="40" /> OpenSOHO

Спасибо, что рассматриваете возможность поддержать проект!

<a href="https://www.buymeacoffee.com/rubenbe" target="_blank"><img src="https://assets.kitploit.com/production/public/readmes/9350/485b634752d0d832ed936de61544bf16e5e54dc05146ccca080333c15097d455.png" alt="Buy Me A Coffee" height="41" width="174"></a>

[Документация](https://opensoho.github.io/docs)

OpenSOHO создан для управления небольшим количеством сетевых устройств на базе OpenWRT. Отсюда и название SOHO — от сетей Small Office Home Office (SOHO).

* От 2 до 20 устройств (жёсткого ограничения нет)
* Без мультитенантности
* Совместим с openwisp-config и openwisp-monitoring.
* Прост в развёртывании

Он вдохновлён OpenWISP, но нацелен на сети, которые слишком малы для обслуживания с помощью OpenWISP.
Как отметили в OpenWisp:
> Однако OpenWISP может не подойти для очень маленьких сетей (менее 20 устройств), организаций без ИТ-экспертизы или предприятий, ищущих open-source альтернативы исключительно ради экономии средств.

<p align="center">
  <a href="https://raw.githubusercontent.com/opensoho/assets/074a4c5c353fcbb295e2da84fb3490869c6c4de0/devices.png" target="_blank">
    <img src="https://assets.kitploit.com/production/public/readmes/9350/5d363839ee3d28ed044c4de8249f4944be3e18ef8cb2e13d7b1c1a6a487fa1ce.png" width="80%" />
  </a>
</p>

Протестированы следующие версии
* OpenWRT 24.10.x DSA (устаревшая поддержка)
* OpenWRT 25.12.x DSA

# Начало работы с OpenSOHO
## Обзор
Настройка OpenSOHO требует нескольких простых шагов, каждый из которых подробно описан в разделах ниже:

* Установите OpenSOHO на свой сервер.
* Установите пакеты OpenWisp на свои устройства OpenWRT.
* Настройте OpenWisp на каждом из своих устройств OpenWRT для подключения к OpenSOHO.
* Начните настройку в OpenSOHO!

## Установка OpenSOHO

* Скачайте последний выпуск OpenSOHO (или используйте docker-контейнер)

  [Выпуски](https://github.com/rubenbe/opensoho/releases)
  
  [Установка с Docker, Podman или Kubernetes](https://opensoho.github.io/docs/containers/)

* Запустите OpenSOHO

Сначала выберите общий секрет, который позволит устройствам OpenWRT (использующим openwisp-config) регистрироваться в OpenSOHO.

Для оптимальной безопасности выберите длинную случайную строку.

Она должна совпадать с тем, что вы настроите в LuCI на следующих шагах.

```sh
OPENSOHO_SHARED_SECRET=randompassphrase ./opensoho serve --http 0.0.0.0:8090
```

Теперь OpenSOHO выводит в командной строке URL, который позволяет создать учётную запись администратора.
Просто откройте этот URL в браузере.

Либо создайте учётную запись администратора через командную строку:
```sh
./opensoho superuser upsert EMAIL PASS
```

## Настройка (принятие) устройств OpenWRT

### Установка пакетов OpenWISP

```sh
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, необходим полный пакет wpad-mbedtls.

На OpenWRT 24.10
```sh
opkg remove wpad-basic-mbedtls && \
opkg install wpad-mbedtls && \
service wpad restart
```

В OpenWRT 25.12+
```sh
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 всё ещё находится в разработке)

### Настройка OpenWISP в LuCI:

* Укажите только `Server URL` и `Shared secret`.
  * *НЕ* добавляйте косую черту в конце `Server URL`. Пример URL: `http://192.168.1.1:8090`
  * Общий секрет — это значение, которое вы выбрали ранее (`OPENSOHO_SHARED_SECRET`).
* При желании уменьшите `Update Interval` до 30 секунд для более быстрого обновления. (OpenSOHO сделает это за вас, если вы не сделаете этого сами)
* OpenSOHO также включает мониторинг и уменьшает интервал мониторинга до 15 секунд для более быстрого обновления состояния сети.

Настоятельно рекомендуется включить мониторинг, поскольку OpenSOHO определяет множество текущих настроек OpenWRT и заполняет их для удобной настройки.

## Настройка OpenSOHO

* Дождитесь, пока устройство(а) OpenWrt самостоятельно зарегистрируются с использованием общего секрета.
* Установите флаг `Enabled` устройства в значение true.
* Установите `numradios` в правильное значение. Например, для устройства с 2.4 + 5 ГГц это значение будет равно 2.
* Настройте точку доступа Wifi (SSID+KEY). Эта процедура позволяет OpenSOHO правильно определить конфигурацию радио при регистрации устройства.
* Прикрепите настроенную точку доступа Wifi к устройству, чтобы оно было настроено.
* В настоящее время каждая сеть автоматически настраивается на всех радио (настраивается с помощью `numradios`).
* При желании светодиоды также можно включать или выключать (пока только статическая конфигурация).
* Настройка радиочастот теперь поддерживается. OpenSOHO один раз считывает текущую конфигурацию радио и делает её доступной в конфигурации радио. Может потребоваться минута или две, прежде чем конфигурация радио появится (этапы настройки и мониторинга требуют некоторого времени для завершения).

## Панель управления

OpenSOHO поставляется с базовой панелью управления. Доступ к ней осуществляется через кнопку на крайней левой боковой панели, прямо под логотипом OpenSOHO.

<p align="center">
  <a href="https://raw.githubusercontent.com/opensoho/assets/636c6966e5bb33f6ef1fc0a7b0188307ad6865b6/dashboard.png" target="_blank">
    <img src="https://assets.kitploit.com/production/public/readmes/9350/3b8f95d6bd1a3860d0aac83aa3e54eccb115aef24273ab9ba6d5d9a7591304e1.png" width="70%" />
  </a>
</p>

Обратите внимание, что это не задумано как замена более продвинутым инструментам построения графиков; она остаётся и будет оставаться базовой намеренно.

## Настройка

Теперь OpenSoho доступен по адресу http://ipaddress:8090/_/

Существует несколько коллекций конфигурации:

### Клиенты

Это клиенты, подключённые к Wifi. Эта таблица доступна только для чтения, за исключением псевдонима.
Её можно использовать, чтобы дать устройствам удобочитаемые имена. Это работает правильно только тогда, когда клиент не рандомизирует свой mac-адрес.

#### Подключённые клиенты
Содержит список клиентов, которые в данный момент подключены к вашему wifi. Чтобы отобразить IP-адрес устройства, OpenSOHO нужен доступ к вашим арендам DHCP. Для этого на устройстве, содержащем DHCP-сервер, должен быть запущен демон мониторинга openwisp. Устройства со статическим IP не получат IP. Это известное ограничение по состоянию на 0.12.0.

### Устройства

Это подключённые устройства.
* Используйте enable/disable, чтобы отключить обновления конфигурации. Это полезно, чтобы избежать обновления всех устройств сразу. Мониторинг остаётся активным.
* Health status — поле только для чтения. `healthy` означает, что устройство обменивалось данными в течение последней минуты. Если нет, статус здоровья становится `unhealthy`, и, возможно, что-то не так с устройством или его соединением.
* Leds позволяет выбирать конфигурации светодиодов
* Numradios позволяет задать количество радио на устройстве. Изначально это не отправляется OpenWisp, поэтому это должен задать пользователь.
* Wifis позволяет выбрать SSID для применения на этом устройстве.

### Резервирования DHCP

Создайте резервирование с именем хоста, MAC-адресом, IPv4-адресом и одним или
несколькими DHCP-серверами. OpenSOHO добавляет одинаковый именованный раздел `config host` в
`/etc/config/dhcp` на каждом выбранном сервере. Очистите выбор DHCP-сервера, чтобы
отключить резервирование без его удаления. Имена, MAC-адреса и IP-адреса
уникальны в списке резервирований.

### Светодиоды

* Базовая настройка светодиодов (на данный момент скорее POC)

### Радиомодули

* Позволяет задать частоту для каждого радиомодуля.
* Диапазон изменять не следует, так как это позволяет OpenSOHO проверять конфигурацию частоты. Это необходимо из-за ограничений в PocketBase.

### Wi-Fi

* Позволяет настроить различные SSID. Выбор режимов шифрования в настоящее время ограничен. WEP или Open не поддерживаются по замыслу.

## Мониторинг

### Мониторинг устройств

Проверьте, является ли состояние устройства `healthy`.

### Подключённые клиенты

Этот вид показывает всех Wi-Fi клиентов, которые всё ещё подключены в течение последних 30 секунд.

### Интеграция с Home Assistant

Мониторинг OpenSOHO можно интегрировать с Home Assistant. [(Подробнее)](https://opensoho.github.io/docs/home-assistant/)
Этот REST API предназначен для использования с Home Assistant, но также может быть интегрирован с другими инструментами.

## Устранение неполадок

### Повторная регистрация устройства

Когда изменение `Server URL` OpenWISP в LuCI, похоже, не приводит к правильной регистрации на новом контроллере.
Чтобы исправить это:
```sh
uci delete openwisp.http.uuid
uci delete openwisp.http.key
/etc/init.d/openwisp-config restart
```

### Первый SSID не включается

Похоже, в OpenWRT есть проблема: первый настроенный SSID на устройстве Wi-Fi не включается автоматически.
Обходной путь: нажмите кнопку включения в LuCI.

# Разработчикам

* Установите зависимости

```sh
go mod tidy
```

* Запустите OpenSOHO

Общий секрет используется openwisp-config для регистрации. Выберите длинную случайную строку для оптимальной безопасности.

Запуск модульных тестов:
```sh
go test -cover -v -coverprofile=coverage.out
go tool cover -html=coverage.out
```

## Область применения

### Возможности

Некоторые возможности OpenWISP (в настоящее время) считаются выходящими за рамки OpenSOHO
* Обновления прошивки: OpenWRT не требует частого обновления; используйте функцию Attended sysupgrade на каждом устройстве вручную.
* Мультиарендность
* Шаблоны: OpenWISP обладает мощным и универсальным механизмом шаблонов, который заменён более узким набором возможностей для упрощения процесса настройки.

### Разработка
Цель — максимально использовать возможности pocketbase. Небольшие модификации допустимы, поскольку бэкенд pocketbase в настоящее время не имеет системы плагинов. Но создание форка pocketbase не является целью, поэтому слияние изменений из upstream остаётся простым.


### Выпуск версий
```sh
GITHUB_TOKEN=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa goreleaser release
```
Скачать инструмент