Files
knowledge-base/projects/dttb/credentials.md
dttb d39ddb989d authentik SSO/IdP на auth.dttb.ru (LXC 144): пилот OIDC Open WebUI+Gitea, обязательная 2FA
- LXC 144 Debian12/Docker, server+worker+postgres (2026.5.3, без Redis)
- NPM #41 auth.dttb.ru, LE cert id133, публичная A-запись Spaceweb
- OIDC: Open WebUI (chat) + Gitea (git, ROOT_URL→https)
- 2FA обязательна на IdP (TOTP/WebAuthn force-enroll)
- принцип «2FA через нужную дверь» (OIDC, не forward-auth)
- критичную инфру не трогали; остался ручной enrollment Олега

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-26 19:17:10 +03:00

14 KiB
Raw Blame History

date, type, tags
date type tags
2026-02-26 project
dttb

🔐 Credentials — DTTB HomeLab

⚠️ КОНФИДЕНЦИАЛЬНО — не распространять за пределы команды

Последнее обновление: 2026-03-03


Proxmox VE (10.0.0.250)

Параметр Значение
URL https://10.0.0.250:8006 / https://pve.dttb.ru
Логин root
Пароль 1qaz!QAZ
Realm PAM

Amnezia Web Panel (LXC 143)

Параметр Значение
Веб (LAN) http://10.0.0.143:5000
Веб (NetBird) http://100.70.9.163:5000 (amnezia-panel.netbird.cloud)
Логин admin
Пароль AmnPanel!2026-fi (дефолт admin/admin сменён; pbkdf2_hmac-sha256)
Root LXC 143 root / 1qaz!QAZ (консоль/SSH через pve)
Данные bind-mount /opt/amnezia-panel/{data.json,tunnels_state.json}
Назначение Control-plane VPN-нод (AWG/WG/Xray/MTProxy), управляет серверами по SSH. Приватно, без NPM/публичного доступа. См. ../../decisions/2026-06-23-amnezia-web-panel-lxc143

VPN-ноды (управляются панелью)

HOSTKEY Finland — основной хаб (заказан 2026-06-23)

Параметр Значение
IP 151.241.234.241
SSH key-only (пароль по SSH отключён): ssh awg-fi с Mac, ключ ~/.ssh/awg_fi_key (ed25519). Панель LXC 143 ходит тем же ключом
Пароль root v_6hH9JuH_только для веб-консоли HOSTKEY (по SSH не работает)
ОС Ubuntu 22.04.5 LTS · 2 vCPU / 3.9 GB / 60 GB NVMe · 3 TB трафик @1Gbps · fi-vmv2-nano
AmneziaWG AWG 2.0 · контейнер amnezia-awg2 · UDP 41624 · subnet 10.8.1.0/24. Управляется панелью (server_id 0)
Защита ufw (наружу только 22/tcp + 41624/udp) · fail2ban (sshd, backend=systemd) · SSH key-only · root prohibit-password
Роль Основной AmneziaWG-выход. Резерв — старый финский VPS (переустановить ОС перед использованием: был XorDDoS/RCE)

MikroTik Router (НИИКН — 192.168.1.1)

Параметр Значение
IP 192.168.1.1
Модель hAP ac³
Логин AI
Пароль OL260380eg
Версия RouterOS 7.20.6

Gitea (10.0.0.189:3000)

Параметр Значение
URL http://10.0.0.189:3000 / http://git.dttb.ru
Логин oleg
Пароль OL260380eg
Git Remote http://oleg:OL260380eg@10.0.0.189:3000/oleg/knowledge-base.git

Nginx Proxy Manager (LXC 103 — 10.0.0.195:81)

Параметр Значение
URL http://10.0.0.195:81 / https://npm.dttb.ru
Email it5870@yandex.ru
Пароль 1qaz!QAZ

RustDesk Server (LXC 116 — 10.0.0.244)

Параметр Значение
Web admin URL https://remot.dttb.ru/_admin/
Swagger https://remot.dttb.ru/swagger/index.html
Логин admin
Пароль 1qaz!QAZ (сменён на стандартный 2026-04-29)
Public key (для RustDesk2.toml) R0lA4r77hAGw6YRL1qG3JioVqQ0Q0fJfzkwlAGqR6jU=
JWT key (config.yaml jwt.key) mrQPMJh6QBGp93aVqv14IG4R5g4zjxNRs3gLHtjJr4rqgGm164ciMVrQJDP2GIQh
Бэкап ключей и БД /root/rustdesk-backup-20260428-1134/ (на LXC 116)
Rollback к OSS bash /root/rustdesk-rollback.sh (на LXC 116)

Сервер — lejianwen-pro 1.1.14 (hbbs/hbbr с MUST_LOGIN=Y) + rustdesk-api 2.7. Подробности: rustdesk и ../../decisions/2026-04-28-rustdesk-lejianwen-pro-migration.

CLI смены пароля admin (на LXC 116):

