Commit Graph

114 Commits

Author SHA1 Message Date
kb-audit-bot
ae5eb91280 kb-audit-bot: auto-apply drift 2026-05-17
+ VMID 128 (LXC profi-parser, stopped)

Skipped (too complex for auto-apply):
  VMID 131 (VM ubuntu, running) — требует ручной правки (running → новая секция)
  VMID 139 (LXC severny-les, running) — требует ручной правки (running → новая секция)
2026-05-17 06:01:27 +00:00
368a14107d code-server auto-sync 2026-05-10T06:05:02+00:00 2026-05-10 06:05:02 +00:00
97841320f2 code-server auto-sync 2026-05-07T07:10:01+00:00 2026-05-07 07:10:01 +00:00
dttb
d00d856513 projects: вынес Бужарово в отдельную папку buzharovo/
Server1C — это самостоятельный объект (организация в Бужарово), не часть
домашней инфраструктуры dttb. Переношу projects/dttb/server1c.md →
projects/buzharovo/server1c.md, добавляю README.md как точку входа,
обновляю обратные ссылки.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-07 10:05:44 +03:00
329a280cb3 code-server auto-sync 2026-05-07T07:05:01+00:00 2026-05-07 07:05:01 +00:00
dttb
6dabc7749c Бужарово 1С: рецепт rmngr-loop после грязного ребута
Симптом: rmngr держит >100% ядра в idle, rac не отвечает, локальные пользователи жалуются на тормоза. Полный ребут сервера НЕ помогает. Лечится Restart-Service '1C:Enterprise 8.3 Server Agent (x86-64)'.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-07 10:03:07 +03:00
d82531ec58 code-server auto-sync 2026-05-06T13:55:02+00:00 2026-05-06 13:55:02 +00:00
dttb
47394e668e Phase 9 (улучшения автоматизации):
A. kb-autosync.sh переписан: pull → regenerate index → commit → push.
   После каждого push с Mac индекс objects-map.json и _index.md
   обновляются автоматически на code-server (LXC 132).

B. kb-objects-map.py + kb-objects-audit.py добавлены в воскресный
   weekly cron на LXC 132 — health-check автогенерируется раз в неделю.

C. Чистка битых wiki-ссылок (score 84 → 9):
   - notes/govru-diagnosis → projects/niikn/govru-quickfix-playbook (2)
   - claude-memory/podkop → 2026-04-17-peredelki-podkop-stability-fix
   - [[../snippets/clients/]] → snippets/clients/ (текстом, 2)
   - [[feedback_*]] (user memory) → backtick-cited (2)
   - [[../znamenskoye/]] → [[../znamenskoye/README]] (4)

   Скрипт kb-objects-audit.py улучшен: regex теперь требует [[...]] с
   двойной скобкой (не одной), исключает audit/ и CLAUDE.md (placeholder
   и autogen).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-06 16:52:16 +03:00
94aae3ca26 code-server auto-sync 2026-05-06T13:50:01+00:00 2026-05-06 13:50:01 +00:00
dttb
d4433bd0a8 Phase 4: обогатить frontmatter проектов + 6 новых stub'ов
Существующие проекты получили frontmatter с aliases для FTS / objects-map:
  niikn  — Cloud-NIIKN New niikn.com, pve-niikn, Kripto-ARM, M.Maul
  dttb   — Work Server dttb, code-server, rustdeskserver, MacBook-Pro, ...
  glavtorg, krasnogorsk, zelenograd — добавлен frontmatter с aliases

Создано 6 новых README:
  projects/znamenskoye/README.md  — был отсутствующий index 3-х объектов
  projects/mmfb/README.md         — был отсутствующий index ММФБ + LionART
  projects/sergey/README.md       — stub OpenWrt_Sergey (Одинцово)
  projects/benilux/README.md      — stub OpenWrt Benilux (Истра)
  projects/vishnevyy-sad/README.md — stub Константин (Москва)
  projects/openwrt-4/README.md    — stub анонимный OpenWrt_4

Обновлён scripts/kb-objects-map.py: exact-match вместо substring (избегает FP
вроде alias 'cloud' ⊂ 'Cloud-NIIKN New niikn.com'). Aliases теперь должны
содержать полные имена пиров как в netbird-inventory.

Метрика: с 38 orphan-пиров до 14. Остаток — реально неклассифицированные
клиентские машины без явной привязки к проекту (Денис Тихая, DESKTOP-2IOQS54
и др.) — задача для отдельного шага обогащения.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-06 16:25:44 +03:00
dttb
b16ecdae37 Phase 3: scripts/kb-objects-map.py + audit/objects-map.json + projects/_index.md
Авто-генератор реестра: парсит netbird-inventory + frontmatter каждого проекта,
выводит JSON для бота и человекочитаемый index с wiki-ссылками.

