mmfb/lionart-1c: SSH + фикс efsaveragent + накопленный backlog vault-а

Сегодня (mmfb / LionART 1C):
- projects/mmfb/lionart-1c.md — новый файл: VM 100 на pve LionART
  (WIN-70M2VEJIKEF, 10.253.1.240, Win Server 2022, 1С+SQL+Effector Saver),
  SSH-доступ claude/Kl@udeD1ag!2026 заведён, RDP под Администратор + 2FA.
- projects/mmfb/proxmox-inventory.md — hostname WIN-70M2VEJIKEF в VM 100.
- decisions/2026-05-28-mmfb-effector-saver-locked-admin.md — диагноз
  цикла 7038 (SCM-пароль разъехался с .\Администратор) + lockout учётки,
  и пошаговое решение (disable службы → ADSI unlock → LogonUser-проверка
  → sc.exe config password= → start auto).

Накопившийся backlog (без отдельной правки в эту сессию):
- decisions/: buzharovo (recon, migration-plan, 1c-licensing), sergey
  (instagram iPhone fakeip), amneziavpn macOS v1/v2 incompat, benelux
  compromise 2026-05-20, glavtorg autologon off, omni domain+update.
- projects/: benilux README, buzharovo README+server1c, dttb
  (nextcloud-talk-bot, npm-proxy-hosts, proxmox-inventory, vpn-clients),
  glavtorg, sergey README, projects/_index.
- claude-memory/: benelux, omniroute.
- snippets/mac-dictation/groq-dictate.sh.
- notes/claude/: ~80 авто-сохранённых транскриптов сессий за май.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
dttb
2026-05-28 21:56:35 +03:00
parent e994661bd7
commit bf565f1392
269 changed files with 9466 additions and 74 deletions

View File

