From 8f2466c89764ba409dbb503f83e4e721d8f44531 Mon Sep 17 00:00:00 2001 From: code-server Date: Tue, 30 Jun 2026 05:35:13 +0000 Subject: [PATCH] =?UTF-8?q?ai-assistant-pilot:=20=D0=BF=D1=80=D0=BE=D0=B2?= =?UTF-8?q?=D0=B5=D1=80=D0=BA=D0=B0=20exposure=202026-06-30=20=E2=80=94=20?= =?UTF-8?q?qbit/HA=20=D0=BD=D0=B5=20=D0=BF=D1=83=D0=B1=D0=BB=D0=B8=D1=87?= =?UTF-8?q?=D0=BD=D1=8B,=20Cosmos-=D0=B0=D0=B4=D0=BC=D0=B8=D0=BD=D0=BA?= =?UTF-8?q?=D0=B0=20=D0=B2=20=D0=BF=D0=B0=D0=B1=D0=BB=D0=B8=D0=BA=D0=B5=20?= =?UTF-8?q?=D0=BD=D0=BE=20=D0=B7=D0=B0=20=D0=BB=D0=BE=D0=B3=D0=B8=D0=BD?= =?UTF-8?q?=D0=BE=D0=BC;=20=D1=85=D0=B2=D0=BE=D1=81=D1=82=D1=8B=20=D0=B1?= =?UTF-8?q?=D0=B5=D0=B7=D0=BE=D0=BF=D0=B0=D1=81=D0=BD=D0=BE=D1=81=D1=82?= =?UTF-8?q?=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- projects/dttb/ai-assistant-pilot/architecture.md | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/projects/dttb/ai-assistant-pilot/architecture.md b/projects/dttb/ai-assistant-pilot/architecture.md index cc79589..99c412e 100644 --- a/projects/dttb/ai-assistant-pilot/architecture.md +++ b/projects/dttb/ai-assistant-pilot/architecture.md @@ -146,3 +146,14 @@ sshpass -p '1qaz!QAZ' ssh root@192.168.1.247 # → хост pve - Маршруты (2): `qbittorrent.cosmos.umnybot.ru → qBittorrent:8080`, `home-assistant.cosmos.umnybot.ru → Home-Assistant:8123`. **Оба `auth=False`** (SmartShield on, но без SSO!) — дыра, при паблик-доступе закрыть. **Выводы для концепции `benilux/umny-server-concept`:** часть шагов уже частично выполнена (Cosmos=движок, qBittorrent, authentik=SSO, Hermes-заготовка, Telegram-webtop). План пересобрать из «ставить» в «навести порядок + доделать + закрыть безопасность». **Не дублировать существующее.** + +### Проверка безопасности exposure (2026-06-30) + +Публичный DNS (`dig`): наружу резолвятся **только** `umnybot.ru`, `cosmos.umnybot.ru`, `pve.umnybot.ru` → 158.255.0.139 (VPS-шлюз). `qbittorrent/home-assistant.cosmos.umnybot.ru` — **НЕ резолвятся** (внутренние, из интернета недоступны) → дыра `auth=False` пока не открыта в интернет. + +VPS-шлюз (openresty) публикует: +- `umnybot.ru` → HTTP 200, Next.js (SwarmClaw). +- `cosmos.umnybot.ru` → 307 → `/cosmos-ui/` — **админка Cosmos торчит в паблик**. НО вход защищён: `/cosmos/api/servapps` = 401, `/cosmos/api/status` = «User not logged in», `newInstall` = 403 (setup закрыт). Не голая, но **рекомендуется убрать с паблика** (оставить по NetBird/за SSO). +- `pve.umnybot.ru` → Proxmox за Basic Auth (как и было). + +**Хвосты безопасности (не пожар, в работу):** (1) убрать Cosmos-админку с публичного VPS; (2) перед любым публичным сервисом включить SSO (authentik уже стоит) вместо `auth=False`; (3) сменить общий `1qaz!QAZ` + 2FA на Proxmox.