117 lines
6.3 KiB
Markdown
117 lines
6.3 KiB
Markdown
---
|
||
date: 2026-05-20
|
||
type: project
|
||
tags: [benilux, credentials, secrets]
|
||
---
|
||
|
||
# 🔐 Credentials — Бенелюкс
|
||
|
||
> ⚠️ **КОНФИДЕНЦИАЛЬНО** — не распространять за пределы команды
|
||
|
||
## Cudy TR3000 (роутер Бенелюкса)
|
||
|
||
| Параметр | Значение |
|
||
|---|---|
|
||
| Hostname | `Benelux` (DHCP отдаёт как `Benelyuks`) |
|
||
| NetBird IP | `100.70.207.97` (`openwrt-benilux.netbird.cloud`) |
|
||
| LAN IP | `192.168.1.1` |
|
||
| WAN IP | `45.143.21.60` (Умные сети, gateway `45.143.21.254`) |
|
||
| OpenWrt | 24.10.3 |
|
||
| Логин | `root` |
|
||
| Пароль | `fyGTO1ZsPUpPKUbhUcqM` |
|
||
|
||
### SSH
|
||
**Только по ключу** (PasswordAuth отключён в dropbear с 2026-05-20). В `/etc/dropbear/authorized_keys` лежат:
|
||
- `ai@mac-20260112` — основной ключ Mac Олега (`~/.ssh/id_ed25519`)
|
||
- `claude-code@code-server` — recovery-ключ с LXC 132 code-server, на случай отказа Mac
|
||
|
||
```bash
|
||
# с Mac
|
||
ssh -i ~/.ssh/id_ed25519 root@100.70.207.97
|
||
|
||
# с code-server (recovery)
|
||
ssh root@100.70.207.97
|
||
```
|
||
|
||
### LuCI (Web UI)
|
||
Парольная авторизация остаётся (это штатный механизм OpenWrt). Доступ только из LAN и NetBird, не из интернета.
|
||
|
||
- **Через NetBird**: https://100.70.207.97 (с Mac, openclaw, code-server и т.п.)
|
||
- **Из LAN Бенелюкса**: https://192.168.1.1
|
||
- Логин: `root`, пароль: `fyGTO1ZsPUpPKUbhUcqM`
|
||
|
||
SSL-сертификат самоподписанный — браузер ругнётся, "Advanced → Proceed".
|
||
|
||
### Failsafe / локальное восстановление
|
||
Если SSH-ключи потеряются и LuCI недоступен — нужен физический доступ к роутеру: failsafe-mode через reset-кнопку при загрузке, IP `192.168.1.1` (статика на ноуте) → telnet/web.
|
||
|
||
## UniFi Cloud Key Gen2 Plus (UCK G2 Plus) — `Benelyuks`
|
||
|
||
| Параметр | Значение |
|
||
|---|---|
|
||
| Hostname | `Benelyuks` |
|
||
| LAN IP | `192.168.1.199` |
|
||
| MAC | `70:a7:41:79:ef:29` |
|
||
| Модель | UCK G2 Plus (kernel `3.18.44-ui-qcom`, Qualcomm SoC) |
|
||
| Firmware | UnifiOS v5.0.12 |
|
||
| Network app | v10.0.162 |
|
||
| Logo | "Бенелюкс" |
|
||
| Cloud | `unifi.ui.com` (требует Ubiquiti SSO) |
|
||
| Adopted devices | USW-Pro-24-PoE, USW-Lite-16-PoE, USW-Lite-8-PoE, US-8-60W, U6-Pro21, ещё 2 на 70:a7:41:* |
|
||
| SSH | `root / OL260380eg!@` (включён через UI Control Plane → 2026-06-05) |
|
||
| Web UI | https://192.168.1.199 (только из LAN или через NetBird-туннель) |
|
||
|
||
### Как зайти через NetBird (для удалённого админства)
|
||
|
||
С Mac, два терминала:
|
||
```bash
|
||
# вкладка 1 (туннель в фоне, оставить висеть)
|
||
ssh -L 8443:192.168.1.199:443 -i ~/.ssh/id_ed25519 root@100.70.207.97 -N
|
||
|
||
# браузер
|
||
open https://localhost:8443
|
||
```
|
||
|
||
Для SSH на UCK — двухступенчатый туннель (ProxyJump через busybox-Cudy ломается по MTU):
|
||
```bash
|
||
ssh -fN -L 19999:192.168.1.199:22 -i ~/.ssh/id_ed25519 root@100.70.207.97
|
||
ssh -p 19999 root@localhost # пароль OL260380eg!@
|
||
```
|
||
|
||
### Известная проблема: NTP не работает
|
||
|
||
Провайдер «Умные сети» режет исходящий UDP/123 — UCK не может синхронизировать время через NTP-pool. После любого ребута часы остаются «вчерашними», cloud `unifi.ui.com` помечает консоль Offline (mutual-TLS keepalive отвергается как stale).
|
||
|
||
**Workaround**: после каждого ребута заходить SSH и выставлять время руками:
|
||
```bash
|
||
TARGET=$(date -u "+%Y-%m-%d %H:%M:%S")
|
||
ssh -p 19999 root@localhost "date -u -s '$TARGET'; hwclock -w"
|
||
```
|
||
|
||
**Долгосрочный фикс** (не сделан): включить NTP-сервер на Cudy (он сам сходится через openwrt pool за счёт того что 0.openwrt.pool.ntp.org разрешён dnsmasq) и в Network → System → NTP на UCK прописать `192.168.1.1` вместо публичного пула.
|
||
|
||
### Известная проблема: правила firewall ломают fw4 после ребута
|
||
|
||
В OpenWrt 24.10.3 / nftables v1.1.1 файлы в `/etc/nftables.d/*.nft` со старым синтаксисом (`chain xxx { type ... hook ... }`) **ломают весь fw4** — он не создаёт `forward`/`dstnat` chains, и LAN остаётся без интернета. См. [[../../decisions/2026-06-05-benelux-blackout-fw4-recovery]].
|
||
|
||
**Правило**: новые firewall-правила добавлять только через **UCI** (`uci add firewall rule/redirect/zone/forwarding`). Бот Алекс уже делает правильно — через `nft insert rule` runtime.
|
||
|
||
## Веб-доступ к сервисам коробки (через NPM Олега 10.0.0.195)
|
||
|
||
KasmVNC-приложения на ZimaOS (VM 100 pve-147, `10.0.0.190`), опубликованы 2026-06-11:
|
||
|
||
| URL | Backend | Защита |
|
||
|---|---|---|
|
||
| https://tg.umnybot.ru | 10.0.0.190:3000 (linuxserver-telegram) | Basic Auth |
|
||
| https://rustdesk.umnybot.ru | 10.0.0.190:3005 (linuxserver-rustdesk) | Basic Auth |
|
||
|
||
- **Basic Auth**: `alex` / `Umny-xck8TjTXBE` (NPM Access List `umnybot-kasm`, id 1) — у самих KasmVNC-контейнеров своей авторизации НЕТ, без ACL наружу не выставлять
|
||
- DNS: A-записи `tg`/`rustdesk` → `176.62.183.186` (Spaceweb)
|
||
- LE-серты NPM id 121/122, до 2026-09-09, авто-renew
|
||
- NPM самой коробки (LXC 101, `10.0.0.207:81`): `it5870@yandex.ru` / `1qaz!QAZ` — при переезде коробки к клиенту хосты продублировать туда
|
||
|
||
## Контекст
|
||
- См. [[README]] — общая схема объекта (Cudy + Unifi-сегмент)
|
||
- См. [[../../decisions/2026-05-20-benelux-compromise]] — история смены пароля и hardening после инцидента
|
||
- Клиент: Александр, КП Бенелюкс (Истра)
|