Files
admin/windows-recovery-host.md
vitya c86750b75d docs(.wiki): ingest NAS recovery session 2026-05-18/19
15-hour cross-hypervisor recovery from WD40EFAX SMR RAID5
cascade failure. 5 entities + 7 concepts + 1 source documenting:

- Root cause: WD40EFAX SMR cascade in 3-disk RAID 5
- Hyper Backup .hbk structure + SFTP-jail / ACL workarounds
- OVA from Synology VMM (KVM) → VirtualBox: SCSI→SATA,
  Hyper-V driver disable, paravirt=kvm, GA install, NAT switch
- MSSQL restore via named volume + chown, sqlcmd -x, mssql-conf
- Web.config UTF-16 vs UTF-8 BOM IIS 500.19 trap
- Traefik on Windows DD: configFile, named volume for acme.json,
  file-provider as docker.sock workaround
- Snapshot of current recovery architecture + SPOF list
- Placeholder for future resilient-architecture work

Plus .tasks/nas-recovery.md and STATUS.md updates closing the task.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-19 11:07:38 +03:00

4.2 KiB
Raw Blame History

title, type, tags, sources, updated
title type tags sources updated
Windows Recovery Host (рабочий PC пользователя) entity
hardware
windows
docker
virtualbox
iis
recovery
../sources/nas-recovery-session-2026-05-18.md
2026-05-19

Windows Recovery Host

Личный Windows-PC пользователя, который во время recovery стал production-сервером для всех клиентских сайтов.

Hardware / OS

  • Hostname: DESKTOP-NSEF0UK
  • OS: Windows 11 Pro (предположительно — поддерживает Hyper-V, IIS, .NET Framework)
  • LAN-MAC: 88:66:5A:2F:AA:68 (Broadcom 802.11ac WiFi)
  • LAN-IP: 192.168.1.143 (DHCP-резервация на openwrt-router)
  • Диск C: ~700 GB total, на старте recovery ~352 GB free, после — ~150 GB free.
  • Юзер: vitya (admin)

Установленный стек

  • .NET Framework: 4.8.1
  • IIS (W3SVC, на 80, мы планировали остановить — но не остановили, traefik на 8000/4443 не конфликтует)
  • Docker Engine 29.3.1 (Docker Desktop с WSL2 backend)
  • VirtualBox 7.2.8 (установлен в сессии 2026-05-18, через winget)
  • OpenSSH client (для ssh/scp к kreknin и VM)
  • FileZilla client (для пользовательских SFTP-перетаскиваний)

Сетевое положение

  • За OpenWRT 23.05.4 openwrt-router
  • Соединение с интернетом через WiFi (Broadcom 802.11ac, 288 Mbps)
  • За VLESS-клиентом v2rayN (роутер default-route шёл через VPN, пришлось настроить Bypass LAN правило с geoip:private → direct, иначе входящие 80/443 терялись через asymmetric routing)

Что хостит сейчас (после recovery)

Что Где Порт (host)
VirtualBox snolla-recovery VM C:\Users\vitya\VirtualBox VMs\snolla-recovery\ VRDE 13389, NAT-RDP 23389, NAT-SSH 8022, NAT-HTTP 18080/18180/18181/18189
traefik 2.6.6 Docker, network proxy 8000 (http), 4443 (https), 8080 (dashboard)
MSSQL 2019 Docker, named volume mssql_mssql_data 1433
MinIO Docker, bind-mount ./data 9000
Elasticsearch 7.10.1 Docker, bind-mount ./data 9200
imgproxy Docker 8787
imgproxy-nginx Docker 8788

Также установлен IIS, но Default Web Site пустой / неактивно используется. Должен быть остановлен в админ-PowerShell когда руки дойдут (для оптимизации; на 8000/4443 traefik не конфликтует с IIS на 80).

Ключевые папки

  • C:\Users\vitya\projects\docker\diskstation\ — compose'ы и данные docker-стеков
    • mssql/, minio/, elasticsearch/, imgproxy/, traefik/
    • traefik/data/custom/*.yml — file-provider routes для всех 13 client доменов + ES/MinIO/imgproxy
  • C:\Users\vitya\VirtualBox VMs\snolla-recovery\ — VM home (VMDK на SATA controller, 42.5 GB extract из OVA)
  • C:\nas-recovery\backup\snolla\snolla.ova — оригинал OVA (45.6 GB, для повторного импорта если что)
  • C:\nas-recovery\vm-sites\wwwroot\, C:\nas-recovery\vm-sites\stayer\ — резервная копия IIS-сайтов из VM (на случай дрожи VM)
  • C:\Users\vitya\projects\MoreThenCms\ — git-репо с исходниками CMS (важно — у нас есть и source code)

SSH-ключи на этой машине

Что должно случиться, если этот PC погаснет