diff --git a/README.md b/README.md index 964f421..1e746fc 100644 --- a/README.md +++ b/README.md @@ -1,13 +1,43 @@ # 🌐 HydraRoute Manager -Веб-интерфейс для централизованного управления конфигурацией **HydraRoute Neo** на роутерах Keenetic. +Веб-интерфейс для централизованного управления конфигурацией **HydraRoute Neo** на роутерах Keenetic. Без мониторинга, без Telegram — только домены и IP. + +--- + +## Скриншоты интерфейса + +### Вкладка «Конфигурация» — группы доменов и IP + +Карточки с переключателями вкл/выкл, политикой маршрутизации (HydraRoute, RU и т.д.), быстрым редактированием и кнопкой **«Обновить все роутеры»**. + +![Конфигурация доменов HydraRoute](docs/screenshot-domains.png) + +### Вкладка «Импорт файлов» + +Два текстовых поля для вставки содержимого `domain.conf` и `ip.list` с роутера, кнопки **«Сохранить на сервер»** и **«Сохранить + обновить все роутеры»**, ниже — экспорт текущей конфигурации для копирования. + +### Вкладка «Роутеры» + +Список роутеров с IP и SSH-паролем для массовой отправки конфига через `sshpass` + `curl` на каждый роутер. + +### Вкладка «Настройки» + +Смена пароля администратора веб-интерфейса (запись в `server/.env`). + +### Экран входа + +При открытии сайта запрашивается пароль из `ADMIN_PASSWORD` в `.env`. + +--- + +## Возможности - Управление группами доменов и IP через браузер - Включение / отключение групп одним переключателем - Импорт `domain.conf` и `ip.list` с роутера -- Отправка конфига на все роутеры одной кнопкой +- Отправка конфига на все роутеры одной кнопкой (SSH + `curl` с сервера) - Авторизация по паролю -- Скачивание файлов для роутера по HTTP +- Прямые ссылки для роутера: `/hydra/domain.conf`, `/hydra/ip.list`, `/hydra/version` --- @@ -21,7 +51,7 @@ nano server/.env # задать ADMIN_PASSWORD systemctl restart hydra-manager ``` -Интерфейс откроется на `http://IP:8000` +Интерфейс: `http://IP:8000` --- @@ -32,27 +62,29 @@ export SERVER_URL="http://IP_СЕРВЕРА:8000" \ && curl -fsSL https://raw.githubusercontent.com/andrey271192/domen_hydra/main/install_router.sh | sh ``` -Роутер будет каждый день в 02:00 скачивать актуальный конфиг с сервера. +Роутер будет каждый день в **02:00** скачивать актуальный конфиг с сервера. Ручное обновление: + ```bash sh /opt/bin/hydra_update.sh ``` --- -## Как использовать +## Как пользоваться -1. Открой `http://IP:8000` → введи пароль -2. **Импорт**: вставь `domain.conf` и `ip.list` с роутера → "Сохранить на сервер" -3. Редактируй группы доменов и IP прямо в браузере -4. Нажми **"📡 Обновить все роутеры"** — конфиг применится через SSH +1. Открой `http://IP:8000` → введи пароль из `.env` +2. **Импорт**: вставь `domain.conf` и `ip.list` с роутера → «Сохранить на сервер» +3. Редактируй группы на вкладке «Конфигурация» +4. Нажми **«Обновить все роутеры»** — файлы запишутся в `/opt/etc/HydraRoute/` и выполнится `neo restart` --- ## Формат файлов **domain.conf:** + ``` ##youtube youtube.com,youtu.be,googlevideo.com/HydraRoute @@ -62,6 +94,7 @@ avito.ru,ozon.ru/RU ``` **ip.list:** + ``` ##geoip:ru /RU @@ -84,7 +117,11 @@ server/ templates/ index.html — веб-интерфейс +docs/ + screenshot-domains.png — скриншот вкладки «Конфигурация» + install_router.sh — установка на роутер +hydra_update.sh — скачивание конфига с сервера ``` --- @@ -94,3 +131,9 @@ install_router.sh — установка на роутер ```bash cd /opt/domen-hydra && git pull && systemctl restart hydra-manager ``` + +--- + +## Связь с Keenetic Unified + +Логика парсинга `domain.conf` / `ip.list` и веб-интерфейс доменов взяты из проекта [keenetic-unified](https://github.com/andrey271192/keenetic-unified) в урезанном виде: только управление HydraRoute, без дашборда, watchdog и Telegram. diff --git a/docs/screenshot-domains.png b/docs/screenshot-domains.png new file mode 100644 index 0000000..2de9efb Binary files /dev/null and b/docs/screenshot-domains.png differ