Пока 16 проектов / 38 orphan-пиров без своих карточек — выявленные дыры станут
input для Фазы 4 (stub-генератора). Скрипт идемпотентный, без deps (pure stdlib),
запуск: cd ~/knowledge-base && python3 scripts/kb-objects-map.py

Парсер обрабатывает offline-таблицу netbird (другой порядок колонок), normalize
ye→e уравнивает Знаменское/Znamenskoe. Source of truth — frontmatter каждого
проекта; добавление aliases/owner/region там сразу подхватится при следующем run.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-06 16:17:05 +03:00
dttb
cda539b9a1 Phase 5.1 (часть 2): docce ссылку и aliases — после удаления video-surveillance-report
Должно было войти в предыдущий коммит, но git add был пропущен.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-06 16:06:59 +03:00
dttb
bac376992d Phase 5.1: слить дубли видеонаблюдения — оставить videonablyudenie-znam как canonical
- удалён projects/dttb/video-surveillance-report.md (старая неполная копия от 2026-03-13, без секции AgentDVR ЧОП)
- canonical videonablyudenie-znam.md обогащён aliases для FTS (видеонаблюдение Знаменское, камеры Охотхозяйство, AgentDVR ЧОП, swtest video)
- projects/dttb/README.md убрана ссылка на удалённый файл

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-06 16:04:45 +03:00
dttb
80fd8ca7bf Липки: карточка объекта (клиент Антон, Cudy TR3000 100.70.35.234, белый WAN 5.101.135.71) + рецепт Gitea→openclaw kb-pull webhook
Закрывает причину #1 путаницы Максимки на запросах вида "OpenWRT Липки": слово "Липки" во всём vault встречалось только одной строкой в netbird-inventory, FTS вытаскивал НИИКН по статистике слова "OpenWRT".

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-06 14:03:36 +03:00
d9c00c31e0 code-server auto-sync 2026-05-06T10:30:01+00:00 2026-05-06 10:30:01 +00:00
f6bf12ccf9 code-server auto-sync 2026-05-06T10:25:01+00:00 2026-05-06 10:25:01 +00:00
dttb
2a03207385 playbook НИИКН: добавлен economy.gov.ru override (для fgistp.economy.gov.ru / Минэк ФГИС ТП) 2026-05-04 13:33:44 +03:00
dttb
9fe499fc6e playbook НИИКН: gov.ru quickfix (5 классов проблем + текущий реестр overrides/routes/IDs) 2026-05-04 12:48:19 +03:00
dttb
93ade1c65b diagrams: добавлены mermaid-схемы для НИИКН и Знаменского 2026-05-04 10:10:33 +03:00
dttb
d2969b4751 manual sync: добавлены mermaid-диаграммы dttb network-topology 2026-05-04 08:52:32 +03:00
dttb
ca3b0615d5 НИИКН: NotebookLM/Google AI через AWG-Финляндия для всей сети
podkop user_domains на 192.168.1.50 — 5 доменов (notebooklm.google[.com],
generativelanguage.googleapis.com, aistudio.google.com, labs.google).
Клиенты по DHCP ходят на dnsmasq 192.168.1.50, FakeIP-маршрут
198.18.0.0/15→OpenWrt уже на MikroTik — для Оксаны и всего офиса
ничего на ПК настраивать не надо.
2026-04-30 22:55:30 +03:00
dttb
d58873368a RustDesk: pre-prod security audit + операционный runbook
Аудит перед запуском в прод. Найдены и исправлены critical и medium issues:

Critical (fixed):
- File permissions 644 → 600/640 для id_ed25519, БД, config.yaml
- Нет logrotate (диск 2GB зальётся) → /etc/logrotate.d/rustdesk
- Нет авто-бэкапа → daily cron 03:00 в /root/rustdesk-backups/

Medium (fixed):
- Brute-force на /api/admin/login → NPM rate-limit 5r/m

Medium (deferred):
- NC share без пароля (NC сейчас down — отдельный task)
- Security headers не наследуются в location / (NPM template limitation)

Документация:
- decisions/2026-04-30-rustdesk-pre-prod-audit.md — полный отчёт
- projects/dttb/rustdesk-runbook.md — операционный runbook (recovery,
  troubleshooting, onboarding, updates)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-30 10:42:19 +03:00