cd /var/lib/rustdesk-api && /usr/bin/rustdesk-api reset-admin-pwd <new-pw>

Nextcloud AIO (VM 250 — 10.0.0.230:11001)

Параметр Значение
URL https://dttb.ru
Версия Nextcloud 32.0.6 (AIO)
Логин admin
Пароль 1qaz!QAZ
WebDAV https://dttb.ru/remote.php/dav/files/admin/
App password Mac sync ~/.config/nextcloud-kb/app-password (chmod 600)

Подробности sync-схемы: ../../decisions/2026-04-17-nextcloud-sync-schema.

ZimaOS NAS (VM 130 — 10.0.0.221)

Параметр Значение
Веб http://10.0.0.221 (Caddy/ZimaOS-Gateway)
Логин dttb
Пароль 1qaz!QAZ (восстановлен 2026-06-19 из md5-хеша в user.db)
SSH выключен; Linux root locked (без пароля)
Shell ttyd http://10.0.0.221:7681 (просит login, нужен Linux-юзер) или offline-mount диска на Proxmox

Сброс веб-пароля offline (если снова потеряется): qm stop 130losetup -fP /dev/pve/vm-130-disk-0 → смонтировать раздел p8 casaos-data → в .casaos/db/user.db (sqlite, табл. o_users) UPDATE o_users SET password='<md5 нового>' WHERE username='dttb' (хеш = md5 без соли) → umount + losetup -d + lvchange -an pve/vm-130-disk-0qm start 130. ZimaOS immutable A/B: system = squashfs (RO), изменения в overlay (p7), данные/конфиги в casaos-data (p8).

Spaceweb (DNS-хостинг: niikn.com, dttb.ru, itilegent.ru)

Параметр Значение
URL https://vps.sweb.ru
Логин it5870yand
Пароль 1qaz!QAZ
API https://api.sweb.ru/domains/dns (JSON-RPC)
Домены niikn.com, dttb.ru, itilegent.ru

Mailcow НИИКН (VM106 — 192.168.1.128)

Параметр Значение
URL https://mail.niikn.com
Admin admin / 1qaz!QAZ
API Key niikn-mailcow-api-2026
DBPASS 8VcUSgpKEOoxNojIZBRJx0FzMxzm
Ящик noreply@niikn.com / NiIkN-NoReply-2026!

NPM НИИКН (LXC 102 — 192.168.1.22:81)

Параметр Значение
URL http://192.168.1.22:81
Email it5870@yandex.ru
Пароль 1qaz!QAZ

German Hermes Dashboard (LXC 141)

Параметр Значение
URL https://german.dttb.ru (NPM #40 → 10.0.0.141:9119)
Логин oleg / German-ecddc1edea-2026
Механизм dashboard.basic_auth в /root/.hermes/config.yaml (scrypt password_hash + secret, plaintext не хранится)
systemd hermes-dashboard.service = hermes dashboard --host 0.0.0.0 --port 9119 --skip-build --no-open
⚠️ Грабля БЕЗ --insecure! --insecure отключает cookie-gate (включает легаси _SESSION_TOKEN) → login проходит, но всё внутри 401. Бинд 0.0.0.0 без --insecure = auth_required=True + принимает любой Host (для NPM-домена). См. ../../decisions/2026-06-18-german-hermes-agent-deploy

authentik SSO/IdP (LXC 144)

Параметр Значение
URL https://auth.dttb.ru (NPM #41 → 10.0.0.144:9000, LE cert id133)
LXC root 10.0.0.144 — root / Authentik!2026-dttb (LAN only, без WAN SSH)
Admin панель akadmin / Auth0leg!2026-dttb (bootstrap-пароль). 2FA обязательна — при первом входе предложит TOTP/passkey
Email admin it5870@yandex.ru
API-токен claude-bootstrap = z53t4jfarH69EBYuJJbY0olaak79Sf67W1EqVCCM6NVHXbQDAAuyXHfVP4VZ (не истекает, минует login-flow — для управления/recovery)
Стек /opt/authentik/.env хранит PG_PASS и AUTHENTIK_SECRET_KEY (сгенерированы рандомом, бэкап только в .env контейнера)
OIDC Open WebUI app open-webui, client_id 1G7PLkPUSCEK4EFyULcDbqBnADrRNnswXOHFOeEF, secret 2vpQldlISZDGyQaTQeVZ070XkA879a0TaMCeYIPQaA0ln116sQqJNzj9AjSMjvTz4yFTXw89V0wGb5yMP1CfqVCE0UehcvI9RsgCtjrFaSp0lrDD1NCwp9SrDGtfcF2A
OIDC Gitea app gitea, client_id AYl8jNZvJF7jh4c2nPhm1nRtD2XwkUK0DPwnvQ9e, secret UwsqG97S5REcuSgQLFQUHGp0JDKScR7fSIuIminNaZoVKca2JQzbb0PebePeBeaQhFKPjJOlu3kEmEEzod0oGtIArHKH492SnUBMO5aa5FgnAGjGzm9BB4RRYJo7wEMQ
Recovery сброс admin-пароля ak change_password akadmin; снять обяз. 2FA — PATCH стейджа f3808685-… not_configured_action=skip через API-токен. См. ../../decisions/2026-06-26-authentik-sso-deploy

