New source page documenting migration of MoreThenCms.Web from
snolla-recovery VM to native host IIS. Updates:
- recovery-architecture-snapshot: new chain (traefik -> host:80) +
secondary chain for stostayer still on VM
- snolla-recovery-vm: demoted, IdentityManager port fix (8089 not 80),
sub-apps detailed
- windows-recovery-host: 3 native IIS sites + C:\sites\, C:\stayer\
- log.md: ingest + decision entries
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
VirtualBox-VM на windows-recovery-host, в которой работала CMS-стек (IIS + .NET + код CMS). Импортирован из OVA-снапшота 2024-10-27, который лежал в Hyper Backup репо.
Статус с 2026-05-19 (после iis-host-migration-2026-05-19): VM демоут — больше не обслуживает основной CMS-трафик. 11 главных клиентских доменов идут через traefik на нативный IIS хоста (MoreThenCms.Web на C:\sites\MoreThenCms.Web). VM продолжает обслуживать только stostayer и stostayer.old через port forwards 18180/18181. Полное выключение — после миграции stayer-сайтов или явного решения их не мигрировать.
VRDE (VBox Remote Display) — для отладки, не зависит от Windows RDP
23389
3389
RDP внутри VM (Windows Remote Desktop)
8022
22
SSH (OpenSSH Server в VM)
18080
80
IIS Default — основной HTTP CMS
18180
8080
IIS site stostayer
18181
8081
IIS site stostayer.old
18189
8089
(запасной)
Учётка
Admin: vitya (домен SNOLLA)
Default shell для sshd: PowerShell (зарегистрирован в HKLM:\SOFTWARE\OpenSSH → DefaultShell)
Authorized SSH key для admin-users:C:\ProgramData\ssh\administrators_authorized_keys (особое место для admin Windows OpenSSH; permissions через icacls, group Администраторы:F + СИСТЕМА:F)
IIS-сайты
Site
Path
Bindings
Прим.
MoreThenCms.Web
C:\inetpub\wwwroot\MoreThenCms.Web
*:80
с 2026-05-19 не получает prod-трафика (traefik переключён на хост)
Snolla.IdentityManager
C:\inetpub\wwwroot\Snolla.IdentityManager
*:8089
публично не используется, в host-миграцию не вошёл
stostayer
C:\stayer\MoreThenCms.Web
*:8080
до сих пор обслуживает prod через traefik backend host.docker.internal:18180
stostayer.old
C:\stayer\stostayer.old
*:8081
до сих пор обслуживает prod через host.docker.internal:18181
stostayer.old/calc
C:\stayer\Mis.StoStayer.Calculator.Web
(sub-app под :8081)
отдельный app pool calc
stostayer.old/price
C:\stayer\Mis.StoStayer.Price.Api
(sub-app под :8081)
отдельный app pool price
stostayer.old/price/tireService
C:\stayer\Mis.StoStayer.TireService.Api
(sub-app под :8081)
отдельный app pool tireService
CMS распознаёт клиента по Host header — 11 клиентских доменов исходно роутились внутри MoreThenCms.Web на :80. После iis-host-migration-2026-05-19 этот сайт зеркалирован на хост в C:\sites\MoreThenCms.Web и получает весь prod-трафик там.
Web.config — критичные настройки (после recovery patch)
Из traefik (на хосте) достижима по host.docker.internal:18080 → NAT-форвард в Windows → VM:80
Раньше (когда было bridged) — VM имела IP 192.168.1.15с MAC 02:11:32:2A:7C:B9. snolla.yml в traefik/data/custom/ исходно ссылался на http://192.168.1.15/ — пропатчен на host.docker.internal:18080/.
Стабильность
Нестабильна на bridged-WiFi → переведена в NAT (стало лучше, но всё равно требует осторожности).
Один случай (после нескольких часов uptime): network adapter в VM "повис" — все TCP-handshake проходили, но через них трафик не шёл. Лечится ipconfig /release && /renew внутри VM через VBoxManage guestcontrol.
Долгосрочно: пора планировать scheduled task внутри VM, который при детекции downtime автоматически перезагружает network adapter / iisreset. Или вообще переезд на Hyper-V — рекомендация Microsoft для Windows-гостей.
Известные баги в текущей конфигурации
X-Forwarded-Proto/Host headers не передаются с traefik в IIS → CMS делает redirect на http://www.<domain>:4443/ (mixing HTTP scheme with HTTPS port). Не критично, но требует фикса.
*Логи в C:\inetpub\logs* растут (~6 GB на момент recovery) — нужна ротация.