dttb
3ec0cb8dcf openwrt-homelab: AdGuard Home в DNS-цепочке, блокировка YouTube ads
Цепочка: LAN → dnsmasq:53 → AGH:5353 → sing-box:127.0.0.42 → upstream.
podkop dont_touch_dhcp=1, dnsmasq.server=127.0.0.1#5353. Добавлены
HaGeZi Pro mini, BlocklistProject YouTube, GoodbyeAds YouTube AdBlock.
user_rules очищены от поломанного YAML. Проверено: ad-домены → 0.0.0.0,
fakeip подкопа цел, обычные сайты резолвятся.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-30 00:25:19 +03:00
dttb
9e256a8e30 НИИКН clawdbot: миграция LXC 133 → LXC 114 (Maxim-Maul-Assistant), фикс crash-loop, новые скиллы (docx/xlsx/nc_save), credentials НИИКН в отдельный файл
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-29 23:21:28 +03:00
dttb
53091aadcf Kripto-ARM (NIIKN VM 103): SSH+oleg/oksana, RustDesk на remot.dttb.ru, юзер oksana в admin-панели 2026-04-29 23:16:42 +03:00
dttb
c1c7ccc654 Сергей (Знаменское) — Happ Finland 5870, инструкция + QR + US Apple ID
- snippets/clients/sergey-znamenskoye-happ-setup.md: персональная инструкция с готовым сообщением и блоком про US Apple ID hbuggle819
- snippets/assets/vpn-finland-5870-sergey-znamenskoye-20260429.png: QR vless-ссылки
- projects/dttb/vpn-clients.md: запись клиента №2 (UUID 4798936b)
2026-04-29 22:35:42 +03:00
dttb
5ee66a2a2d LXC 139 (yaroslav-assistant) удалён — тестовый openclaw для Ярослава, не использовался; конфиги в archive/ 2026-04-29 15:31:14 +03:00
dttb
fe27154eb1 Ярославу выдан Happ-доступ на Finland HOSTKEY 202.71.12.186:9443 2026-04-29 15:19:36 +03:00
dttb
f32c9c9b58 RustDesk admin pw сменён на стандартный 1qaz!QAZ
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-29 09:12:38 +03:00
dttb
93cd14d82a RustDesk: deployment-пакет в Nextcloud "RustDesk install/" для всех платформ
Готовые установщики 1.4.6 + автоматические скрипты для Win/Linux/macOS/Android.
Скрипты ставят RustDesk silent, кладут RustDesk2.toml с настройками
remot.dttb.ru, генерят permanent password per-machine, выводят ID+pw.

Папка ~766 MB в корне NC. Олег сделает public share-link с паролем.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-29 08:52:05 +03:00
dttb
5956b21fcc ММФБ Юрий: апгрейд Win10→Win11 25H2 + отчёт клиенту PDF 2026-04-29 07:51:50 +03:00
dttb
441491ea5d RustDesk web-client: TLS termination 21118/21119 + ports в compose NPM
NPM stack пересоздан с публикацией портов 21115-21119. Compose-файл теперь
лежит на host /data/compose/2/docker-compose.yml (Portainer хранил только
в своём volume — теперь синхронизированы). Custom stream.conf с TLS
termination для 21118/21119 в /data/compose/2/data/nginx/custom/.

