docs: add preflight and SSH troubleshooting

Document VPS/router preparation, optional SSH port usage, post-update diagnostics, and common SSH/sshpass failure cases with fixes.

Made-with: Cursor
This commit is contained in:
Андрей Бобырев
2026-04-29 16:27:43 +03:00
parent 6761df00ca
commit 22cc8035d4

107
README.md
View File

@@ -49,6 +49,57 @@ HydraRoute Neo — плагин для Keenetic, который маршрути
Все команды выполняются на **VPS**. Все команды выполняются на **VPS**.
---
## 0. Подготовка перед установкой (VPS и роутер)
### 0.1 VPS (Ubuntu/Debian)
Панель работает как systemdсервис и по кнопке «📡 Обновить…» подключается по SSH к роутерам.
Минимальный чек‑лист:
- **Открыть порт панели** (если у тебя firewall):
```bash
sudo ufw allow 8000/tcp
```
- **Проверить что сервис будет слушать 8000** (занято/не занято):
```bash
ss -tlnp | grep :8000 || true
```
- **Для SSHопераций нужен `sshpass`** (установщик ставит, но если ставишь руками):
```bash
sudo apt-get update
sudo apt-get install -y sshpass
```
Если планируешь **обратный туннель** — в `.env` обязательно задать:
- `VPS_SSH_HOST` (публичный IP/домен VPS, который доступен роутеру)
- `VPS_SSH_PORT` (обычно 22)
- `VPS_SSH_USER` (обычно root)
### 0.2 Роутер Keenetic (перед добавлением в панель)
Панель не “магическая” — она **заходит по SSH** на роутер и кладёт файлы в `/opt/etc/HydraRoute/…`.
Чек‑лист:
- **HydraRoute Neo установлен**.
- **Entware установлен** и работает:
```sh
opkg update
```
- **SSH включён**, логин обычно `root`, пароль задан (по умолчанию часто `keenetic`).
- Если у роутера **нестандартный SSHпорт** — в панели во вкладке «Роутеры» укажи **`SSH порт (опц.)`**.
- Если у провайдера **серый IP** и VPS не может достучаться до роутера по WAN — используй раздел **«3. Обратный туннель»**.
### Шаг 1 — установка ### Шаг 1 — установка
```bash ```bash
@@ -101,6 +152,13 @@ http://IP_ТВОЕГО_VPS:8000
cd /opt/domen-hydra && git pull && sudo systemctl restart hydra-manager cd /opt/domen-hydra && git pull && sudo systemctl restart hydra-manager
``` ```
### Быстрая диагностика после обновления
```bash
sudo systemctl status hydra-manager --no-pager -l
sudo journalctl -u hydra-manager -n 80 --no-pager
```
### Удаление ### Удаление
```bash ```bash
@@ -143,6 +201,10 @@ geoip:ru
- **«📡 Обновить все роутеры»** — отправляет конфиг на все роутеры и делает `neo restart` - **«📡 Обновить все роутеры»** — отправляет конфиг на все роутеры и делает `neo restart`
- **«📡 На роутер»** на карточке роутера — только на один конкретный - **«📡 На роутер»** на карточке роутера — только на один конкретный
### Про SSHпорт
По умолчанию SSH порт **22**. Если у тебя нестандартный порт — во вкладке **«Роутеры»** заполни **«SSH порт (опц.)»**.
### Импорт с роутера ### Импорт с роутера
Вкладка «Роутеры» → **«⬇ С роутера»** — файлы подтянутся автоматически. Вкладка «Роутеры» → **«⬇ С роутера»** — файлы подтянутся автоматически.
@@ -316,6 +378,37 @@ fuser -k 20100/tcp
## 6. Частые ошибки и решения ## 6. Частые ошибки и решения
### SSH: `Connection refused` / `timeout` / «нет SSH»
**Причины (самые частые):**
- SSH на роутере не включён
- Неверный **IP/hostname** (в поле IP должен быть адрес **для SSH**, не веб‑ссылка)
- Нестандартный SSHпорт — не указан **«SSH порт (опц.)»**
- Firewall на роутере/провайдере режет входящий SSH по WAN
- Серый IP → VPS физически не может достучаться (нужен **туннель**)
**Что делать:**
- Сначала нажми **«🔌 Тест»** у роутера в панели — он покажет понятный вывод.
- Если SSH не на 22 — заполни порт в карточке роутера и повтори.
- Если WAN недоступен — настраивай **«⇄ Тоннель»**.
---
### SSH: `Permission denied` / «неверный пароль»
**Причина:** неверный пароль/логин (или роутер не пускает root).
**Решение:**
- Уточни, что реально работает руками:
```bash
ssh root@ROUTER_HOST
```
- Обнови поля `user/password` у роутера в панели.
---
### Туннель: `ssh exited with error status 255; restarting ssh` ### Туннель: `ssh exited with error status 255; restarting ssh`
**Причина:** autossh не может подключиться к VPS. Обычно это происходит сразу после переустановки туннеля — старый autossh запущен со старыми параметрами. **Причина:** autossh не может подключиться к VPS. Обычно это происходит сразу после переустановки туннеля — старый autossh запущен со старыми параметрами.
@@ -415,6 +508,20 @@ sudo ufw allow 8000/tcp
--- ---
### VPS: `sshpass not installed`
**Причина:** на VPS не установлен `sshpass`, а панель использует его для SSH.
**Решение:**
```bash
sudo apt-get update
sudo apt-get install -y sshpass
sudo systemctl restart hydra-manager
```
---
## 7. Полезное ## 7. Полезное
**SSH на роутер:** **SSH на роутер:**