@@ -0,0 +1,405 @@
---
date: 2026-05-07
type: decision
tags: [buzharovo, 1c, migration, recon]
status: complete
related:
- "[[projects/buzharovo/server1c]]"
- "[[projects/buzharovo/migration-prompt-2026-05-07]]"
- "[[decisions/2026-05-07-buzharovo-1c-rmngr-loop-after-crash]]"
---
# Бужарово 1С: разведка перед миграцией на HomeLab
**Дата:** 2026-05-07
**Метод:** WinRM (basic, через NetBird) с LXC 137 (openclaw) на Server1C 100.70.75.103. Read-only WMI/PowerShell/sqlcmd/ping.
**Цель:** собрать факты для плана миграции 1С с физического Server1C в Бужарово на HomeLab Proxmox 10.0.0.250.
---
## TL;DR
| Тема | Факт |
|---|---|
| Hardware | ASUS PRIME Z690M-PLUS D4 + i5-12400 (6c/12t) + 64GB DDR4 + 3×Samsung 980 PRO 500GB NVMe |
| OS | Windows Server 2012 R2 (build 9600), русский интерфейс |
| 1С | 8.3.27.1606, x64, ровно одна рабочая служба `1C:Enterprise 8.3 Server Agent (x86-64)` |
| MSSQL | SQL Server 2012 SP2 (11.2.5058) — **EOL с 2022-07-12** |
| Кластер 1С | 1 кластер `Server1C:1541` GUID `473f3f9e-...8700c7`, 4 инфобазы |
| Размер ИБ (на сервере) | 4 каталога в `srvinfo/reg_1541`: 7.3 / 4.8 / 15.2 / 12.0 GB (это **служебные данные кластера**, не SQL БД!) |
| Размер SQL БД | **НЕИЗВЕСТЕН**`dttb` не имеет SQL-логина, `sa`-пароль не подобран. Нужен у Олега. |
| Касса | **Сетевые ПК-кассы** `KASSA3` (192.168.1.18) и `KASSIRULICA2` (192.168.1.99). USB-фискальников на сервере НЕТ. |
| Лицензии 1С | HASP-ключа нет (служба `hasplms` Disabled), `.lic`-файлы не найдены → **программная онлайн-лицензия с привязкой к HWID** (риск!) |
| Активные сеансы | ~5 уникальных удалённых клиентов через 1С + терминальные RDP-юзеры |
| Сеть в офисе | 192.168.1.0/24, gw 192.168.1.1, 13 хостов |
| Канал | ping 1.1.1.1 = 3ms (отличный), ping 8.8.8.8 = 15ms |
| Latency до HomeLab (NetBird) | 9699ms стабильно |
| ИБП | **НЕТ** (`Win32_Battery` пуст) |
| Краши | 24 «грязных ребута» 04.05.2026 (Kernel-Power 41 + 6008), все Bug=0/Power=0 → отключение питания |
**Главные следствия для миграции:**
1. Касса не привязана к серверу физически → пробрасывать USB не нужно. Кассы перенаправят на новый IP 1С-сервера через NetBird.
2. Лицензия 1С — программная онлайн → перепривязка к новой VM сделается через 1С (PIN), но требует подготовки.
3. SQL БД на старой 2012 — нужен экспорт/импорт; новая VM может ставить MSSQL 2019/2022.
4. Нет ИБП + бытовая мать → крашы будут продолжаться, миграция оправдана.
---
## 1. Hardware и OS
### Платформа
```
Manufacturer: ASUSTeK COMPUTER INC.
Product: PRIME Z690M-PLUS D4
BIOS: AMI v1620, 2022-08-12
Computer model: ASUS / "System Product Name" (DIY-сборка, не серверный SKU)
RAM: 64 GB DDR4 (2 модуля по 32GB), без ECC
CPU: 12th Gen Intel(R) Core(TM) i5-12400 — 6 ядер / 12 потоков @ 2.5 GHz
Disks (NVMe): 3× Samsung SSD 980 PRO 500GB (NVMe), статус OK
SerialNumbers: 0025_38B2_31B4_8512 / _8508 / _84FE
```
**Вывод:** железо современное (12-е поколение Intel, NVMe), но **бытовое**:
- нет ECC RAM → необнаруженные битовые ошибки в памяти могут вызывать крашы
- нет IPMI/iLO/iDRAC → удалённого управления питанием нет
- нет ИБП в системе (`Win32_Battery` пуст)
- сертифицировано для Workstation, не для 24/7 server-нагрузки
### OS
```
OS: Microsoft Windows Server 2012 R2 Standard
Build: 9600 (6.3.9600)
PowerShell: 5.1.14409.1018
Локаль: Русская
Hostname: Server1C
Uptime: 3h 51min на момент разведки (последний boot 09:56:42 после краша 09:05)
```
**Срок поддержки:** Windows Server 2012 R2 EOL **2023-10-10**. Без расширенных Security Updates. Серьёзная причина для миграции на 2022/2025.
### Локальные пользователи
```
SERVER1C\dttb — основной admin (наш WinRM-юзер)
SERVER1C\Администратор — встроенный admin
SERVER1C\RemoteAdm — для удалённого доступа (AnyDesk?)
SERVER1C\АртемК — RDP-юзер (1С)
SERVER1C\ГорячевАЕ — RDP-юзер (1С)
SERVER1C\Павел — RDP-юзер (1С)
SERVER1C\ПальмановаН — RDP-юзер (1С)
SERVER1C\ФирсовС — RDP-юзер (1С)
SERVER1C\БольшаковаЕН — RDP-юзер, отключён
SERVER1C\Гость — встроенный, без пароля
```
**6 активных юзеров-сотрудников** работают через RDP. Это значит сейчас сервер **работает в терминальном режиме**: люди ходят по RDP в Server1C и запускают там 1С-клиент. Это упрощает миграцию по варианту A (терминальная VM на HomeLab).
### Удалённые доступы
- **RDP (3389)** — открыт публично на 185.13.47.2:3389 (видны established с 176.62.183.186, 176.215.183.37)
- **AnyDesk** — процесс запущен в системе
- **NetBird** — `netbird.exe` v0.68.3, FQDN `server1c.netbird.cloud`, IP 100.70.75.103/16, peers 31/58 connected
**RDP открыт в Интернет** — security risk. После миграции закрыть и оставить только NetBird.
---
## 2. 1С:Предприятие
### Версия и службы
```
Версия 1С: 1C:Предприятие 8 (x86-64) 8.3.27.1606
Издатель: 1С-Софт
Службы (Win32_Service):
1C:Enterprise 8.3 Server Agent — Stopped, Disabled (8.3.18, x86, бинарника нет)
1C:Enterprise 8.3 Server Agent (x86-64) — Running, Auto ★ рабочая
PATH: "C:\Program Files\1cv8\8.3.27.1606\bin\ragent.exe" -srvc -agent
-regport 1541 -port 1540 -range 1560:1591
-d "C:\Program Files\1cv8\srvinfo"
RagentServer_8327 — Stopped, Disabled (orphan)
```
Конфликт служб уже решён 2026-04-16 (см. `projects/buzharovo/server1c.md`). Сейчас одна корректная служба + два Disabled-дубликата.
### Кластер и инфобазы
```
1cv8wsrv.lst:
cluster: 473f3f9e-4aea-43bc-ac45-ec98da8700c7
name: "Локальный кластер"
port: 1541
server: Server1C
```
Инфобазы (по содержимому `C:\Program Files\1cv8\srvinfo\reg_1541\`):
| GUID (короткий) | Размер служебных данных |
|---|---|
| 00d417ca | 7 355 MB |
| 426d93c8 | 4 793 MB |
| 688e50c3 | **15 178 MB** (самая большая) |
| 9e258b8f | 11 953 MB |
| **Итого** | **~39.3 GB** |
⚠ Это **не размер SQL БД**, а служебные данные кластера 1С (полнотекстовые индексы `1Cv8FTxt`, журналы, кэш). Реальный размер БД в SQL не получен (см. секцию 3).
Файла `1CV8Reg.lst` в корне `reg_1541` нет — только `1CV8Clst.lst` (3962 байта, обновляется каждую секунду — это live-state кластера).
**Имена инфобаз → ⚠ ПРОБЕЛ:** только GUID. Нужно либо узнать через рабочий `rac.exe` (rmngr-loop ломает), либо спросить у Олега, либо посмотреть подключения юзеров через 1С.
### Активная нагрузка
```
ragent PID=4048 CPU= 19s WS= 94 MB Threads=44 # service master
rmngr PID=3876 CPU= 7421s WS= 378 MB Threads=104 # cluster manager — high CPU (rmngr-loop)
rphost PID=2884 CPU= 1056s WS=1827 MB Threads=60 # working process
rphost connections:
Established: 26
Unique remote: 5 → ~5 активных удалённых клиентов сейчас
Listening on: 1540 (rmngr), 1541 (regport), 1560 (rphost extra)
Внешние подключения (не localhost):
192.168.1.18:12228 → :1560 (KASSA3 — постоянный коннект к 1С!)
```
**rmngr CPU=7421s за uptime 3h51min** = `7421/(3*3600+51*60) ≈ 53.4%` среднего одного ядра. Это **активный rmngr-loop**, рецепт лечения через `Restart-Service` уже задокументирован (см. `projects/buzharovo/server1c.md`).
### Лицензии 1С — ⚠ КРИТИЧНО
```
HASP/Sentinel hardware-ключ: Сервис hasplms — Stopped, Disabled
USB HASP/SafeNet/Aladdin устройств нет
Программные .lic файлы:
C:\Users\**\*.lic — не найдено
C:\ProgramData\1C\** — папки license нет
C:\Program Files\1cv8\srvinfo\**\*.lic — не найдено
Реестр:
HKLM:\SOFTWARE\1C — нет
HKLM:\SOFTWARE\Wow6432Node\1C — нет
```
**Гипотеза:** лицензия 1С**программная с активацией через 1С (PIN-код)**, привязанная к HWID (CPU/мать/диск). Это значит:
- При переносе на новую VM лицензия **отвалится** → нужен повторный ввод PIN или резервный комплект пинкодов
- **Комплект пинкодов** хранится в личном кабинете 1С-Партнёра / у Олега — **нужно убедиться что есть доступ к пинкодам**
**Альтернативная гипотеза:** лицензия в облачном сервисе ИТС/КОРП (Activator) — тогда привязка через интернет, миграция проще.
**Action item:** уточнить у Олега, как активирована лицензия 1С и есть ли резервные пинкоды/доступ к ЛК 1С.
---
## 3. MSSQL Server
### Версия
```
Microsoft SQL Server 2012 (64-бит, русская версия)
Build: 11.2.5058.0 (SP2 + KB2958429)
Instance: MSSQL11.MSSQLSERVER (default)
Tools: SQL Server 2012 Management Studio (x64+x86)
SQL Server 2008 Object Management Tools (legacy)
Службы:
MSSQLSERVER — Running, Automatic
SQLBrowser — Stopped, Disabled
```
**Mainstream support EOL: 2017-07-11. Extended support EOL: 2022-07-12.** Без security updates 4-й год.
### Listening
```
TCP listening:
0.0.0.0:1433 ← MSSQL (на всех интерфейсах, включая 100.70.75.103!)
0.0.0.0:1540 ← 1С rmngr
0.0.0.0:1541 ← 1С regport (где живёт кластер)
0.0.0.0:1560 ← 1С rphost
```
**MSSQL слушает на NetBird-IP** (100.70.75.103:1433) — то есть из любого NetBird-пира можно попытаться подключиться к SQL. Не критично пока пароль `sa` не известен, но при миграции нужно ограничить.
### БД 1С — ⚠ ПРОБЕЛ
SQL Auth не получили:
```
Win Auth (SERVER1C\dttb): Login failed (нет SQL-логина)
sa без пароля: Login failed
sa / 1qaz!QAZ: Login failed
sa / Sa12345: Login failed
```
Файлы `*.mdf` / `*.ldf` через `Get-ChildItem -Recurse C:\,D:\,E:\` не нашлись за 50 секунд — либо ACL блокирует, либо они в нестандартном месте, либо файлы 1С хранятся в файловом, а не SQL формате (маловероятно для версии 8.3 с MSSQL-инстансом).
**Action item:** получить от Олега `sa`-пароль (или создать SQL-логин для `dttb`). Без этого размер БД и план бэкапа неполный.
### SQL Backup история — ПРОБЕЛ (тот же auth-issue)
---
## 4. Касса и фискализация
**Установленный софт (поиск по реестру uninstall):**
```
Из паттерна 'Атол|Штрих|Atol|Shtrih|Evotor|Касс|Drv|Fiscal|ОФД|Меркурий':
→ НИЧЕГО не установлено
Sentinel LDK License Manager — есть служба (Disabled), но это для других программ
```
**USB-устройства (Win32_PnPEntity, классы Ports/USB/HIDClass):**
```
HID-compliant vendor-defined device (Asus mobo HID)
Microsoft ACPI/UEFI/SMBIOS интерфейсы
Microsoft IPv4/IPv6 Transition Adapter Bus
Microsoft XPS Document Writer
Адаптеры 6to4 / ISATAP
→ Ни одного USB-фискальника, COM-порта (кроме материнского COM1), драйвера ККТ.
```
**Реестр касс/фискальников:**
```
HKLM:\SOFTWARE\Atol — нет
HKLM:\SOFTWARE\Shtrih-M — нет
HKLM:\SOFTWARE\Drv — нет
HKLM:\SOFTWARE\1C\Драйвер ККТ — нет
HKCR\AddIn.DrvFR — нет
```
**ARP-таблица 192.168.1.0/24:**
```
192.168.1.1 — gateway (router)
192.168.1.2 — ?
192.168.1.3 — ?
192.168.1.4 — ?
192.168.1.18 — KASSA3 ★ касса 1
192.168.1.53 — DESKTOP-JSS8L05 рабочий ПК
192.168.1.99 — KASSIRULICA2 ★ касса 2
192.168.1.127 — ?
192.168.1.139 — Nadezhda рабочий ПК
192.168.1.200 — ?
192.168.1.249 — Server1C (сам)
```
**Активный TCP в момент разведки:**
```
192.168.1.18:12228 ←→ Server1C:1560 (rphost) ESTABLISHED
```
### Вывод
**Кассы НЕ привязаны к серверу через USB.** Это **отдельные ПК-кассы** в локальной сети:
- `KASSA3` (192.168.1.18) — активно общается с 1С на rphost-порту 1560 (это значит запущена 1С на самой кассе ИЛИ внешняя компонента 1С DCOM)
- `KASSIRULICA2` (192.168.1.99) — вероятно вторая касса, не активна в момент разведки
**Это огромный плюс для миграции** — серверу не нужно физически передавать USB-устройства. Касса продолжает работать локально на своём ПК, а к 1С обращается по сети. После миграции достаточно изменить IP/имя сервера 1С в её настройках на новый адрес (через NetBird или публичный IP HomeLab).
**Не выяснено:** какое ПО на самих ПК-кассах (1С Розница? собственная программа? драйвер какого ККТ?). Это нужно увидеть на месте — уточнить у Олега или удалёнкой через RDP/AnyDesk на 192.168.1.18.
---
## 5. Сеть и провайдер
### LAN
```
Description: Семейство адаптеров Realtek PCIe GBE
IP: 192.168.1.249/24
Gateway: 192.168.1.1
DNS: 192.168.1.1
MAC: 00:E0:4C:68:9E:34
IPv6: fe80::2d5c:849d:c9ad:3409 (link-local)
```
13 хостов в подсети (см. ARP выше) — это весь офис.
### Канал
```
ping 1.1.1.1: 3 ms ← очень близкий апстрим у провайдера
ping 8.8.8.8: 15 ms
ping LXC 137 (NetBird HomeLab): 9699 ms
Внешний IP: api.ipify.org timeout — определить не удалось
(либо firewall блокирует ipify, либо канал в момент проверки моргнул)
```
**Action item:** уточнить у Олега провайдера (предположительно местный сельский WISP или РТК), скорость download/upload, наличие резервного канала и тип последней мили.
### NetBird
```
Daemon version: 0.68.3
Profile: default
FQDN: server1c.netbird.cloud
NetBird IP: 100.70.75.103/16
Management: Connected
Signal: Connected
Relays: 1/4 Available
Peers count: 31/58 Connected
```
NetBird работает стабильно, RTT до HomeLab 96-99ms.
---
## 6. Безопасность сервера
```
Антивирус: НЕ установлен (Kaspersky/Defender/ESET/etc — пусто)
Windows Updates: не проверяли явно, но Win 2012 R2 EOL уже с 2023
Public RDP: ОТКРЫТ на 185.13.47.2:3389
Активные RDP login (4624, 7 дней):
2026-05-07 09:53 SERVER1C\dttb from 176.62.183.186
2026-05-07 09:53 SERVER1C\dttb from 176.62.183.186 (sweb hosting? — наш rclone?)
SQL Server: 0.0.0.0:1433 (доступен по NetBird, не только localhost)
AnyDesk: запущен (parallel remote channel, без аудита)
```
**Привести в порядок при миграции:**
- Закрыть RDP в Интернет, оставить только через NetBird
- Решить: AnyDesk нужен или нет (двойной канал = двойной риск)
- MSSQL bind на 127.0.0.1 + явный TCP-route через NetBird, не на 0.0.0.0
- Поставить Defender или другой АВ
- Включить регулярные Win Updates (если новая VM на 2022/2025 — само собой)
---
## 7. Краши — подтверждённый паттерн
Из v2-разведки за последние 30 дней:
**Kernel-Power 41 (грязные ребуты):**
- 2026-05-07 09:07 (1 раз)
- **2026-05-04: 24 раза** между 08:36 и 12:13 (!!) — катастрофа дня
- 2026-05-03: 2 раза (08:40, 09:27)
- 2026-05-02: 1 раз (08:41)
- 2026-05-01: 1 раз (08:34)
- 2026-04-30: 2 раза (11:56, 11:59)
Все события: `BugcheckCode=0`, `PowerButtonTimestamp=0`, `SleepInProgress=False` → классическое **отключение питания / brownout**, не BSOD, не overheating, не sleep.
**EventID 6008 (unexpected shutdown)** идут парой к каждому Kernel-Power 41 — подтверждает что система не успевала корректно завершиться.
**Концентрация во времени:** утренние крашы 8:3012:00 (рабочее время в Бужарово) → совпадает с тем что нагрузка на сельскую сеть растёт утром (включаются плиты/обогреватели/насосы).
Подтверждение что миграция нужна.
---
## Открытые вопросы для Олега (action items)
| # | Вопрос | Зачем |
|---|---|---|
| 1 | `sa`-пароль MSSQL? Или создать SQL-login для миграции? | Размер БД, бэкап, миграция данных |
| 2 | Лицензия 1С: программная или ключ? Где пинкоды для перепривязки? | Активировать на новой VM |
| 3 | Имена 4 инфобаз (по GUID): что в `00d417ca`, `426d93c8`, `688e50c3`, `9e258b8f`? | Маппинг при миграции |
| 4 | Что за ПО на KASSA3 / KASSIRULICA2? (драйвер ККТ, 1С Розница, собственный софт?) | Подтверждение совместимости |
| 5 | Провайдер в Бужарово, скорость канала, резервный канал? | Оценка устойчивости RDP/NetBird |
| 6 | Окно простоя для миграции (вечер пятницы? выходные?) | Планирование cutover |
| 7 | Бюджет на ИБП и на сетевое железо в Бужарово? | Альтернативно — починить «на месте», а не мигрировать |
| 8 | AnyDesk нужен в новой схеме или убираем? | Сужение attack surface |
---
## Дополнительно собранные артефакты (на LXC 137)
- `/tmp/recon_server1c.py` — v1 (оригинальный)
- `/tmp/recon_v2.py`, `/tmp/recon_v3.py`, `/tmp/recon_v4b.py`, `/tmp/recon_v5.py` — последовательные итерации
- Все логи v1v5 на Mac в `/tmp/recon_*_output.txt` (на момент сессии)
---
См. далее: `decisions/2026-05-07-buzharovo-migration-plan.md`.