wss://remot.dttb.ru:21118/ws/id и /ws/relay отвечают 101 Switching Protocols.
WebClient доходит до hbbr с relay request, но peer должен быть online +
залогинен в API чтобы соединение установилось.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-28 23:26:05 +03:00
dttb
ebe435842d RustDesk: задокументировать что NPM streams недоступны извне и web-client отложен
При попытке завести web-client (wss://remot.dttb.ru:21118) выяснилось что
docker port для NPM публикует только 80/81/443. Streams 21115-21119
работают только внутри docker-сети — desktop-клиенты ходят на 10.0.0.244
напрямую через LAN/NetBird. Web-client требует rebuild NPM compose с ports.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-28 13:29:35 +03:00
dttb
5f40c26718 RustDesk LXC 116: NPM rewrite /webclient2/ → /webclient/
Админка lejianwen-api 2.7 при клике на peer открывает /webclient2/#/<id>,
но api отдаёт Flutter WebClient на /webclient/. Без rewrite получаем 404.
Добавлен return 301 в advanced_config NPM Proxy Host 14 — hash остаётся
в браузере, peer-id корректно подхватывается Flutter-app.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-28 12:24:29 +03:00
dttb
da0b57e26c RustDesk LXC 116: миграция OSS → lejianwen-pro 1.1.14 (MUST_LOGIN=Y)
- Подмена hbbs/hbbr на pro-бинари из docker lejianwen/rustdesk-server-s6, apt-mark hold
- Systemd overrides: hbbs --must-login Y -k _ -r remot.dttb.ru:21117; hbbr -k _
- config.yaml: lang ru, домен remot.dttb.ru, ключ + jwt прописаны, swagger on
- NPM Proxy Host 14: forward 10.0.0.244, SSL force, http2, /ws/id /ws/relay locations
- NPM streams 21115-21119 пересозданы (id 38-43), Stream 30 удалён
- Admin pw сменён, бэкап + rollback-скрипт в /root/rustdesk-* на LXC 116
- Ключ id_ed25519 идентичен до/после, 13 peers продолжают работать

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-28 12:20:17 +03:00
dttb
8599da3eeb openclaw 2026.4.24: фиксы bonjour crash-loop и FakeIP DNS
Два независимых фейла за один инцидент 2026-04-27:

1. Bonjour-плагин валит node на CIAO PROBING/ANNOUNCEMENT CANCELLED
   (mDNS не работает в LXC). Fix: plugins.entries.bonjour.enabled=false.
   Не лечится npm install openclaw@latest.

2. /etc/resolv.conf смотрел на 10.0.0.1 (LionART/Mihomo), который
   отдавал FakeIP 198.18.0.6 для api.telegram.org — из LXC такой
   трафик некуда маршрутизировать. Fix: nameserver 1.1.1.1 8.8.8.8
   через pct set --nameserver (резолвят через NetBird wt0).
2026-04-27 10:08:32 +03:00
dttb
65b3f58b9e obsidian auto-sync 2026-04-24 16:57:00 2026-04-24 16:57:00 +03:00
dttb
3818ffdff3 obsidian auto-sync 2026-04-24 16:00:39 2026-04-24 16:00:39 +03:00
dttb
e426c386c8 obsidian auto-sync 2026-04-24 15:30:00 2026-04-24 15:30:00 +03:00
dttb
f63aaca3ff obsidian auto-sync 2026-04-23 21:32:17 2026-04-23 21:32:17 +03:00
dttb
18159b9e45 obsidian auto-sync 2026-04-23 20:41:43 2026-04-23 20:41:43 +03:00
dttb
44f1f4be71 obsidian auto-sync 2026-04-23 20:11:25 2026-04-23 20:11:25 +03:00
dttb
4f17689e73 obsidian auto-sync 2026-04-23 19:56:16 2026-04-23 19:56:16 +03:00
dttb
885d39eeac glavtorg: отчёт о работах 2026-04-23 + реквизиты для оплаты (25 000 ₽)
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-23 13:37:59 +03:00
dttb
55a7ba8e4b obsidian auto-sync 2026-04-22 16:55:53 2026-04-22 16:55:53 +03:00
dttb
f203bf96e3 netbird: Claude-Diag setup-key + PowerShell-скрипт для Windows
Создан reusable setup-key tenant'а netbird.io для временных диагностических
подключений Claude к хостам. Группа Claude-Diag (d7jra32fadhs73dmqv5g),
ключ 83301E74-6F86-4CBD-AF77-0C65730103CA, истекает 2026-05-21.

snippets/netbird-claude-install.ps1 — идемпотентный PowerShell-скрипт:
ставит MSI, регистрирует в tenant, включает RDP и WinRM, открывает
firewall только для 100.70.0.0/16.

credentials.md — добавлена секция Netbird (API token, setup keys, команда
перевыпуска ключа).
2026-04-21 20:38:43 +03:00
dttb
c1819f96a8 VPS swtest.ru: настроен доступ с Mac и openclaw, добавлена документация
- SSH алиасы vps-znam / vps-znam-public в ~/.ssh/config (Mac) и /root/.ssh/config (LXC 137 openclaw)
- Приватный ключ vps_znam_key развёрнут на обоих хостах
- projects/dttb/vps-swtest.md — полная справка: пиры WG, DNAT-порты, сценарии
  заходов, безопасная правка wg0.conf через wg syncconf
- credentials.md — добавлена строка VPS в раздел SSH-ключи
- znamenskoye-ohothozyistvo.md — ссылка на новую справку VPS

TODO Олег: сохранить приватник в Bitwarden bit.dttb.ru
2026-04-21 20:08:46 +03:00
dttb
e34c46ce66 obsidian auto-sync 2026-04-20 11:52:44 2026-04-20 11:52:44 +03:00
dttb
0e054aaf97 obsidian auto-sync 2026-04-20 11:37:23 2026-04-20 11:37:23 +03:00
dttb
b778e0ce4f obsidian auto-sync 2026-04-20 10:10:22 2026-04-20 10:10:22 +03:00