Бэкап claude-memory (8 файлов) — 2026-03-09
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
227
claude-memory/MEMORY.md
Normal file
227
claude-memory/MEMORY.md
Normal file
@@ -0,0 +1,227 @@
|
|||||||
|
# Server: Proxmox HP Z800 (10.0.0.250)
|
||||||
|
- root / 1qaz!QAZ (API: works, SSH: fail2ban blocks after attempts)
|
||||||
|
- Proxmox API: POST https://10.0.0.250:8006/api2/json/access/ticket (password URL-encoded: 1qaz%21QAZ)
|
||||||
|
- Node name: pve
|
||||||
|
- Use Python urllib for Proxmox API (curl has cookie issues in this env)
|
||||||
|
|
||||||
|
## Key LXC/VM containers
|
||||||
|
| VMID | Name | IP | Notes |
|
||||||
|
|------|------|----|-------|
|
||||||
|
| 107 | Mailcow | 10.0.0.107 | Mailcow для dttb.ru, 4 cores, 8GB RAM |
|
||||||
|
| 131 | agentdvr | 10.0.0.232 | Agent DVR, 8 cores, 6GB RAM, port 8090 |
|
||||||
|
| 129 | clawdbot | 10.0.0.206 | Clawdbot AI bot (основной, claude-opus-4-6, @maxim_dttb_bot) |
|
||||||
|
| 133 | clawdbot-1 | 10.0.0.237 | Бот НИИКН (cliproxy/claude-sonnet-4-6, @maximka_assistant_bot) |
|
||||||
|
| 134 | clawdbot-2 | 10.0.0.238 | Знам — бот ЧОП видеоархив (@ZnamSecurityBot, haiku) |
|
||||||
|
| 111 | WinServer2025 | - | RTX 3060 LHR passed through |
|
||||||
|
| 117 | motioneye | - | Old camera software |
|
||||||
|
| 124 | Matrix | 10.0.0.224 | Matrix Synapse + Element Web, Ubuntu 24.04 |
|
||||||
|
| 127 | HomeAssistant | 10.0.0.155 | HAOS 17.0, port 8123, home.dttb.ru |
|
||||||
|
| 128 | amnezia-vpn | - | AmneziaVPN |
|
||||||
|
| 250 | Nextcloud-AIO | 10.0.0.230 | Nextcloud AIO dttb.ru, NC 32.0.6 |
|
||||||
|
|
||||||
|
## Agent DVR (LXC 131) — домашний
|
||||||
|
- Install dir: /opt/AgentDVR/, binary: Agent
|
||||||
|
- Recordings: /opt/AgentDVR/Media/WebServerRoot/Media/video/ (rootfs, NOT on work storage)
|
||||||
|
- Service: agentdvr.service, Web UI: http://10.0.0.232:8090
|
||||||
|
- 20+ камер, Decoder=NONE
|
||||||
|
|
||||||
|
## Agent DVR (VM 104) — Знаменское (ЧОП)
|
||||||
|
- IP: 10.0.0.227, SSH: agentdvr / 1qaz!QAZ (key auth настроен)
|
||||||
|
- AgentDVR v7.0.0.0, Web UI: http://10.0.0.227:8090
|
||||||
|
- 14 камер (ZnamHome-Cam01..13 + Znam29-Cam1), все записывают
|
||||||
|
- Recordings: /mnt/storage/agentdvr-media/video/, формат MP4, 2TB диск (269GB используется)
|
||||||
|
- HTTP file server: http://10.0.0.227:8091 (python3 http.server, nohup + @reboot cron)
|
||||||
|
- 8 vCPU, 8GB RAM (критически мало — 99% использовано)
|
||||||
|
|
||||||
|
## Clawdbot (LXC 129) — основной бот
|
||||||
|
- Real config: ~/.clawdbot/clawdbot.json (NOT /opt/clawdbot/config.yaml)
|
||||||
|
- ANTHROPIC_API_KEY=sk-clawdbot-proxy in /etc/systemd/system/clawdbot.service
|
||||||
|
- Telegram bot: @maxim_dttb_bot
|
||||||
|
- Model: anthropic/claude-opus-4-6 (через CLIProxy localhost:8317)
|
||||||
|
- CLIProxy: порт 8317 (cliproxy.service), проксирует Anthropic API для всех ботов (129, 133, 134)
|
||||||
|
- CLIProxy auth: batlaew@gmail.com, auto-refresh токен (единственный инстанс с refresh)
|
||||||
|
- Gateway: порт 18789, token: changeme123
|
||||||
|
- SSH: ключ claude-code (id_ed25519 с LXC 132)
|
||||||
|
|
||||||
|
## Nextcloud dttb.ru (VM 250) → см. nextcloud-dttb.md
|
||||||
|
- URL: https://dttb.ru, admin / 1qaz!QAZ, NC 32.0.6, AIO v12.6.1
|
||||||
|
- VM 250 IP: 10.0.0.230, SSH: cloud / 1qaz!QAZ (sudo pipe)
|
||||||
|
- AIO: https://10.0.0.230:8080, passphrase: raider baguette muster...
|
||||||
|
- NPM proxy #1: dttb.ru -> 10.0.0.230:11001
|
||||||
|
- WebDAV: https://dttb.ru/remote.php/dav/files/admin/
|
||||||
|
|
||||||
|
## Clawdbot-1 / НИИКН (LXC 133)
|
||||||
|
- IP: 10.0.0.237, Netbird: 100.70.200.150 (clawdbot-1.netbird.cloud)
|
||||||
|
- Telegram: @maximka_assistant_bot (token: 8279417986:AAEjmdnOSO4izFHZJZYPbjcqKzqLARqPnow)
|
||||||
|
- Model: cliproxy/claude-sonnet-4-6 (через CLIProxy на 129 — http://10.0.0.206:8317)
|
||||||
|
- CLIProxy: свой остановлен и отключен (cliproxy.service disabled), ходит через 129
|
||||||
|
- ZAI_API_KEY=5c83707827ef... в /etc/systemd/system/clawdbot.service (не используется)
|
||||||
|
- Персона: бот для НИИКН (SOUL.md/IDENTITY.md/USER.md в /root/clawd/)
|
||||||
|
- SMB: нет (клон без mp0)
|
||||||
|
|
||||||
|
## GPU passthrough
|
||||||
|
- RTX 3060 LHR: IOMMU Group 20, IDs 10de:2504,10de:228e → VM 111
|
||||||
|
- Quadro 6000: IOMMU Group 3, IDs 10de:06d8,10de:0be5 → vfio-pci (unused)
|
||||||
|
- GRUB: intel_iommu=on iommu=pt video=vesafb:off video=efifb:off
|
||||||
|
|
||||||
|
## Clawdbot-2 / Знам (LXC 134)
|
||||||
|
- IP: 10.0.0.238, Telegram: @ZnamSecurityBot
|
||||||
|
- Персона: Знам — бот видеоархива ЧОП
|
||||||
|
- Model: cliproxy/claude-sonnet-4-6 (через CLIProxy на 129:8317)
|
||||||
|
- Skill: agentdvr (/usr/lib/node_modules/clawdbot/skills/agentdvr/)
|
||||||
|
- Script: /root/clawd/scripts/find_recordings.py (cameras/snapshot/find/clip/grab)
|
||||||
|
- Записи: HTTP from 10.0.0.227:8091, видео сжимается ffmpeg 480p crf35 перед отправкой
|
||||||
|
- groupPolicy: open, requireMention: false (отвечает в группе без @mention)
|
||||||
|
- Upload интернета ~3-30 KB/s — видео сжимаются до <200 KB для Telegram
|
||||||
|
- SSH: ключ claude-code (id_ed25519 с LXC 132)
|
||||||
|
|
||||||
|
## Matrix (VM 124, 10.0.0.224)
|
||||||
|
- Ubuntu 24.04, 8 cores, 16GB RAM, 100GB disk
|
||||||
|
- SSH: matrix / 1qaz!QAZ (root SSH отключен, fail2ban активен, IP 10.0.0.179 забанен)
|
||||||
|
- TODO: unban 10.0.0.179, создать user test/1qaz!QAZ, узнать registration_shared_secret
|
||||||
|
- Synapse v1.145.0 (docker: matrix-synapse, порт 8008)
|
||||||
|
- Element Web (docker: matrix-element-web, порт 8080)
|
||||||
|
- Coturn (docker: matrix-coturn, порт 3478 — имеет проблему bind)
|
||||||
|
- AI Bot (docker: matrix-ai-bot — Timed out, нужен ремонт)
|
||||||
|
- Mautrix-Telegram (docker: mautrix-telegram, порт 29317)
|
||||||
|
- Mautrix-WhatsApp (docker: mautrix-whatsapp)
|
||||||
|
- Nginx на хосте (порт 80) — дефолтный, не проксирует (проксирование через NPM)
|
||||||
|
- NPM proxy host ID:23 — matrix.dttb.ru → Element:8080, /_matrix→Synapse:8008
|
||||||
|
- NPM proxy host ID:12 — bitrix24.dttb.ru (старый, тоже работает)
|
||||||
|
- SSL: Let's Encrypt cert ID:100 (matrix.dttb.ru)
|
||||||
|
- Well-known: настроены для matrix.dttb.ru
|
||||||
|
- Homeserver: bitrix24.dttb.ru (в конфиге Synapse, исторически)
|
||||||
|
- Docker compose файлы: ~/matrix-ai-bot/, ~/mautrix-telegram/, ~/mautrix-whatsapp/
|
||||||
|
- Документация: ~/PROJECT_CONTEXT.md, ~/CURRENT-STATUS.txt, ~/MATRIX-SUCCESS.txt
|
||||||
|
|
||||||
|
## Mailcow HomeLab (VM 107, 10.0.0.107)
|
||||||
|
- Web UI: https://mail.dttb.ru (через NPM proxy host #25)
|
||||||
|
- Admin: admin / 1qaz!QAZ
|
||||||
|
- API key: dttb-mailcow-api-2026
|
||||||
|
- Домен: dttb.ru (добавлен), DKIM: selector=dkim, 2048-bit
|
||||||
|
- Ящики: admin@dttb.ru, noreply@dttb.ru (пароль: 1qaz!QAZ)
|
||||||
|
- SMTP: 10.0.0.107:587, STARTTLS, LOGIN auth
|
||||||
|
- Клон с VM 106 НИИКН, MAILCOW_HOSTNAME=mail.dttb.ru
|
||||||
|
- SSH: root (ключ claude-code ed25519), cloud-init IP static
|
||||||
|
- Unbound: forward-zone к 8.8.8.8/1.1.1.1 (обязательно, иначе DNS fail)
|
||||||
|
- SSL: self-signed для mail.dttb.ru, NPM cert ID:106 для HTTPS web
|
||||||
|
- OpenWrt проброс: 25,465,587,993,995,4190 → 10.0.0.107
|
||||||
|
- DNS (Spaceweb): A mail→176.62.183.186, MX→mail.dttb.ru, SPF, DMARC, DKIM настроены
|
||||||
|
|
||||||
|
## NPM HomeLab (CT 103, 10.0.0.195)
|
||||||
|
- Web UI: http://10.0.0.195:81
|
||||||
|
- API auth: it5870@yandex.ru / 1qaz!QAZ (python urllib, curl не работает с !)
|
||||||
|
- NPM v2.12.2
|
||||||
|
- Основные proxy hosts: dttb.ru(1), mail.dttb.ru(25), matrix.dttb.ru(23), bitrix24.dttb.ru(12), home.dttb.ru(16), pve.dttb.ru(6), bot.dttb.ru(18), git.dttb.ru(22), rec.dttb.ru(21) и др.
|
||||||
|
- DNS *.dttb.ru → 10.0.0.195 (роутер перехватывает DNS порт 53, hairpin)
|
||||||
|
|
||||||
|
## Mailcow НИИКН (VM 106, 192.168.1.128)
|
||||||
|
- Web UI: https://mail.niikn.com (через NPM proxy host #17)
|
||||||
|
- Admin: admin / 1qaz!QAZ
|
||||||
|
- API key: niikn-mailcow-api-2026
|
||||||
|
- Домен: niikn.com (добавлен), DKIM: selector=dkim, 2048-bit
|
||||||
|
- Ящик: noreply@niikn.com, пароль: NiIkN-NoReply-2026!
|
||||||
|
- SMTP: 192.168.1.128:587, STARTTLS, LOGIN auth — проверено, работает
|
||||||
|
- MikroTik проброс: 25,465,587,993,995,4190 → 192.168.1.128
|
||||||
|
- SSL: Let's Encrypt через NPM (cert ID 50)
|
||||||
|
- DNS настроены (2026-03-03): MX, SPF, DMARC, DKIM — все через Spaceweb API
|
||||||
|
- PTR: нужен (текущий: Aquatern.access.comstar.ru → нужен mail.niikn.com)
|
||||||
|
|
||||||
|
## Spaceweb DNS (niikn.com, dttb.ru)
|
||||||
|
- Панель: vps.sweb.ru, логин: it5870yand / 1qaz!QAZ
|
||||||
|
- Логин: POST https://mcp.sweb.ru/main/auth_submit/ (поля: login, password, new_panel=1, to, savepref)
|
||||||
|
- API: POST https://api.sweb.ru/domains/dns, Content-Type: application/json
|
||||||
|
- Payload: {"jsonrpc":"2.0","id":1,"user":"it5870yand","method":"...","params":{...}}
|
||||||
|
- editMain params: {domain, action:"add"/"edit", name, type:"A", value, prefix:"", index(edit)}
|
||||||
|
- editMx params: {domain, subDomain:"", action:"add"/"edit", priority, value:"host.", index(edit)}
|
||||||
|
- editTxt params: {domain, action:"add"/"edit", subDomain:"@"/..., value, index(edit)}
|
||||||
|
- Капча после 2-3 запросов подряд — новая сессия сбрасывает
|
||||||
|
|
||||||
|
## OpenWrt Router HomeLab (10.0.0.1:8080)
|
||||||
|
- LuCI Web UI: http://10.0.0.1:8080/cgi-bin/luci/
|
||||||
|
- ubus RPC: POST http://10.0.0.1:8080/ubus/ (root / 1qaz!QAZ)
|
||||||
|
- SSH: НЕ работает с этим паролем (другой или key-only)
|
||||||
|
- DNS Hijack: перехватывает порт 53 → 10.0.0.1 (все DNS запросы через роутер)
|
||||||
|
- Проброс: 80→NPM, 443→NPM, 25/465/587/993/995/4190→Mailcow(10.0.0.107)
|
||||||
|
- uci apply: нужен rollback=True + confirm, иначе правила теряются
|
||||||
|
|
||||||
|
## Matrix НИИКН (VM 107, 192.168.1.133) — Proxmox НИИКН
|
||||||
|
- Ubuntu 24.04, 4 cores, 8GB RAM, 100GB disk
|
||||||
|
- SSH: root / 1qaz!QAZ (matrix user тоже, PermitRootLogin=yes), fail2ban НЕ установлен, UFW неактивен
|
||||||
|
- Synapse v1.145.0 (MAS ОТКАЧЕН 2026-03-05, см. mas-niikn.md)
|
||||||
|
- Element Web (docker: matrix-element-web, порт 8080)
|
||||||
|
- Coturn (docker: matrix-coturn, порт 3478)
|
||||||
|
- LiveKit (docker: matrix-livekit, порт 7880/7881/50100-50200, v1.9.11)
|
||||||
|
- lk-jwt-service (docker: matrix-lk-jwt, порт 9090, v0.4.1)
|
||||||
|
- LiveKit key: matrixrtc, secret: 8TyXGXsuKytM09OqQIzlCzpzlBrY4698HTN7mGxKU3E=
|
||||||
|
- LiveKit config: /opt/livekit/livekit.yaml
|
||||||
|
- server_name: matrix.niikn.com
|
||||||
|
- Admin: @admin:matrix.niikn.com / 1qaz!QAZ
|
||||||
|
- DB: PostgreSQL synapse/Matrix2026!
|
||||||
|
- Docker compose: /opt/matrix-synapse-docker/docker-compose.yml
|
||||||
|
- NPM proxy host ID:18 (matrix.niikn.com), lk.niikn.com proxy host (cert ID:55)
|
||||||
|
- msc4108_enabled: false, msc3266+msc4222 enabled, max_event_delay_duration: 24h
|
||||||
|
- well-known: rtc_foci → https://matrix.niikn.com/livekit/jwt/
|
||||||
|
|
||||||
|
## Proxmox НИИКН (192.168.1.201:8006)
|
||||||
|
- root / 1qaz!QAZ, Node: pve
|
||||||
|
- VMs: 100(Cloud-nc-AIO), 101(VPN), 103(Win11), 104(Win2025), 106(Mailcow), 107(Matrix), 108(Nextclaud-AIO), 111(KasmOS), 112(RustDesk)
|
||||||
|
- CTs: 102(NPM), 105(zabbix), 109(Cups-Server), 110(SMB)
|
||||||
|
- Доступ: через jump-host clawdbot-1 (10.0.0.237) → sshpass
|
||||||
|
|
||||||
|
## RustDesk Server (VM 112, 192.168.1.112) — Proxmox НИИКН
|
||||||
|
- Ubuntu 24.04 (cloud-init image, cloud-init disabled after setup)
|
||||||
|
- SSH: root / 1qaz!QAZ
|
||||||
|
- Docker 29.3.0, docker-compose: /opt/rustdesk/docker-compose.yml
|
||||||
|
- RustDesk Server Pro: hbbs + hbbr (network_mode: host)
|
||||||
|
- Data: /opt/rustdesk/data/
|
||||||
|
- Public Key: ev77pauVf4fEs4YafTN9briHXjglfVsadHRletOfcUY=
|
||||||
|
- Web Console: https://rd.niikn.com (NPM proxy host #20, cert #57)
|
||||||
|
- Порты: 21114(API), 21115(NAT test), 21116(ID TCP+UDP), 21117(Relay), 21118(WS), 21119(Relay)
|
||||||
|
- MikroTik NAT: 21114-21119/tcp + 21116/udp → 192.168.1.112
|
||||||
|
- DNS: rd.niikn.com → 85.235.181.190 (Spaceweb)
|
||||||
|
- Лицензия: нужно купить Basic ($19.90/мес) и активировать
|
||||||
|
|
||||||
|
## NPM НИИКН (LXC 102, 192.168.1.22)
|
||||||
|
- Web UI: http://192.168.1.22:81
|
||||||
|
- API auth: it5870@yandex.ru / 1qaz!QAZ
|
||||||
|
- Proxy hosts: niikn.com(4), mail.niikn.com(17), matrix.niikn.com(18), lk.niikn.com(new,cert55), pve.niikn.com(11), cloud.niikn.com(10), rd.niikn.com(20,cert57) и др.
|
||||||
|
|
||||||
|
## MikroTik НИИКН (192.168.1.1)
|
||||||
|
- SSH: AI / OL260380eg
|
||||||
|
- RouterOS 7.20.6, модель hAP ac³
|
||||||
|
- WAN IP: 85.235.181.190
|
||||||
|
- NAT: 25,465,587,993,995,4190→Mailcow(192.168.1.128); 8448,3478→Matrix(192.168.1.133); 7881/tcp,50100-50200/udp→LiveKit(192.168.1.133); 3479,20000-20100,49152-49252→NC(192.168.1.200); 21114-21119/tcp+21116/udp→RustDesk(192.168.1.112)
|
||||||
|
- Hairpin NAT: NPM(80,443), TURN(3478→133), Talk TURN(3479→200), RustDesk(21114-21119→112)
|
||||||
|
|
||||||
|
## Nextcloud НИИКН (VM 108, 192.168.1.200) → см. niikn-nextcloud.md
|
||||||
|
- Домен: niikn.com, AIO порт 11000, Talk+Matterbridge, TURN: niikn.com:3479
|
||||||
|
- Netbird VPN: ip rule 172.18.0.0/16 lookup main (обязательно)
|
||||||
|
- Groupfolders: 2.9TB, 458K файлов. Диск 4.4T (85% занято)
|
||||||
|
|
||||||
|
## Gitea Knowledge Base (LXC 136, 10.0.0.189)
|
||||||
|
- URL: https://git.dttb.ru/oleg/knowledge-base
|
||||||
|
- Auth: oleg / OL260380eg
|
||||||
|
- Git remote: http://oleg:OL260380eg@10.0.0.189:3000/oleg/knowledge-base.git
|
||||||
|
- Структура: projects/dttb/, projects/niikn/, projects/krasnogorsk/, decisions/, notes/, snippets/
|
||||||
|
- Clone: git clone https://git.dttb.ru/oleg/knowledge-base.git
|
||||||
|
|
||||||
|
## Знаменское Home → см. znamenskoe-home.md
|
||||||
|
- Роутер: Cudy TR3000 v1, OpenWrt 24.10.3, Netbird: 100.70.54.204, LAN: 10.3.0.1/24
|
||||||
|
- UniFi Gateway: 10.3.0.175 (WAN) / 192.168.1.1 (LAN), cloud unifi.ui.com, Net 7.4.162
|
||||||
|
- TP-Link Deco P9: 3 ноды (.187, .196, .208)
|
||||||
|
- Windows jump: 100.70.0.106 (SSH claude/1qaz1QAZ), LAN 192.168.1.135
|
||||||
|
- ~43 устройства в 192.168.1.0/24 (камеры, IoT)
|
||||||
|
- TODO: Force Provision UniFi → SSH → полная диагностика
|
||||||
|
|
||||||
|
## Красногорск (Снегири) → см. krasnogorsk.md
|
||||||
|
- Роутер: Cudy TR3000, OpenWrt 24.10.3, Netbird: 100.70.152.137, LAN: 192.168.2.0/24
|
||||||
|
|
||||||
|
## Проект: ServiceDesk dttb → см. servicedesk-dttb.md
|
||||||
|
- Freescout (LXC 135) + clawdbot-3 (LXC 136) + support@dttb.ru + support.dttb.ru
|
||||||
|
- 3 канала: веб, Telegram (@dttb_support_bot), email
|
||||||
|
- Межботовая маршрутизация: все боты ↔ Freescout API
|
||||||
|
- Статус: ПЛАНИРОВАНИЕ
|
||||||
|
|
||||||
|
## Правило: сохранение информации
|
||||||
|
- MEMORY.md + Gitea knowledge-base (oleg/OL260380eg) + Nextcloud WebDAV infrastructure.md
|
||||||
33
claude-memory/krasnogorsk.md
Normal file
33
claude-memory/krasnogorsk.md
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
# Проект Красногорск (Снегири)
|
||||||
|
|
||||||
|
## Топология
|
||||||
|
- Провайдер → Deco P9 (192.168.68.1) → Cudy TR3000 (192.168.2.1) → устройства
|
||||||
|
|
||||||
|
## Deco P9 (шлюз провайдера)
|
||||||
|
- Master: MAC 14:EB:B6:DC:DC:36 ("Гараж"), Satellite: 14:EB:B6:DC:D2:10 ("Мой Гараж")
|
||||||
|
- deco P9(EU) v2.0, FW 1.3.0
|
||||||
|
- Web: https://192.168.68.1 (шифрованный API, cloud passthrough не работает)
|
||||||
|
- TP-Link Cloud: batlaew@yandex.ru / 260380Oleg
|
||||||
|
- ISP: **PPTP** (провайдер lk-telecom.ru)
|
||||||
|
- PPTP-сервер: Pptp.lk-telecom.ru, внешний IP: 185.197.35.186
|
||||||
|
- Статический IP: 192.168.87.120/24, gw 192.168.87.1
|
||||||
|
- DNS: 192.168.100.243, 192.168.100.207
|
||||||
|
- Логин/пароль PPTP: TODO — извлечь из Tether
|
||||||
|
|
||||||
|
## Cudy TR3000 (OpenWrt)
|
||||||
|
- OpenWrt 24.10.3, Hostname: OpenWrt_6
|
||||||
|
- LAN: 192.168.2.1/24, WAN: 192.168.68.100 (DHCP), MAC: 80:AF:CA:CC:D1:13
|
||||||
|
- Netbird: 100.70.152.137, AmneziaWG: 10.8.1.26
|
||||||
|
- LuCI/ubus: http://100.70.152.137 (root / 1qaz!QAZ)
|
||||||
|
- SSH: key auth настроен (claude-code ed25519), dropbear порт 22
|
||||||
|
- WiFi: open (нет шифрования!) — TODO: настроить WPA
|
||||||
|
|
||||||
|
## Задача: замена Deco P9 на MikroTik LTE
|
||||||
|
- ISP = PPTP (Pptp.lk-telecom.ru) + Static IP 192.168.87.120/24
|
||||||
|
- Primary: PPTP → 185.197.35.186, Backup: Мегафон LTE SIM
|
||||||
|
- TODO: получить PPTP логин/пароль из Tether
|
||||||
|
|
||||||
|
## Документация
|
||||||
|
- Nextcloud: Документация/Проекты/Красногорск/README.md
|
||||||
|
- Gitea: projects/krasnogorsk/README.md
|
||||||
|
- КП: КП/КП по видеонаблюдению Снегири.pdf
|
||||||
96
claude-memory/mas-niikn.md
Normal file
96
claude-memory/mas-niikn.md
Normal file
@@ -0,0 +1,96 @@
|
|||||||
|
# MAS НИИКН — ОТКАЧЕН 2026-03-05
|
||||||
|
|
||||||
|
## Статус MAS: ОТКАЧЕН (snapshot rollback)
|
||||||
|
- Proxmox snapshot `pre-mas-deploy` → восстановлен на VM 107
|
||||||
|
- msc4108_enabled: изменён на false в homeserver.yaml (без MAS вызывает краш Synapse)
|
||||||
|
- NPM server_proxy.conf удалён с LXC 102
|
||||||
|
- Nextcloud OIDC: восстановлен client "Matrix Synapse" с redirect /_synapse/client/oidc/callback
|
||||||
|
|
||||||
|
## Nextcloud Talk (VM 108, 192.168.1.200) — РАБОТАЕТ
|
||||||
|
- TURN: niikn.com:3479, secret: ebf6a8ce0fd1629c2da55356169feea7ab118a18368c2550
|
||||||
|
- STUN: stun.nextcloud.com:443 + niikn.com:3479
|
||||||
|
- Signaling: https://niikn.com/standalone-signaling/
|
||||||
|
- eturnal (TURN) внутри NC AIO Docker (172.18.0.4:3479)
|
||||||
|
- Janus (WebRTC SFU) внутри того же контейнера
|
||||||
|
|
||||||
|
## Исправление: Janus nat_1_1_mapping для внешних звонков
|
||||||
|
- **Проблема**: Janus рекламировал Docker-внутренние IP (172.18.0.4, fd74:...) как ICE кандидаты
|
||||||
|
- Внешние клиенты (iPhone по сотовой) не могли установить WebRTC соединение — ICE failed
|
||||||
|
- **Решение**: `nat_1_1_mapping = "85.235.181.190"` и `rtp_port_range = "20000-20100"` в janus.jcfg
|
||||||
|
- eturnal: `relay_ipv4_addr: "85.235.181.190"` (вместо контейнерного IP)
|
||||||
|
- Контейнер read-only rootfs → конфиг копируется в /tmp, Janus перезапускается с /tmp/janus.jcfg
|
||||||
|
- **Убран `--full-trickle`** — с ним ICE-кандидаты терялись из-за race condition в сигнальном сервере
|
||||||
|
- С full-trickle: кандидаты отправляются отдельно от SDP → "No MCU subscriber found" → потеряны
|
||||||
|
- Без full-trickle (half-trickle): кандидаты включены в SDP → доставляются надёжно
|
||||||
|
- **Автопатч**: `/opt/talk-janus-patch.sh` + systemd `talk-janus-patch.service` (enabled)
|
||||||
|
- Скрипт: ждёт контейнер → iptables DNAT+MASQUERADE → патчит eturnal.yml → копирует/патчит janus.jcfg → перезапускает Janus без --full-trickle → убивает signaling (supervisord рестартит)
|
||||||
|
|
||||||
|
## Текущее состояние Talk (2026-03-05) — ТРЕБУЕТ ДОРАБОТКИ
|
||||||
|
- Janus PID 9576: half-trickle, nat_1_1_mapping=85.235.181.190, /tmp/janus.jcfg
|
||||||
|
- Signaling PID 12313: свежий, подключён к Janus на ws://127.0.0.1:8188
|
||||||
|
- Supervisord (PID 7) управляет eturnal, nats, signaling; Janus запущен вручную (supervisord сдался после 3 попыток)
|
||||||
|
- iptables на VM 200: DNAT+FORWARD+MASQUERADE для UDP 20000:20100 и 49152:49252 → 172.18.0.4
|
||||||
|
|
||||||
|
### Нерешённые проблемы
|
||||||
|
1. **DTLS alert/timeout** — subscriber/publisher получают hangup (DTLS alert), вызов переподключается
|
||||||
|
- tcpdump подтвердил: RTP-пакеты доходят до контейнера, но DTLS handshake не завершается
|
||||||
|
- Может быть связано с MTU на сотовой сети или фрагментацией DTLS
|
||||||
|
2. **"The user is not invited to this room"** — после перезапуска signaling старые токены клиентов невалидны
|
||||||
|
- Решение: обоим участникам нужно перезагрузить страницу (F5) для получения свежего токена
|
||||||
|
- Нужно проверить работает ли после перезагрузки страниц
|
||||||
|
3. **Supervisord не управляет нашим Janus** — при краше Janus не перезапустится автоматически
|
||||||
|
- Supervisord запускает оригинальный Janus с --full-trickle и без nat_1_1_mapping
|
||||||
|
- Наш Janus запущен через docker exec -d — без автоперезапуска
|
||||||
|
- Нужно: либо модифицировать supervisord.conf (но rootfs read-only), либо обёртка-watchdog
|
||||||
|
|
||||||
|
### Что нужно сделать при возврате
|
||||||
|
- [ ] Попросить пользователя перезагрузить страницы обоих клиентов и протестировать звонок
|
||||||
|
- [ ] Если DTLS всё ещё падает — попробовать `dtls_mtu = 1200` в janus.jcfg
|
||||||
|
- [ ] Решить проблему автоперезапуска Janus (watchdog или модификация /supervisord.conf в /tmp)
|
||||||
|
- [ ] Проверить звонки LAN↔LAN, LAN↔сотовая, сотовая↔сотовая
|
||||||
|
- [ ] Обновить /opt/talk-janus-patch.sh если нужно после тестов
|
||||||
|
|
||||||
|
## Исправление: Netbird VPN ломал внешний доступ к Talk
|
||||||
|
- **Проблема**: Netbird VPN (wt0) перехватывал весь внешний трафик через таблицу маршрутизации `netbird`
|
||||||
|
- Пакеты SYN приходили через ens18 (MikroTik), но SYN-ACK уходили через wt0 (Netbird) — асимметричный роутинг
|
||||||
|
- **Диагностика**: tcpdump на bridge показал что контейнер отвечает SYN-ACK, но они не доходят до ens18
|
||||||
|
- `ip route get 194.26.100.165` → показывал `dev wt0 table netbird` вместо `dev ens18`
|
||||||
|
- **Решение**: `ip rule add from 172.18.0.0/16 lookup main priority 104`
|
||||||
|
- Постоянный скрипт: `/etc/networkd-dispatcher/routable.d/50-docker-routing.sh`
|
||||||
|
- После исправления порт 3479 открыт из Канады, Индии, Нидерландов, Турции
|
||||||
|
|
||||||
|
## MikroTik NAT правила (192.168.1.1) — ДЕЙСТВУЮЩИЕ
|
||||||
|
- Talk-TURN-TCP: dstnat 85.235.181.190:3479 → 192.168.1.200:3479
|
||||||
|
- Talk-TURN-UDP: dstnat 85.235.181.190:3479 → 192.168.1.200:3479
|
||||||
|
- Janus-RTP-UDP: dstnat 85.235.181.190:20000-20100 → 192.168.1.200
|
||||||
|
- TURN-relay-UDP: dstnat 85.235.181.190:49152-49252 → 192.168.1.200
|
||||||
|
- Hairpin Talk TURN TCP/UDP: srcnat masquerade 192.168.1.0/24 → 192.168.1.200:3479
|
||||||
|
- Matrix TURN TCP/UDP: dstnat 3478 → 192.168.1.133:3478
|
||||||
|
- Matrix Federation: dstnat 8448 → 192.168.1.133:8448
|
||||||
|
- Hairpin TURN dstnat/srcnat TCP/UDP: для 192.168.1.0/24 → 85.235.181.190:3478 → 192.168.1.133
|
||||||
|
|
||||||
|
## VM 200 UFW — открытые порты
|
||||||
|
- 22/tcp, 3479/tcp+udp, 49152:49252/udp, 20000:20100/udp — from Anywhere
|
||||||
|
- 11000 — from 192.168.1.22 (NPM)
|
||||||
|
- 80, 8080, 8443, 8000, 9443, 3389, 3390 — LAN only
|
||||||
|
- Tailscale/Netbird (wt0) — all traffic
|
||||||
|
|
||||||
|
## Element X / Element Call (2026-03-05)
|
||||||
|
- well-known `/.well-known/matrix/client` обновлён через NPM advanced_config (proxy host #18)
|
||||||
|
- Добавлено: `"org.matrix.msc4143.rtc_foci": []` — mesh mode (P2P без SFU)
|
||||||
|
- Для групповых звонков нужен LiveKit SFU (не развёрнут)
|
||||||
|
- homeserver.yaml НЕ изменён (SSH к VM 107 заблокирован fail2ban)
|
||||||
|
- Также: `msc4108_enabled: false` — QR-вход отключен (требует MAS)
|
||||||
|
|
||||||
|
## SSH доступ к VM 107 (2026-03-05) — ПРОБЛЕМА
|
||||||
|
- fail2ban забанил IP 10.0.0.237 (jump host) и 192.168.1.200 (VM 200)
|
||||||
|
- Порт 22 открыт (SSH banner отдаётся), но пароль отклоняется
|
||||||
|
- QEMU guest agent не установлен — Proxmox API exec не работает
|
||||||
|
- sshpass не установлен на Proxmox хосте (192.168.1.201)
|
||||||
|
- **Решение**: нужно разбанить IP через Proxmox console (noVNC/SPICE) или ждать expiry
|
||||||
|
|
||||||
|
## Данные MAS (для возможного повторного развёртывания)
|
||||||
|
- DB: mas/MASniikn2026
|
||||||
|
- Matrix secret: 60pMasWfQd8XUyxix932yIxsweyCG89x
|
||||||
|
- Полный конфиг: /root/mas-config.yaml
|
||||||
|
- syn2mas: 97 пользователей, 2 с паролями, 2 с OAuth
|
||||||
108
claude-memory/nextcloud-dttb.md
Normal file
108
claude-memory/nextcloud-dttb.md
Normal file
@@ -0,0 +1,108 @@
|
|||||||
|
# Nextcloud AIO dttb.ru (VM 250, 10.0.0.230)
|
||||||
|
|
||||||
|
## Общее
|
||||||
|
- URL: https://dttb.ru, login: admin / 1qaz!QAZ
|
||||||
|
- WebDAV: https://dttb.ru/remote.php/dav/files/admin/
|
||||||
|
- Nextcloud AIO v12.6.1, Nextcloud 32.0.6
|
||||||
|
- VM 250 на Proxmox HomeLab (10.0.0.250)
|
||||||
|
- 4 sockets x 2 cores = 8 vCPU, 16GB RAM, 100GB disk (65% used)
|
||||||
|
- Ubuntu, cloud-init, QEMU guest agent НЕ установлен
|
||||||
|
- SSH: cloud / 1qaz!QAZ (sudo через echo pipe: `echo '1qaz!QAZ' | sudo -S ...`)
|
||||||
|
- SSH root НЕ работает, ключ НЕ настроен
|
||||||
|
- Для SSH через sshpass нужно: `-o PreferredAuthentications=password` (иначе fail)
|
||||||
|
|
||||||
|
## AIO Management
|
||||||
|
- URL: https://10.0.0.230:8080 (HTTPS обязательно)
|
||||||
|
- Passphrase: raider baguette muster nanometer disallow hypnotism rut dreamless
|
||||||
|
- AIO_TOKEN: 7e40792bc68c4ce81d0588a89fa883fed1ab2b3347a1781c
|
||||||
|
- AIO_URL: 10.0.0.230:8080 (исправлено 2026-03-07, было localhost:8080)
|
||||||
|
- Патч isLoginAllowed(): return true (позволяет логин по IP при работающем NC)
|
||||||
|
- Файл: /var/www/docker-aio/php/src/Docker/DockerActionManager.php
|
||||||
|
- ВНИМАНИЕ: патч сбрасывается при обновлении mastercontainer
|
||||||
|
- Конфиг: /mnt/docker-aio-config/data/configuration.json (внутри mastercontainer)
|
||||||
|
- Также: /var/lib/docker/volumes/nextcloud_aio_mastercontainer/_data/data/configuration.json (на хосте)
|
||||||
|
|
||||||
|
## NPM proxy
|
||||||
|
- NPM proxy host ID:1 — dttb.ru -> http://10.0.0.230:11001
|
||||||
|
|
||||||
|
## Docker контейнеры
|
||||||
|
- nextcloud-aio-mastercontainer (порты 80, 8080, 8443, 9000)
|
||||||
|
- nextcloud-aio-apache (порт 11001)
|
||||||
|
- nextcloud-aio-nextcloud
|
||||||
|
- nextcloud-aio-database (PostgreSQL)
|
||||||
|
- nextcloud-aio-redis
|
||||||
|
- nextcloud-aio-onlyoffice
|
||||||
|
- nextcloud-aio-imaginary
|
||||||
|
- nextcloud-aio-whiteboard
|
||||||
|
- nextcloud-aio-notify-push
|
||||||
|
- nextcloud-aio-talk (порт 3479)
|
||||||
|
- nextcloud-aio-talk-recording
|
||||||
|
- nextcloud-aio-watchtower
|
||||||
|
|
||||||
|
## Конфигурация (из configuration.json)
|
||||||
|
- domain: dttb.ru
|
||||||
|
- apache_port: 11001
|
||||||
|
- talk_port: 3479
|
||||||
|
- nextcloud_datadir: /mnt/ncdata
|
||||||
|
- nextcloud_mount: /mnt/
|
||||||
|
- upload_limit: 16G
|
||||||
|
- memory_limit: 2048M
|
||||||
|
- max_time: 3600
|
||||||
|
- isOnlyofficeEnabled: true
|
||||||
|
- isImaginaryEnabled: true
|
||||||
|
- isWhiteboardEnabled: true
|
||||||
|
- isTalkEnabled: false (Talk отключен в AIO, но контейнер talk работает — legacy?)
|
||||||
|
- isCollaboraEnabled: false
|
||||||
|
- isClamavEnabled: false
|
||||||
|
|
||||||
|
## Секреты
|
||||||
|
- NEXTCLOUD_PASSWORD: 5752c16a373b465100050053e8c5805d0b40bcc20a28f59d
|
||||||
|
- ONLYOFFICE_SECRET: 84b288f6182489c3a39d109c39e11c320f610c2c9d9d3da6
|
||||||
|
- TURN_SECRET: c86fd98e4db4cba78c8b512d570d91993cc36ee999e59868
|
||||||
|
- REDIS_PASSWORD: df04c3de5d838cb263b82489d12864ec146a4389ac43227e
|
||||||
|
- DATABASE_PASSWORD: 9410ae9648674eff97f37108f770e9e63dc2136964af3f33
|
||||||
|
- BORGBACKUP_PASSWORD: 666fbf2cd2fb7633f34369a4736bfdb0b7280aef82648d94
|
||||||
|
|
||||||
|
## Почта (2026-03-07)
|
||||||
|
- Системная почта: support@dttb.ru через mail.dttb.ru:587 STARTTLS
|
||||||
|
- Mail app: аккаунт support@dttb.ru (IMAP mail.dttb.ru:993 SSL, SMTP mail.dttb.ru:587 STARTTLS)
|
||||||
|
- SSL: LE-сертификат скопирован с NPM (cert ID:106) на Mailcow
|
||||||
|
- Cron: /opt/sync-le-cert.sh на Mailcow — ежедневно 04:00 синхронизирует LE cert с NPM
|
||||||
|
- DNS override: mail.dttb.ru → 10.0.0.107 на OpenWrt (dnsmasq domain record)
|
||||||
|
- app.mail.verify-tls-peer=true (LE cert валидный)
|
||||||
|
|
||||||
|
## Home Assistant интеграция (2026-03-07)
|
||||||
|
- Приложение: integration_homeassistant v0.0.7
|
||||||
|
- HA URL: http://10.0.0.155:8123 (VM 127, haos-17.0)
|
||||||
|
- HA user: dttb / 1qaz!QAZ
|
||||||
|
- Long-Lived Access Token (365 дней, имя "Nextcloud Integration"):
|
||||||
|
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiI3OTgyNzZmZGE3OWM0ODgxYWU1ZGJjMWMwYTNhOWM0ZiIsImlhdCI6MTc3Mjg4OTQ4NywiZXhwIjoxODA0NDI1NDg3fQ.c_6wHfui9YJEtUJoJwbHsMnBzHET-pjEPSWqrthcH18
|
||||||
|
- Виджет "Умный дом" (Jinja2 template, обновление 60 сек):
|
||||||
|
погода, присутствие, iPhone батарея/локация, восход/закат, NC статистика (диск/RAM/CPU/онлайн)
|
||||||
|
- Виджет "Устройства" (YAML, WebSocket real-time):
|
||||||
|
медиаплееры (Спальня, VLC), камеры PVZ (6 датчиков движения), NC бинарные сенсоры
|
||||||
|
- 170 сущностей в HA: 70 sensors, 24 cameras, 39 device_trackers, 14 binary_sensors, 2 media_players, 1 weather
|
||||||
|
- NPM proxy: home.dttb.ru → http://10.0.0.155:8123 (proxy host #16)
|
||||||
|
|
||||||
|
## Troubleshooting (2026-03-07)
|
||||||
|
- Контейнеры остановились при обновлении, OnlyOffice был удалён
|
||||||
|
- Nextcloud зависал на "Waiting for OnlyOffice to become available..."
|
||||||
|
- Решение: через AIO API включить OnlyOffice, затем Stop+Start через AIO
|
||||||
|
- AIO login блокируется при работающем Apache — патч isLoginAllowed() или docker stop apache
|
||||||
|
- AIO_URL передаётся как env при создании контейнера — для обновления нужен Stop+Start через AIO
|
||||||
|
- spreed (Talk) удаляется при перезапуске если isTalkEnabled=false
|
||||||
|
|
||||||
|
## SSH команды (шаблоны)
|
||||||
|
```bash
|
||||||
|
# SSH подключение
|
||||||
|
sshpass -p '1qaz!QAZ' ssh -o StrictHostKeyChecking=no -o PreferredAuthentications=password cloud@10.0.0.230
|
||||||
|
|
||||||
|
# Docker через sudo
|
||||||
|
python3 << 'PYEOF'
|
||||||
|
import subprocess
|
||||||
|
cmd = ['sshpass', '-p', '1qaz!QAZ', 'ssh', '-o', 'StrictHostKeyChecking=no', '-o', 'PreferredAuthentications=password', 'cloud@10.0.0.230']
|
||||||
|
commands = "echo '1qaz!QAZ' | sudo -S docker ps -a --format '{{.Names}} | {{.Status}}' 2>&1 | grep -v 'пароль для'"
|
||||||
|
result = subprocess.run(cmd + [commands], capture_output=True, text=True, timeout=15)
|
||||||
|
print(result.stdout)
|
||||||
|
PYEOF
|
||||||
|
```
|
||||||
60
claude-memory/niikn-nextcloud.md
Normal file
60
claude-memory/niikn-nextcloud.md
Normal file
@@ -0,0 +1,60 @@
|
|||||||
|
# Nextcloud НИИКН (niikn.com)
|
||||||
|
|
||||||
|
## Инфраструктура
|
||||||
|
- Proxmox НИИКН: 192.168.1.201, root / 1qaz!QAZ, node: pve
|
||||||
|
- VM 100: Cloud-nc-AIO (running)
|
||||||
|
- VM 108: Nextclaud-AIO (running) — основной NC
|
||||||
|
- VM IP: 192.168.1.200, SSH не работает (пароль не подходит)
|
||||||
|
- AIO интерфейс: https://192.168.1.200:8080 (login заблокирован пока NC работает)
|
||||||
|
- Portainer: https://192.168.1.200:9443 (пароль admin/1qaz!QAZ не подходит)
|
||||||
|
- NC внутренний порт: http://192.168.1.200:11000
|
||||||
|
- NC Talk версия: 22.0.9
|
||||||
|
- AIO auto-login: через NC → Администрирование → Обзор (IP в ссылке 192.168.1.147, реальный 192.168.1.200)
|
||||||
|
|
||||||
|
## Другие VM на Proxmox НИИКН
|
||||||
|
| VMID | Name | Status |
|
||||||
|
|------|------|--------|
|
||||||
|
| 100 | Cloud-nc-AIO | running |
|
||||||
|
| 101 | VPN | stopped |
|
||||||
|
| 103 | Win11 | running |
|
||||||
|
| 104 | Win2025 | running |
|
||||||
|
| 106 | Mailcow | running |
|
||||||
|
| 107 | Matrix | running |
|
||||||
|
| 108 | Nextclaud-AIO | running |
|
||||||
|
| 111 | KasmOS | stopped |
|
||||||
|
|
||||||
|
## VPS 89.111.131.105 — HPB (ОТКЛЮЧЕН)
|
||||||
|
- Использовался для HPB Talk (signaling + janus + coturn + nats)
|
||||||
|
- Все сервисы остановлены и отключены (signaling, janus, nats, coturn)
|
||||||
|
- DNS: turn.niikn.com → 89.111.131.105
|
||||||
|
- Сертификат LE для turn.niikn.com (certbot)
|
||||||
|
- coturn secret: ebf6a8ce0fd1629c2da55356169feea7ab118a18368c2550
|
||||||
|
- signaling backend secret: eba8b0547b0285a475157911300720f99886fe1202a3ca98
|
||||||
|
|
||||||
|
## NC Talk — текущее состояние (2026-03-03)
|
||||||
|
- signalingMode: internal (HPB НЕ настроен)
|
||||||
|
- signaling_servers: ПУСТО (очищено при откате VPS конфига)
|
||||||
|
- stun_servers: ["stun.nextcloud.com:443"]
|
||||||
|
- turn_servers: [] (пусто)
|
||||||
|
- Встроенный AIO сигнальный сервер РАБОТАЕТ: https://niikn.com/standalone-signaling/ (v2.1.0~docker)
|
||||||
|
- signaling_token_privkey_es256: есть (JWT v2.0 auth)
|
||||||
|
- Проблема: signaling_servers не прописан → "Конфигурация Nextcloud Talk не завершена"
|
||||||
|
|
||||||
|
## Что нужно сделать для Talk
|
||||||
|
1. Через AIO интерфейс (https://192.168.1.200:8080) перезапустить контейнеры Talk
|
||||||
|
2. AIO автоматически пропишет signaling_servers с правильным shared secret
|
||||||
|
3. После этого проверить что signalingMode стал "external" и HPB работает
|
||||||
|
|
||||||
|
## История изменений
|
||||||
|
- 2026-03-03: Попытка настроить HPB на VPS для звонков через сотовую сеть
|
||||||
|
- Настроен coturn с TLS на порту 443 (turn.niikn.com)
|
||||||
|
- Отключен HTTP/2 на NPM для совместимости с Talk
|
||||||
|
- Звонки по сотовой сети так и не заработали (баг iOS Talk — IPv6 ULA, ICE timeout)
|
||||||
|
- Пользователь решил откатить: VPS не нужен, в AIO всё работало и без него
|
||||||
|
- Все VPS сервисы остановлены, signaling_servers очищены
|
||||||
|
- Осталось: перезапустить AIO контейнеры Talk чтобы восстановить встроенный HPB
|
||||||
|
|
||||||
|
## NPM (Nginx Proxy Manager)
|
||||||
|
- На 192.168.1.22 (НИИКН сеть)
|
||||||
|
- HTTP/2 отключен для niikn.com (для совместимости с Talk)
|
||||||
|
- Файл: /data/compose/2/data/nginx/proxy_host/4.conf
|
||||||
68
claude-memory/servicedesk-dttb.md
Normal file
68
claude-memory/servicedesk-dttb.md
Normal file
@@ -0,0 +1,68 @@
|
|||||||
|
# Проект: ServiceDesk dttb
|
||||||
|
Статус: ПЛАНИРОВАНИЕ (создан 2026-03-09)
|
||||||
|
|
||||||
|
## Концепция
|
||||||
|
Единая система приёма и обработки заявок от клиентов через 3 канала:
|
||||||
|
- Веб-портал (support.dttb.ru) — чат-виджет, форма заявки, FAQ, проверка статуса
|
||||||
|
- Telegram — новый бот @dttb_support_bot (AI на Claude)
|
||||||
|
- Email — support@dttb.ru (через Mailcow)
|
||||||
|
|
||||||
|
## Архитектура
|
||||||
|
- **Freescout** — бэкенд (тикеты, очереди, SLA, отчёты, операторы)
|
||||||
|
- **Новый Telegram-бот (clawdbot-3)** — AI-фронт для клиентов
|
||||||
|
- **Существующие боты** — маршрутизация заявок между организациями
|
||||||
|
|
||||||
|
## Компоненты
|
||||||
|
|
||||||
|
| Компонент | Где | VMID | IP | Статус |
|
||||||
|
|-----------|-----|------|----|--------|
|
||||||
|
| Freescout + веб-портал | LXC, домашний Proxmox | 135 (план) | TBD | Не создан |
|
||||||
|
| clawdbot-3 (support bot) | LXC, домашний Proxmox | 136 (план) | TBD | Не создан |
|
||||||
|
| support@dttb.ru | Mailcow VM 107 | 107 | 10.0.0.107 | Не создан |
|
||||||
|
| support.dttb.ru | NPM CT 103 | 103 | 10.0.0.195 | Не создан |
|
||||||
|
|
||||||
|
## Очереди Freescout
|
||||||
|
- **Клиенты (public)** — внешние заявки (веб, Telegram, email)
|
||||||
|
- **НИИКН** — внутренние заявки НИИКН (от clawdbot-1)
|
||||||
|
- **ЧОП** — заявки по охране/камерам (от clawdbot-2)
|
||||||
|
|
||||||
|
## Межботовая маршрутизация
|
||||||
|
- Все боты общаются через Freescout API (единый хаб)
|
||||||
|
- clawdbot-3 → Freescout → очередь по категории → нужный бот/оператор
|
||||||
|
- clawdbot-1 (НИИКН) может создать тикет в очередь ЧОП и наоборот
|
||||||
|
- Webhook из Freescout → бот уведомляет клиента о решении
|
||||||
|
|
||||||
|
## Модули Freescout (платные, разово ~$76)
|
||||||
|
- Live Chat ($19) — виджет чата на сайте
|
||||||
|
- Telegram ($15) — интеграция с ботом
|
||||||
|
- Contact Form ($9) — веб-форма заявки
|
||||||
|
- Knowledge Base ($19) — FAQ на сайте
|
||||||
|
- Auto Reply ($5) — «Заявка #N принята»
|
||||||
|
- Satisfaction ($9) — оценка качества
|
||||||
|
|
||||||
|
## Новый бот (clawdbot-3)
|
||||||
|
- Telegram: @dttb_support_bot (зарегистрировать в BotFather)
|
||||||
|
- Модель: cliproxy/claude-sonnet-4-6 (через CLIProxy на 129:8317)
|
||||||
|
- Персона: вежливый формальный саппорт, без доступа к инфраструктуре
|
||||||
|
- Skill: helpdesk (работа с Freescout API)
|
||||||
|
- Не знает паролей/IP, не выполняет команды — только общение + тикеты
|
||||||
|
|
||||||
|
## Веб-портал (support.dttb.ru)
|
||||||
|
- Чат-виджет (Freescout Live Chat)
|
||||||
|
- Форма заявки (имя, email, тема, описание)
|
||||||
|
- FAQ / база знаний
|
||||||
|
- Проверка статуса заявки по номеру
|
||||||
|
- Ссылки на Telegram-бот и email
|
||||||
|
|
||||||
|
## План развёртывания
|
||||||
|
1. [ ] Создать LXC 135 на домашнем Proxmox → Freescout (PHP+MariaDB+Nginx)
|
||||||
|
2. [ ] Настроить support.dttb.ru в NPM
|
||||||
|
3. [ ] Создать support@dttb.ru в Mailcow, подключить IMAP к Freescout
|
||||||
|
4. [ ] Купить и установить модули Freescout (Telegram, Live Chat, KB, etc.)
|
||||||
|
5. [ ] Зарегистрировать @dttb_support_bot в BotFather
|
||||||
|
6. [ ] Создать LXC 136 → clawdbot-3 (клон шаблона clawdbot)
|
||||||
|
7. [ ] Написать skill helpdesk (Freescout API: create/read/update тикеты)
|
||||||
|
8. [ ] Написать SOUL.md — персона публичного саппорта
|
||||||
|
9. [ ] Подключить clawdbot-1 и clawdbot-2 к Freescout API
|
||||||
|
10. [ ] Сверстать веб-портал support.dttb.ru
|
||||||
|
11. [ ] Тестирование полного цикла: заявка → AI-обработка → эскалация → решение → уведомление
|
||||||
39
claude-memory/videonablyudenie.md
Normal file
39
claude-memory/videonablyudenie.md
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
# Видеонаблюдение Знаменское — ключевая информация
|
||||||
|
|
||||||
|
## VPS для видеонаблюдения
|
||||||
|
- IP: 89.111.140.86 (другой VPS, НЕ 89.111.131.105 который для NC Talk)
|
||||||
|
- SSH: ключ id_rsa
|
||||||
|
- WireGuard: wg0, 10.5.0.1/24, порт 51820/UDP
|
||||||
|
- Конфиг WG: /etc/wireguard/wg0.conf
|
||||||
|
- iptables: /etc/iptables/rules.v4
|
||||||
|
|
||||||
|
## Локация 1: Знаменское 29 (WG 10.5.0.2)
|
||||||
|
- 1 камера HiWatch: 192.168.88.42 (admin/1qaz!QAZ)
|
||||||
|
- Mikrotik: 192.168.88.1 (admin/admin01)
|
||||||
|
- Внешний доступ: :8080(web) :8082(SDK) :8554(RTSP)
|
||||||
|
|
||||||
|
## Локация 2: Охотхозяйство (WG 10.5.0.3)
|
||||||
|
- NVR: 192.168.8.247 (admin/1qaz!QAZ)
|
||||||
|
- Mikrotik: 192.168.8.1 (admin/1qaz!QAZ)
|
||||||
|
- OpenWrt NetBird: 192.168.8.108 (root/1qaz!QAZ)
|
||||||
|
- 6 камер: .2, .3, .102, .110, .113, .120
|
||||||
|
- Внешний доступ NVR: :8180(web) :8100(SDK) :8555(RTSP)
|
||||||
|
- Камеры напрямую: RTSP :8561-8566, SDK :8201-8206
|
||||||
|
|
||||||
|
## Локация 3: Знаменское Home (WG 10.5.0.4)
|
||||||
|
- NVR: 192.168.1.123 (admin/1qaz!QAZ)
|
||||||
|
- ONT Huawei: 192.168.100.1 (root/admin)
|
||||||
|
- OpenWrt_3 WAN: 192.168.100.3 (root/1qaz!QAZ), LAN: 10.3.0.1, NetBird: 100.70.54.204
|
||||||
|
- UDM Pro: 10.3.0.175 (SSH: k9gLi2C / xdjM0eQkIeZfmCFBYo9DP)
|
||||||
|
- WG приватный ключ: 4C9B6iHRRARQfFGBoXimIeznJKj8NX7QmUBW3O+pklE=
|
||||||
|
- Внешний доступ NVR: :8280(web) :8282(SDK) :8284(RTSP)
|
||||||
|
- Цепочка: VPS → WG → OpenWrt_3 → UDM Pro → NVR
|
||||||
|
|
||||||
|
## Особенности
|
||||||
|
- UDM Pro: SSH работает, но веб-интерфейс Ubiquiti не работает
|
||||||
|
- OpenWrt_3: podkop/sing-box может мешать TCP, при проблемах: service podkop stop; service sing-box stop
|
||||||
|
- NetBird маршрут NIIKN для 192.168.1.0/24 деселектирован (конфликт с WG)
|
||||||
|
- Huawei ONT иногда зависает — перезагрузка помогает
|
||||||
|
|
||||||
|
## Документация
|
||||||
|
- Nextcloud: Документация/Проекты/videonablyudenie-znam.md
|
||||||
70
claude-memory/znamenskoe-home.md
Normal file
70
claude-memory/znamenskoe-home.md
Normal file
@@ -0,0 +1,70 @@
|
|||||||
|
# Знаменское Home — сетевая инфраструктура
|
||||||
|
|
||||||
|
## Статус: ожидание provision UniFi (2026-03-09)
|
||||||
|
- Нужно: Force Provision UniFi gateway через unifi.ui.com → Devices
|
||||||
|
- После этого SSH-ключи применятся и можно продолжить
|
||||||
|
|
||||||
|
## Роутер Cudy TR3000 v1 (OpenWrt 24.10.3)
|
||||||
|
- Netbird: 100.70.54.204, SSH: root / 1qaz!QAZ (ключ установлен)
|
||||||
|
- WAN: 192.168.100.2 (DHCP от ISP router 192.168.100.1, MAC 38:4c:4f:0e:7f:b8)
|
||||||
|
- LAN: 10.3.0.1/24 (br-lan, eth1)
|
||||||
|
- Wi-Fi: ВЫКЛЮЧЕН (radio0 2g + radio1 5g disabled)
|
||||||
|
- VPN: AmneziaWG (awg0, 10.8.1.7 → 202.71.12.186:37209), WireGuard (wg0, 10.5.0.4 → 89.111.140.86:51821)
|
||||||
|
- Netbird: wt0, 100.70.54.204
|
||||||
|
- Podkop v0.6.2: VLESS-Reality proxy + awg0 VPN, community lists: russia_inside, hodca
|
||||||
|
- DNS: через podkop (127.0.0.42), bootstrap 77.88.8.8
|
||||||
|
- Route: 192.168.1.0/24 via 10.3.0.175 (UniFi)
|
||||||
|
- Единственный клиент на LAN: 10.3.0.175 (UniFi, MAC 9c:05:d6:ac:98:b8)
|
||||||
|
|
||||||
|
## UniFi Gateway (10.3.0.175 WAN / 192.168.1.1 LAN)
|
||||||
|
- MAC: 9c:05:d6:ac:98:b8 (Ubiquiti)
|
||||||
|
- Cloud-managed: unifi.ui.com, Network 7.4.162
|
||||||
|
- SSH: admin, пароль установлен 1qaz!QAZ (но не работает — нужен provision)
|
||||||
|
- SSH-ключи добавлены: claude-code (RSA 4096), windows-claude (RSA 2048)
|
||||||
|
- Все порты закрыты с WAN (10.3.0.x) стороны — управление только с LAN или cloud
|
||||||
|
- Firewall rule "Allow SSH WAN" создан (тип "Интернет подключен", TCP 22)
|
||||||
|
- Шлюз для сети 192.168.1.0/24
|
||||||
|
|
||||||
|
## TP-Link Deco P9 (3 ноды)
|
||||||
|
- 192.168.1.187 — HTTPS /webpages/index.html (tpEncrypt.js)
|
||||||
|
- 192.168.1.196 — HTTPS /webpages/index.html
|
||||||
|
- 192.168.1.208 — HTTPS /webpages/index.html
|
||||||
|
|
||||||
|
## Устройства в сети 192.168.1.0/24 (из Cudy ping sweep, ~43 хоста)
|
||||||
|
### HTTP 200 (вероятно камеры):
|
||||||
|
192.168.1.20, .40, .41, .42, .46, .47, .49, .56, .57, .58, .63, .64, .69, .70, .100, .101, .123
|
||||||
|
- 192.168.1.100: NETSurveillance WEB (NVR/DVR)
|
||||||
|
- 192.168.1.123: web interface (без title)
|
||||||
|
|
||||||
|
### HTTP 307 → HTTPS (TP-Link Deco):
|
||||||
|
192.168.1.187, .196, .208
|
||||||
|
|
||||||
|
### SSH open (ssh-rsa,ssh-dss — возможно камеры):
|
||||||
|
192.168.1.16, .66, .96, .173, .213, .220
|
||||||
|
|
||||||
|
### Без HTTP/SSH (IoT/прочее):
|
||||||
|
192.168.1.7, .29, .38, .75, .114, .119, .127, .133, .135, .142, .155, .173, .188, .189, .239, .246, .248, .252
|
||||||
|
|
||||||
|
## Windows jump host
|
||||||
|
- Netbird: 100.70.0.106
|
||||||
|
- LAN: 192.168.1.135
|
||||||
|
- Hostname: DESKTOP-AGBMLPN
|
||||||
|
- SSH: claude / 1qaz1QAZ (OpenSSH Server установлен)
|
||||||
|
- Назначение: видеонаблюдение для ЧОП
|
||||||
|
- Пользователь HP без пароля (основной)
|
||||||
|
|
||||||
|
## Известные проблемы
|
||||||
|
1. Wi-Fi на Cudy выключен — нормально, раздаёт UniFi/Deco
|
||||||
|
2. UniFi SSH не применён — нужен Force Provision
|
||||||
|
3. Cudy RAM 497MB, load ~1.0 — норма
|
||||||
|
4. dmesg ошибка: RTL8221B-VB-CG 2.5Gbps PHY config_init failed: -110 (возможно не критично)
|
||||||
|
5. odhcpd: "No default route present, overriding ra_lifetime to 0!" (IPv6 RA issue)
|
||||||
|
|
||||||
|
## TODO после provision UniFi
|
||||||
|
- SSH на UniFi → получить полную конфигурацию
|
||||||
|
- Определить модель UniFi (UDM/USG/UDR)
|
||||||
|
- Получить DHCP leases с UniFi
|
||||||
|
- Проверить конфигурацию Wi-Fi
|
||||||
|
- Проверить TP-Link Deco P9 (mesh, каналы, проблемы)
|
||||||
|
- Составить полную топологию
|
||||||
|
- Сканировать на проблемы
|
||||||
Reference in New Issue
Block a user