SSH-ключи и доступы

Хост Порт Метод
10.0.0.250 (Proxmox) 22 root / 1qaz!QAZ
VPS swtest.ru (89.111.140.86 / 100.70.93.36) 22 root / ключ ~/.ssh/vps_znam_key (RSA). Алиас SSH: ssh vps-znam (через Netbird) или ssh vps-znam-public. Ключ развёрнут на Mac и openclaw LXC 137. Подробности: vps-swtest.md

Apple ID (США)

Параметр Значение
Apple ID hbuggle819@icloud.com
Пароль App5870w
Регион United States
2FA trusted phone номер Олега, заканчивается на ...70 (при входе выбирать его, код приходит к Олегу по SMS)
Назначение скачивание приложений из US App Store (AmneziaVPN, Happ, Instagram и т.п.) для себя и клиентов
Инструкция для клиента snippets/apple-id-us-on-russia.md

⚠️ Входить только в App Store → Медиа и покупки, НЕ в iCloud (иначе риск смешения данных).

Telegra.ph (для инструкций клиентам)

Параметр Значение
Account short_name dttb
Author Oleg Batlaev
Access token c38dcadb86e6edd7efc76496d9171d38beef6dc0f6a7ef2cd79bbae70e46
Auth URL (вход в редактор) https://edit.telegra.ph/auth/f1tfgzYpPpGlAr7cYHRzSeH59fYuNVB2V3fbCdypDc

Назначение: публиковать подробные инструкции (VPN, онбординг) как Telegra.ph-страницы — Telegram рендерит их через Instant View, markdown не ломается. Создание страницы: POST https://api.telegra.ph/createPage с этим access_token. Редактирование: POST https://api.telegra.ph/editPage или через Auth URL в браузере.

Скрипты в vault:

  • snippets/telegraph-publish-client-instruction.py — создаёт новую страницу из Python-кода (содержимое прописано в самом скрипте)
  • snippets/telegraph-md-to-page.pyконвертер markdown → Telegraph Node, редактирует Nastrojka-VPN-04-24-2. Поддерживает вложенные списки, inline code/links/bold/italic, защищает code-spans от italic-парсинга. Чтобы опубликовать новый md: поменять PATH/TITLE/источник файла в main().

Созданные страницы:

Netbird (netbird.io cloud)

Параметр Значение
API Token nbp_YTEmAVpS0hLhnTeJ09q3wYaC0AAXjN21NPvM
API URL https://api.netbird.io
SSO batlaew@yandex.ru

Setup keys

Назначение Ключ Группа Истекает Тип
Claude-Diag (временные подключения Claude для диагностики) — скрипт: snippets/netbird-claude-install.ps1 83301E74-6F86-4CBD-AF77-0C65730103CA Claude-Diag (d7jra32fadhs73dmqv5g) 2026-05-21 reusable, unlimited
Glavtorg 5D1E3507-6F1C-41FC-B86F-05C60364A146 Glavtorg
SwarmClaw (LXC 135, доступ агентов к 100.70.x) 1558712D-03E8-41DF-B48F-C44DFD3BE31F (reusable, полный — для переподключения/новых хостов в эту группу) Claude-Diag (d7jra32fadhs73dmqv5g) 2027-06-09 reusable, unlimited
German (LXC 141, ассистент — доступ к 100.70.x) 64DF527E-31F0-46E5-8E31-311325F9AEC5 Claude-Diag (d7jra32fadhs73dmqv5g) 2027-06-18 reusable, unlimited

Продление Claude-Diag ключа (через API при истечении):

curl -s -X POST -H "Authorization: Token nbp_YTEmAVpS0hLhnTeJ09q3wYaC0AAXjN21NPvM" \
  -H "Content-Type: application/json" \
  -d '{"name":"Claude Diagnostic","type":"reusable","expires_in":2592000,"auto_groups":["d7jra32fadhs73dmqv5g"],"usage_limit":0,"ephemeral":false}' \
  https://api.netbird.io/api/setup-keys

Заметки

  • Пароль 1qaz!QAZ используется на Proxmox, NPM, Nextcloud
  • Пароль OL260380eg используется на MikroTik и Gitea
  • LXC 129 (Clawdbot) удалён ~апрель 2026. LXC 139 (yaroslav-assistant, тестовый openclaw для Ярослава, не использовался) удалён 2026-04-29 — backup md-конфигов в projects/dttb/archive/lxc-139-yaroslav-assistant/. Актуальные LXC по pct list на Proxmox: 132 code-server, 136 gitea, 137 openclaw, 138 vpn-proxy, 103 NPM, 113 VaultWarden, 114 LinkWarden, 115 watchyourlan, 116 rustdeskserver, 134 ZnamSecurityBot