From d379045d2061fe53013c8718b80a94a7f9562d97 Mon Sep 17 00:00:00 2001 From: Denozordec Date: Sat, 10 Oct 2026 23:14:37 +0700 Subject: [PATCH] =?UTF-8?q?chore(test):=20=D0=BF=D0=BE=D0=B4=D1=82=D0=B2?= =?UTF-8?q?=D0=B5=D1=80=D0=B4=D0=B8=D1=82=D1=8C=20=D0=B4=D0=B2=D0=B5=20IKE?= =?UTF-8?q?-=D1=81=D0=B5=D1=81=D1=81=D0=B8=D0=B8=20=D0=BE=D0=B4=D0=BD?= =?UTF-8?q?=D0=BE=D0=B3=D0=BE=20=D1=81=D0=B5=D1=80=D1=82=D0=B8=D1=84=D0=B8?= =?UTF-8?q?=D0=BA=D0=B0=D1=82=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/ux-ui-external-acceptance.md | 18 +- docs/ux-ui-plan.md | 4 +- docs/ux-ui-progress.md | 20 +- docs/ux-ui-remaining-acceptance.md | 22 +- docs/ux-ui-stage-12.md | 18 +- docs/ux-ui-test-server.md | 18 +- .../browser-ipsec-multiple-2026-10-10.json | 27 ++ ...sec-real-multiple-sessions-2026-10-10.json | 420 ++++++++++++++++++ .../ipsec-multiple-1280-2026-10-10.png | Bin 0 -> 112804 bytes .../screens/ipsec-multiple-320-2026-10-10.png | Bin 0 -> 43829 bytes 10 files changed, 537 insertions(+), 10 deletions(-) create mode 100644 docs/ux-ui/acceptance/browser-ipsec-multiple-2026-10-10.json create mode 100644 docs/ux-ui/acceptance/ipsec-real-multiple-sessions-2026-10-10.json create mode 100644 docs/ux-ui/screens/ipsec-multiple-1280-2026-10-10.png create mode 100644 docs/ux-ui/screens/ipsec-multiple-320-2026-10-10.png diff --git a/docs/ux-ui-external-acceptance.md b/docs/ux-ui-external-acceptance.md index ffcf5e69..9fb4087c 100644 --- a/docs/ux-ui-external-acceptance.md +++ b/docs/ux-ui-external-acceptance.md @@ -1,6 +1,6 @@ # UX/UI: протокол внешней приёмки 12.5 -Актуальное продолжение 2026-10-10: завершён12.5.118 — legacy client export больше не угадывает certificate по managed имени; PSK/отсутствующая binding дают409 до export, explicit certificate binding работает после rename. Backend8 scripts/state114/build/ESLint passed; native before200 с чужим для identity своим cert, after409 без архива/positive bound200, cleanup13×2. Архивы/passphrase не сохранялись. Backend ux-export118/version1.0.0-test.export118, frontend ux-bound116/version1.0.0-test.bound116. Следующий119 — реальные одновременные IKE sessions с одним ID через isolated Linux clients; image подготовка начата.12.5 открыт. +Актуальное продолжение 2026-10-10: завершён12.5.119 в принятой конфигурации — два real strongSwan6.0.1 clients/один certificate-derived DN, две established sessions/разные VIP, Ping3/3 каждый. API online1 без случайного activeAddress/uptime, UI1280/320 passed. Docker clients/network/credentials очищены, baseline16×2 совпал. Backend ux-export118/frontend ux-bound116 прежние. FQDN/ADDR4/manual DN AUTH_FAILED сохранён; следующий120 — интероперабельность ID/encoding без ослабления certificate verification.12.5 открыт. IPsec78: реальный PSK responder established, mode-config198.18.78.10 и online=true подтверждены API; точные собственные объекты удалены. Сертификатный/DN online, late failure и history restore остаются открытыми. [Отчёт](ux-ui/acceptance/ipsec-mode-config-2026-10-09.json), [журнал](ux-ui-progress.md). @@ -1223,3 +1223,19 @@ Backend ux-export118/version1.0.0-test.export118 собран из build-bound11 | Референс | Схема | | --- | --- | | [ReUI Sheet8](https://reui.io/preview/base/sheet-8?ref=mcp) | Выбранный клиент → явная certificate binding → PKI export либо409 без архива | + +## 12.5.119 — две реальные IKE-сессии одного certificate principal (2026-10-10) + +Контролируемая граница113 дополнена реальными сессиями: два Docker Linux клиента, official Debian trixie/strongSwan6.0.1-6+deb13u7, собственные namespace/bridge, NET_ADMIN только внутри clients. Один свой RSA2048 клиентский сертификат/ключ, свой CA и явно закреплённый server certificate. IKE/ESP AES256/SHA256/MODP2048, unique=never; чужие сетевые объекты/host networking приложения не перенастраивались. Docker создал и затем удалил собственную временную bridge/NAT сеть. + +В принятой конфигурации local ID получен непосредственно из сертификата. RouterOS подтвердил две established с одинаковым ID CN=<имя>-client и разными198.18.119.249/248. Каждый клиент выполнил Ping3/3 до собственного encrypted endpoint198.18.119.1. Это short data-plane proof, не throughput/rekey/SLA. API: clientsTotal1/clientsOnline1, activeAddress/activeSince/sessionAmbiguous отсутствуют. Два live UI1280/320 без mocks: один зелёный «онлайн», VIP не присвоен произвольно, unknown alert отсутствует; writes0/pageerrors0. Mobile screenshot просмотрен. Application source не менялся, backend118/frontend116 сохранены. + +Первый cleanup остановился: helper ошибочно ожидал comment у cert, который SDK/RouterOS не сохранил. До повторения scoped recovery проверил имя/CN/CA references/native IDs, удалил только свои объекты/credential files; Docker cleanup уже был завершён. Последующие retries сохранили baseline16×2. Первые FQDN/ADDR4, ручной DN и pinned server+ручной DN получили AUTH_FAILED; RouterOS сообщил identity not found/peer ID does not match certificate. Certificate-derived ID с тем же ключом/CA/server pin прошёл. Точная причина различий encoding не доказана; эти варианты не переименованы в success и остаются следующей120 приёмкой. + +Final cleanup: labelled clients/network удалены после owner проверки, свои native logging/peer/identity/policy/group/profile/proposal/mode-config/pool/bridge/address/certificates удалены по ID;16 исходных коллекций×2 совпали, default/public/metadata/195.195.195.195/32 сохранены. Private P12/pass/PEM/config files удалены, пустые свои directories закрыты без recursive delete. Архивы/ключи не попали в Git. Оба CHR доступны, пароли прежние. Инструментальный image сохранён для повторения; приложение не пересобиралось. Протоколы: [native/отказы/cleanup](ux-ui/acceptance/ipsec-real-multiple-sessions-2026-10-10.json), [live UI](ux-ui/acceptance/browser-ipsec-multiple-2026-10-10.json). + +References: [strongSwan configuration](https://docs.strongswan.org/docs/latest/swanctl/swanctlConf.html), [credentials](https://docs.strongswan.org/docs/latest/swanctl/swanctlDir.html), [RouterOS](https://manual.mikrotik.com/docs/virtual-private-networks/ipsec/). Два контейнера используют один public WAN/NAT, не являются независимыми площадками и не закрывают Windows/macOS/iOS/Android. Следующий120 — ID interop/encoding; остальные внешние зависимости сохранены в матрице.12.5 открыт. + +| Референс | Схема | +| --- | --- | +| [ReUI Filtering2](https://reui.io/preview/base/data-grid-filtering-2?ref=mcp) | Две подтверждённые сессии → один клиент онлайн → без произвольно выбранного VIP | diff --git a/docs/ux-ui-plan.md b/docs/ux-ui-plan.md index 1ff99135..506a24ef 100644 --- a/docs/ux-ui-plan.md +++ b/docs/ux-ui-plan.md @@ -1,12 +1,12 @@ # План реализации UX/UI по пятичасовым окнам -Актуальное продолжение 2026-10-10: завершён12.5.118 — legacy client export больше не угадывает certificate по managed имени; PSK/отсутствующая binding дают409 до export, explicit certificate binding работает после rename. Backend8 scripts/state114/build/ESLint passed; native before200 с чужим для identity своим cert, after409 без архива/positive bound200, cleanup13×2. Архивы/passphrase не сохранялись. Backend ux-export118/version1.0.0-test.export118, frontend ux-bound116/version1.0.0-test.bound116. Следующий119 — реальные одновременные IKE sessions с одним ID через isolated Linux clients; image подготовка начата.12.5 открыт. +Актуальное продолжение 2026-10-10: завершён12.5.119 в принятой конфигурации — два real strongSwan6.0.1 clients/один certificate-derived DN, две established sessions/разные VIP, Ping3/3 каждый. API online1 без случайного activeAddress/uptime, UI1280/320 passed. Docker clients/network/credentials очищены, baseline16×2 совпал. Backend ux-export118/frontend ux-bound116 прежние. FQDN/ADDR4/manual DN AUTH_FAILED сохранён; следующий120 — интероперабельность ID/encoding без ослабления certificate verification.12.5 открыт. Общий план проекта MikrotikManager. Основан на согласованном плане из задачи; точка продолжения обновлена 2026-10-10. Источник фактического прогресса, проверок и ограничений — [журнал реализации](ux-ui-progress.md). Этот документ задаёт объём и критерии завершения, журнал фиксирует результат. ## Актуальная точка продолжения — 2026-10-10 -Актуальное продолжение 2026-10-10: завершён12.5.118 — legacy client export больше не угадывает certificate по managed имени; PSK/отсутствующая binding дают409 до export, explicit certificate binding работает после rename. Backend8 scripts/state114/build/ESLint passed; native before200 с чужим для identity своим cert, after409 без архива/positive bound200, cleanup13×2. Архивы/passphrase не сохранялись. Backend ux-export118/version1.0.0-test.export118, frontend ux-bound116/version1.0.0-test.bound116. Следующий119 — реальные одновременные IKE sessions с одним ID через isolated Linux clients; image подготовка начата.12.5 открыт. +Актуальное продолжение 2026-10-10: завершён12.5.119 в принятой конфигурации — два real strongSwan6.0.1 clients/один certificate-derived DN, две established sessions/разные VIP, Ping3/3 каждый. API online1 без случайного activeAddress/uptime, UI1280/320 passed. Docker clients/network/credentials очищены, baseline16×2 совпал. Backend ux-export118/frontend ux-bound116 прежние. FQDN/ADDR4/manual DN AUTH_FAILED сохранён; следующий120 — интероперабельность ID/encoding без ослабления certificate verification.12.5 открыт. Этапы0–11 завершены в локальных границах журнала. История выполненных внешних блоков и доказательства сохранены в [журнале](ux-ui-stage-12.md) и [протоколе](ux-ui-external-acceptance.md). Реальная Telegram доставка, Portal SSO, multi-instance и оставшиеся профильные сетевые ограничения открыты. diff --git a/docs/ux-ui-progress.md b/docs/ux-ui-progress.md index 138cbcf3..f30a6fb5 100644 --- a/docs/ux-ui-progress.md +++ b/docs/ux-ui-progress.md @@ -1,6 +1,6 @@ # UX/UI: журнал реализации -Актуальное продолжение 2026-10-10: завершён12.5.118 — legacy client export больше не угадывает certificate по managed имени; PSK/отсутствующая binding дают409 до export, explicit certificate binding работает после rename. Backend8 scripts/state114/build/ESLint passed; native before200 с чужим для identity своим cert, after409 без архива/positive bound200, cleanup13×2. Архивы/passphrase не сохранялись. Backend ux-export118/version1.0.0-test.export118, frontend ux-bound116/version1.0.0-test.bound116. Следующий119 — реальные одновременные IKE sessions с одним ID через isolated Linux clients; image подготовка начата.12.5 открыт. +Актуальное продолжение 2026-10-10: завершён12.5.119 в принятой конфигурации — два real strongSwan6.0.1 clients/один certificate-derived DN, две established sessions/разные VIP, Ping3/3 каждый. API online1 без случайного activeAddress/uptime, UI1280/320 passed. Docker clients/network/credentials очищены, baseline16×2 совпал. Backend ux-export118/frontend ux-bound116 прежние. FQDN/ADDR4/manual DN AUTH_FAILED сохранён; следующий120 — интероперабельность ID/encoding без ослабления certificate verification.12.5 открыт. Общий план: [UX/UI по этапам и пятичасовым окнам](ux-ui-plan.md). План задаёт объём, этот журнал фиксирует выполненные блоки и ограничения. Записи расположены от новых к старым; подробная история этапа12 также сохранена в [ux-ui-stage-12.md](ux-ui-stage-12.md). @@ -36,7 +36,23 @@ | 10 | Маршрутизация, диагностика, карта и терминал | Завершён в границах локальной приёмки 2026-10-01; блоки 10.1–10.71, внешние ограничения в 10.71 | | 11А | Пользователи, контейнеры, сертификаты и резервные копии | Завершён в границах локальной приёмки 2026-10-01; 11А.1–11А.33, внешние ограничения в 11А.33 | | 11Б | Оповещения, сбор данных, интеграции, релизы и настройки | Завершён в границах локальной приёмки 2026-10-03; ограничения и evidence в11Б.7 | -| 12 | Итоговая доступность, адаптивность, производительность и регрессия | Локальная приёмка завершена в границах12.3.83; внешняя12.5 в работе, выполненные блоки1–118 и ограничения ниже. Runtime backend ux-export118/frontend ux-bound116. | +| 12 | Итоговая доступность, адаптивность, производительность и регрессия | Локальная приёмка завершена в границах12.3.83; внешняя12.5 в работе, выполненные блоки1–119 и ограничения ниже. Runtime backend ux-export118/frontend ux-bound116. | + +## 12.5.119 — две реальные IKE-сессии одного certificate principal (2026-10-10) + +Контролируемая граница113 дополнена реальными сессиями: два Docker Linux клиента, official Debian trixie/strongSwan6.0.1-6+deb13u7, собственные namespace/bridge, NET_ADMIN только внутри clients. Один свой RSA2048 клиентский сертификат/ключ, свой CA и явно закреплённый server certificate. IKE/ESP AES256/SHA256/MODP2048, unique=never; чужие сетевые объекты/host networking приложения не перенастраивались. Docker создал и затем удалил собственную временную bridge/NAT сеть. + +В принятой конфигурации local ID получен непосредственно из сертификата. RouterOS подтвердил две established с одинаковым ID CN=<имя>-client и разными198.18.119.249/248. Каждый клиент выполнил Ping3/3 до собственного encrypted endpoint198.18.119.1. Это short data-plane proof, не throughput/rekey/SLA. API: clientsTotal1/clientsOnline1, activeAddress/activeSince/sessionAmbiguous отсутствуют. Два live UI1280/320 без mocks: один зелёный «онлайн», VIP не присвоен произвольно, unknown alert отсутствует; writes0/pageerrors0. Mobile screenshot просмотрен. Application source не менялся, backend118/frontend116 сохранены. + +Первый cleanup остановился: helper ошибочно ожидал comment у cert, который SDK/RouterOS не сохранил. До повторения scoped recovery проверил имя/CN/CA references/native IDs, удалил только свои объекты/credential files; Docker cleanup уже был завершён. Последующие retries сохранили baseline16×2. Первые FQDN/ADDR4, ручной DN и pinned server+ручной DN получили AUTH_FAILED; RouterOS сообщил identity not found/peer ID does not match certificate. Certificate-derived ID с тем же ключом/CA/server pin прошёл. Точная причина различий encoding не доказана; эти варианты не переименованы в success и остаются следующей120 приёмкой. + +Final cleanup: labelled clients/network удалены после owner проверки, свои native logging/peer/identity/policy/group/profile/proposal/mode-config/pool/bridge/address/certificates удалены по ID;16 исходных коллекций×2 совпали, default/public/metadata/195.195.195.195/32 сохранены. Private P12/pass/PEM/config files удалены, пустые свои directories закрыты без recursive delete. Архивы/ключи не попали в Git. Оба CHR доступны, пароли прежние. Инструментальный image сохранён для повторения; приложение не пересобиралось. Протоколы: [native/отказы/cleanup](ux-ui/acceptance/ipsec-real-multiple-sessions-2026-10-10.json), [live UI](ux-ui/acceptance/browser-ipsec-multiple-2026-10-10.json). + +References: [strongSwan configuration](https://docs.strongswan.org/docs/latest/swanctl/swanctlConf.html), [credentials](https://docs.strongswan.org/docs/latest/swanctl/swanctlDir.html), [RouterOS](https://manual.mikrotik.com/docs/virtual-private-networks/ipsec/). Два контейнера используют один public WAN/NAT, не являются независимыми площадками и не закрывают Windows/macOS/iOS/Android. Следующий120 — ID interop/encoding; остальные внешние зависимости сохранены в матрице.12.5 открыт. + +| Референс | Схема | +| --- | --- | +| [ReUI Filtering2](https://reui.io/preview/base/data-grid-filtering-2?ref=mcp) | Две подтверждённые сессии → один клиент онлайн → без произвольно выбранного VIP | ## 12.5.118 — IPsec: legacy экспорт только по явной certificate привязке (2026-10-10) diff --git a/docs/ux-ui-remaining-acceptance.md b/docs/ux-ui-remaining-acceptance.md index a3f120df..21e741a0 100644 --- a/docs/ux-ui-remaining-acceptance.md +++ b/docs/ux-ui-remaining-acceptance.md @@ -1,6 +1,6 @@ # Оставшаяся внешняя приёмка — 2026-10-10 -Это актуальная матрица после 12.5.118. Исторические записи сохраняют версии и ограничения на момент выполнения; поздние проверки ниже уточняют их. Этап 12.5 открыт. Успех в двух CHR и одном backend не означает приёмку всех конфигураций, интеграций или полной регрессии. +Это актуальная матрица после 12.5.119. Исторические записи сохраняют версии и ограничения на момент выполнения; поздние проверки ниже уточняют их. Этап 12.5 открыт. Успех в двух CHR и одном backend не означает приёмку всех конфигураций, интеграций или полной регрессии. Стенд: Debian13/Compose, PostgreSQL18.6, два CHR RouterOS7.24.5. Backend `ux-export118`, frontend `ux-bound116`; production lab использует AUTH_REQUIRED=false. Подписанные JWT/RBAC проверялись в изолированных процессах. Все собственные объекты112 удалены, исходные13 коллекций×2 (включая logging/certificates/files/routes) проверены; пароли не менялись. @@ -12,7 +12,7 @@ | GRE | Native lifecycle, metadata, live формы/меню/URL/Ping53–57; GRE используется в OSPF/BGP/IPsec последующих блоков; native IPv6 ULA inner109 | IPv6 outer и application IPv6 interface address lifecycle, независимые WAN, масштаб и длительное восстановление; принятие GRE не означает приёмку всех сценариев автоматического расписания | | WireGuard | Native handshake/data plane58, deletion60, live create/peer/disable/enable/delete62, mobile64, export/import67–74; native IPv6 ULA inner/allowedIps/handshake109 | Клиентские ОС и произвольные конфигурации, IPv6 outer/scale и application IPv6 interface address lifecycle, физический lost ACK и устойчивое восстановление; `.conf` с placeholders — шаблон, не принятый клиентский tunnel | | VXLAN | Собственная пара/private Ping/catalog/URL/export75–76; bridge/FDB/port loss/recovery107; IPv6 ULA inner по IPv4 outer108 | API приложения read-only: create/delete проверены native. IPv6 outer, масштаб/производительность, профильные mutation RBAC/concurrency отдельно не приняты | -| IPsec | PSK и сертификатное шифрование77–82, active peer/online/mode-config, scoped NAT/group, partial/unknown/applied receipts, restore conflicts, JWT; full DN/специальные символы/online110; literal CN namespace guards и explicit FQDN111; certificate/PSK shared ID unknown/recovery112; multiple sessions controlled snapshots113; shared certificate rows/target guards114; preserve-certificate UI/native DELETE115; explicit deletion binding/PSK collision116; legacy export binding118 | Реальные одновременные sessions с одним ID, Одновременные реальные sessions одного ID; native edit identical matching rules rejected; клиентские Windows/macOS/iOS/Android, прочие DN форматы/custom OIDs/IKE ID namespaces, полная PKI и policy/profile/proposal restore, физический disconnect, durable retry/multi-instance, IPv6/maximum throughput | +| IPsec | PSK и сертификатное шифрование77–82, active peer/online/mode-config, scoped NAT/group, partial/unknown/applied receipts, restore conflicts, JWT; full DN/специальные символы/online110; literal CN namespace guards и explicit FQDN111; certificate/PSK shared ID unknown/recovery112; multiple sessions controlled snapshots113; shared certificate rows/target guards114; preserve-certificate UI/native DELETE115; explicit deletion binding/PSK collision116; legacy export binding118; real duplicate DN sessions/Linux Ping/UI119 | Реальные duplicate certificate-derived DN sessions приняты119; остальные ID типы, FQDN/ADDR4/manual DN interop/encoding и прочие ID типы; native edit identical matching rules rejected; клиентские Windows/macOS/iOS/Android, прочие DN форматы/custom OIDs/IKE ID namespaces, полная PKI и policy/profile/proposal restore, физический disconnect, durable retry/multi-instance, IPv6/maximum throughput | | OSPF/BFD | Real Full/own routes84–85, раздельные наблюдения BFD86, effective disabled/optimizer cost/partial/RBAC87, alternate path90 и CIDR91 | Sustained BFD-only gate не принят: в86 сосед мог вновь статьFull при доступныхHello. В90 переходный Ping18/40 с55% loss: бесшовность не принята. REST timing — наблюдаемая граница, не SLA; IPv6/scale/independent WAN открыты | | BGP | Established83, exact /32 exchange/API/UI/administrative withdrawal92, BFD primary GRE loss/alternate/recovery93 | Hold timer/TCP loss безBFD принят104; packet loss в переходе, разные внешние peers/WAN policy, IPv6/scale. Два логических пути используют тот же public WAN; physical redundancy не принята | | Recursive routes | Production PUT/change/own history restore88, disabled guards, partial/unknown/applied outcomes, live формы/контекст | Автоматический rollback/retry, durable receipts и несколько экземпляров отсутствуют; PUT не является idempotent noop. Полная произвольная legacy catalog миграция не принята | @@ -25,7 +25,7 @@ ## Следующая последовательность 1. **12.5.95 завершён:** [source/context/compiled audit](ux-ui/acceptance/deployment-source-audit-2026-10-10.json), production source drift не выявлен; нормализация и исключения явно указаны. -2. **12.5.96 timezone завершён:** [6 live UI cases](ux-ui/acceptance/browser-speed-timezone-2026-10-10.json). 97 HTTP receipt disconnect принят: [протокол](ux-ui/acceptance/speed-disconnect-2026-10-10.json). 98 сообщение неизвестного native результата исправлено/развёрнуто. 99 main/context завершён с точной записью одного failure/delta;100 transport и101 accessibility исправлены/развёрнуты.102 malformed PATCH исправлен/принят.103 packet rows/public/GRE приняты в границах коротких samples; initial loss/root cause остаётся открытым.104 hold/TCP loss/recovery принят.105 source/runtime/evidence сверка passed.106 read-only readiness: auth disabled/Portal localhost/bot and chat unconfigured.107 — native bridge/FDB/loss/recovery принят.108 — IPv6 inner VXLAN принят, initial0/3 и1/3 остаются в протоколе;109 — native GRE/WireGuard IPv6 inner принят; readers /ip/address не показывают native IPv6 interface addresses.110 — полный native DN/online исправлен и принят;111 — literal CN guards/real explicit FQDN accepted;112 — certificate/PSK alias ambiguity marked unknown/recovery accepted;113 — repeated native ID groups исправлены на controlled snapshots; 114 — multiple refs/target guards/native conflict приняты в описанных границах. 115 — UI сохранения сертификата/native DELETE принят; 116 — name-based guessing удалён/live PSK collision принят;117 — main1243/1failed+delta1/context221/source runtime приняты в точных границах; 118 — legacy export binding/native409/explicit200 принят;119 — isolated Linux multiple IKE sessions. Реальные интеграции требуют тестовых доступов и отдельного разрешения на сообщение. +2. **12.5.96 timezone завершён:** [6 live UI cases](ux-ui/acceptance/browser-speed-timezone-2026-10-10.json). 97 HTTP receipt disconnect принят: [протокол](ux-ui/acceptance/speed-disconnect-2026-10-10.json). 98 сообщение неизвестного native результата исправлено/развёрнуто. 99 main/context завершён с точной записью одного failure/delta;100 transport и101 accessibility исправлены/развёрнуты.102 malformed PATCH исправлен/принят.103 packet rows/public/GRE приняты в границах коротких samples; initial loss/root cause остаётся открытым.104 hold/TCP loss/recovery принят.105 source/runtime/evidence сверка passed.106 read-only readiness: auth disabled/Portal localhost/bot and chat unconfigured.107 — native bridge/FDB/loss/recovery принят.108 — IPv6 inner VXLAN принят, initial0/3 и1/3 остаются в протоколе;109 — native GRE/WireGuard IPv6 inner принят; readers /ip/address не показывают native IPv6 interface addresses.110 — полный native DN/online исправлен и принят;111 — literal CN guards/real explicit FQDN accepted;112 — certificate/PSK alias ambiguity marked unknown/recovery accepted;113 — repeated native ID groups исправлены на controlled snapshots; 114 — multiple refs/target guards/native conflict приняты в описанных границах. 115 — UI сохранения сертификата/native DELETE принят; 116 — name-based guessing удалён/live PSK collision принят;117 — main1243/1failed+delta1/context221/source runtime приняты в точных границах; 118 — legacy export binding/native409/explicit200 принят;119 — real certificate-derived DN/Linux sessions приняты; следующий120 — manual ID interop/encoding. Реальные интеграции требуют тестовых доступов и отдельного разрешения на сообщение. 3. **Заключительный профильный контроль:** после последнего исправления собрать только затронутую часть, проверить её live и обновить матрицу. Общую регрессию выполнить один раз на согласованном runtime. 4. **Внешние зависимости:** Telegram/Portal/client OS/multi-WAN/scale проходят отдельную приёмку при наличии нужных аккаунтов, устройств и разрешений. Лабораторный результат двух CHR не закрывает их автоматически. @@ -138,3 +138,19 @@ Backend ux-export118/version1.0.0-test.export118 собран из build-bound11 | Референс | Схема | | --- | --- | | [ReUI Sheet8](https://reui.io/preview/base/sheet-8?ref=mcp) | Выбранный клиент → явная certificate binding → PKI export либо409 без архива | + +## 12.5.119 — две реальные IKE-сессии одного certificate principal (2026-10-10) + +Контролируемая граница113 дополнена реальными сессиями: два Docker Linux клиента, official Debian trixie/strongSwan6.0.1-6+deb13u7, собственные namespace/bridge, NET_ADMIN только внутри clients. Один свой RSA2048 клиентский сертификат/ключ, свой CA и явно закреплённый server certificate. IKE/ESP AES256/SHA256/MODP2048, unique=never; чужие сетевые объекты/host networking приложения не перенастраивались. Docker создал и затем удалил собственную временную bridge/NAT сеть. + +В принятой конфигурации local ID получен непосредственно из сертификата. RouterOS подтвердил две established с одинаковым ID CN=<имя>-client и разными198.18.119.249/248. Каждый клиент выполнил Ping3/3 до собственного encrypted endpoint198.18.119.1. Это short data-plane proof, не throughput/rekey/SLA. API: clientsTotal1/clientsOnline1, activeAddress/activeSince/sessionAmbiguous отсутствуют. Два live UI1280/320 без mocks: один зелёный «онлайн», VIP не присвоен произвольно, unknown alert отсутствует; writes0/pageerrors0. Mobile screenshot просмотрен. Application source не менялся, backend118/frontend116 сохранены. + +Первый cleanup остановился: helper ошибочно ожидал comment у cert, который SDK/RouterOS не сохранил. До повторения scoped recovery проверил имя/CN/CA references/native IDs, удалил только свои объекты/credential files; Docker cleanup уже был завершён. Последующие retries сохранили baseline16×2. Первые FQDN/ADDR4, ручной DN и pinned server+ручной DN получили AUTH_FAILED; RouterOS сообщил identity not found/peer ID does not match certificate. Certificate-derived ID с тем же ключом/CA/server pin прошёл. Точная причина различий encoding не доказана; эти варианты не переименованы в success и остаются следующей120 приёмкой. + +Final cleanup: labelled clients/network удалены после owner проверки, свои native logging/peer/identity/policy/group/profile/proposal/mode-config/pool/bridge/address/certificates удалены по ID;16 исходных коллекций×2 совпали, default/public/metadata/195.195.195.195/32 сохранены. Private P12/pass/PEM/config files удалены, пустые свои directories закрыты без recursive delete. Архивы/ключи не попали в Git. Оба CHR доступны, пароли прежние. Инструментальный image сохранён для повторения; приложение не пересобиралось. Протоколы: [native/отказы/cleanup](ux-ui/acceptance/ipsec-real-multiple-sessions-2026-10-10.json), [live UI](ux-ui/acceptance/browser-ipsec-multiple-2026-10-10.json). + +References: [strongSwan configuration](https://docs.strongswan.org/docs/latest/swanctl/swanctlConf.html), [credentials](https://docs.strongswan.org/docs/latest/swanctl/swanctlDir.html), [RouterOS](https://manual.mikrotik.com/docs/virtual-private-networks/ipsec/). Два контейнера используют один public WAN/NAT, не являются независимыми площадками и не закрывают Windows/macOS/iOS/Android. Следующий120 — ID interop/encoding; остальные внешние зависимости сохранены в матрице.12.5 открыт. + +| Референс | Схема | +| --- | --- | +| [ReUI Filtering2](https://reui.io/preview/base/data-grid-filtering-2?ref=mcp) | Две подтверждённые сессии → один клиент онлайн → без произвольно выбранного VIP | diff --git a/docs/ux-ui-stage-12.md b/docs/ux-ui-stage-12.md index c7f3148e..a400953e 100644 --- a/docs/ux-ui-stage-12.md +++ b/docs/ux-ui-stage-12.md @@ -1,6 +1,6 @@ # Этап 12: итоговая приёмка UX/UI -Актуальное продолжение 2026-10-10: завершён12.5.118 — legacy client export больше не угадывает certificate по managed имени; PSK/отсутствующая binding дают409 до export, explicit certificate binding работает после rename. Backend8 scripts/state114/build/ESLint passed; native before200 с чужим для identity своим cert, after409 без архива/positive bound200, cleanup13×2. Архивы/passphrase не сохранялись. Backend ux-export118/version1.0.0-test.export118, frontend ux-bound116/version1.0.0-test.bound116. Следующий119 — реальные одновременные IKE sessions с одним ID через isolated Linux clients; image подготовка начата.12.5 открыт. +Актуальное продолжение 2026-10-10: завершён12.5.119 в принятой конфигурации — два real strongSwan6.0.1 clients/один certificate-derived DN, две established sessions/разные VIP, Ping3/3 каждый. API online1 без случайного activeAddress/uptime, UI1280/320 passed. Docker clients/network/credentials очищены, baseline16×2 совпал. Backend ux-export118/frontend ux-bound116 прежние. FQDN/ADDR4/manual DN AUTH_FAILED сохранён; следующий120 — интероперабельность ID/encoding без ослабления certificate verification.12.5 открыт. План: [ux-ui-plan.md](ux-ui-plan.md). Фактические результаты: [ux-ui-progress.md](ux-ui-progress.md). Подготовлен после сводных проверок 11Б; завершение каждого блока требует локального коммита без push. @@ -2528,3 +2528,19 @@ Backend ux-export118/version1.0.0-test.export118 собран из build-bound11 | Референс | Схема | | --- | --- | | [ReUI Sheet8](https://reui.io/preview/base/sheet-8?ref=mcp) | Выбранный клиент → явная certificate binding → PKI export либо409 без архива | + +## 12.5.119 — две реальные IKE-сессии одного certificate principal (2026-10-10) + +Контролируемая граница113 дополнена реальными сессиями: два Docker Linux клиента, official Debian trixie/strongSwan6.0.1-6+deb13u7, собственные namespace/bridge, NET_ADMIN только внутри clients. Один свой RSA2048 клиентский сертификат/ключ, свой CA и явно закреплённый server certificate. IKE/ESP AES256/SHA256/MODP2048, unique=never; чужие сетевые объекты/host networking приложения не перенастраивались. Docker создал и затем удалил собственную временную bridge/NAT сеть. + +В принятой конфигурации local ID получен непосредственно из сертификата. RouterOS подтвердил две established с одинаковым ID CN=<имя>-client и разными198.18.119.249/248. Каждый клиент выполнил Ping3/3 до собственного encrypted endpoint198.18.119.1. Это short data-plane proof, не throughput/rekey/SLA. API: clientsTotal1/clientsOnline1, activeAddress/activeSince/sessionAmbiguous отсутствуют. Два live UI1280/320 без mocks: один зелёный «онлайн», VIP не присвоен произвольно, unknown alert отсутствует; writes0/pageerrors0. Mobile screenshot просмотрен. Application source не менялся, backend118/frontend116 сохранены. + +Первый cleanup остановился: helper ошибочно ожидал comment у cert, который SDK/RouterOS не сохранил. До повторения scoped recovery проверил имя/CN/CA references/native IDs, удалил только свои объекты/credential files; Docker cleanup уже был завершён. Последующие retries сохранили baseline16×2. Первые FQDN/ADDR4, ручной DN и pinned server+ручной DN получили AUTH_FAILED; RouterOS сообщил identity not found/peer ID does not match certificate. Certificate-derived ID с тем же ключом/CA/server pin прошёл. Точная причина различий encoding не доказана; эти варианты не переименованы в success и остаются следующей120 приёмкой. + +Final cleanup: labelled clients/network удалены после owner проверки, свои native logging/peer/identity/policy/group/profile/proposal/mode-config/pool/bridge/address/certificates удалены по ID;16 исходных коллекций×2 совпали, default/public/metadata/195.195.195.195/32 сохранены. Private P12/pass/PEM/config files удалены, пустые свои directories закрыты без recursive delete. Архивы/ключи не попали в Git. Оба CHR доступны, пароли прежние. Инструментальный image сохранён для повторения; приложение не пересобиралось. Протоколы: [native/отказы/cleanup](ux-ui/acceptance/ipsec-real-multiple-sessions-2026-10-10.json), [live UI](ux-ui/acceptance/browser-ipsec-multiple-2026-10-10.json). + +References: [strongSwan configuration](https://docs.strongswan.org/docs/latest/swanctl/swanctlConf.html), [credentials](https://docs.strongswan.org/docs/latest/swanctl/swanctlDir.html), [RouterOS](https://manual.mikrotik.com/docs/virtual-private-networks/ipsec/). Два контейнера используют один public WAN/NAT, не являются независимыми площадками и не закрывают Windows/macOS/iOS/Android. Следующий120 — ID interop/encoding; остальные внешние зависимости сохранены в матрице.12.5 открыт. + +| Референс | Схема | +| --- | --- | +| [ReUI Filtering2](https://reui.io/preview/base/data-grid-filtering-2?ref=mcp) | Две подтверждённые сессии → один клиент онлайн → без произвольно выбранного VIP | diff --git a/docs/ux-ui-test-server.md b/docs/ux-ui-test-server.md index 5b69cfb8..58bd3cab 100644 --- a/docs/ux-ui-test-server.md +++ b/docs/ux-ui-test-server.md @@ -1,6 +1,6 @@ # Тестовый сервер UX/UI — 2026-10-10 -Сервер161.104.46.222: backend ux-export118/version1.0.0-test.export118, frontend ux-bound116/version1.0.0-test.bound116. Native legacy PSK export409 без архива, explicit binding/rename positive200, cleanup13×2 passed. Source/compiled route bytehash совпал; оба CHR доступны/пароли прежние. Следующий119 — isolated Linux IKE clients с общим ID. +Сервер161.104.46.222: backend ux-export118/version1.0.0-test.export118, frontend ux-bound116/version1.0.0-test.bound116. Две real Linux certificate-derived ID sessions, Ping3/3×2/API online1/UI1280/320 passed. Cleanup16×2/clients/network/private files passed; оба CHR доступны/пароли прежние. Instrumental strongSwan image accept119 сохранён. Следующий120 — ручные ID/encoding interop. | Параметр | Проверенное состояние | | --- | --- | @@ -954,3 +954,19 @@ Backend ux-export118/version1.0.0-test.export118 собран из build-bound11 | Референс | Схема | | --- | --- | | [ReUI Sheet8](https://reui.io/preview/base/sheet-8?ref=mcp) | Выбранный клиент → явная certificate binding → PKI export либо409 без архива | + +## 12.5.119 — две реальные IKE-сессии одного certificate principal (2026-10-10) + +Контролируемая граница113 дополнена реальными сессиями: два Docker Linux клиента, official Debian trixie/strongSwan6.0.1-6+deb13u7, собственные namespace/bridge, NET_ADMIN только внутри clients. Один свой RSA2048 клиентский сертификат/ключ, свой CA и явно закреплённый server certificate. IKE/ESP AES256/SHA256/MODP2048, unique=never; чужие сетевые объекты/host networking приложения не перенастраивались. Docker создал и затем удалил собственную временную bridge/NAT сеть. + +В принятой конфигурации local ID получен непосредственно из сертификата. RouterOS подтвердил две established с одинаковым ID CN=<имя>-client и разными198.18.119.249/248. Каждый клиент выполнил Ping3/3 до собственного encrypted endpoint198.18.119.1. Это short data-plane proof, не throughput/rekey/SLA. API: clientsTotal1/clientsOnline1, activeAddress/activeSince/sessionAmbiguous отсутствуют. Два live UI1280/320 без mocks: один зелёный «онлайн», VIP не присвоен произвольно, unknown alert отсутствует; writes0/pageerrors0. Mobile screenshot просмотрен. Application source не менялся, backend118/frontend116 сохранены. + +Первый cleanup остановился: helper ошибочно ожидал comment у cert, который SDK/RouterOS не сохранил. До повторения scoped recovery проверил имя/CN/CA references/native IDs, удалил только свои объекты/credential files; Docker cleanup уже был завершён. Последующие retries сохранили baseline16×2. Первые FQDN/ADDR4, ручной DN и pinned server+ручной DN получили AUTH_FAILED; RouterOS сообщил identity not found/peer ID does not match certificate. Certificate-derived ID с тем же ключом/CA/server pin прошёл. Точная причина различий encoding не доказана; эти варианты не переименованы в success и остаются следующей120 приёмкой. + +Final cleanup: labelled clients/network удалены после owner проверки, свои native logging/peer/identity/policy/group/profile/proposal/mode-config/pool/bridge/address/certificates удалены по ID;16 исходных коллекций×2 совпали, default/public/metadata/195.195.195.195/32 сохранены. Private P12/pass/PEM/config files удалены, пустые свои directories закрыты без recursive delete. Архивы/ключи не попали в Git. Оба CHR доступны, пароли прежние. Инструментальный image сохранён для повторения; приложение не пересобиралось. Протоколы: [native/отказы/cleanup](ux-ui/acceptance/ipsec-real-multiple-sessions-2026-10-10.json), [live UI](ux-ui/acceptance/browser-ipsec-multiple-2026-10-10.json). + +References: [strongSwan configuration](https://docs.strongswan.org/docs/latest/swanctl/swanctlConf.html), [credentials](https://docs.strongswan.org/docs/latest/swanctl/swanctlDir.html), [RouterOS](https://manual.mikrotik.com/docs/virtual-private-networks/ipsec/). Два контейнера используют один public WAN/NAT, не являются независимыми площадками и не закрывают Windows/macOS/iOS/Android. Следующий120 — ID interop/encoding; остальные внешние зависимости сохранены в матрице.12.5 открыт. + +| Референс | Схема | +| --- | --- | +| [ReUI Filtering2](https://reui.io/preview/base/data-grid-filtering-2?ref=mcp) | Две подтверждённые сессии → один клиент онлайн → без произвольно выбранного VIP | diff --git a/docs/ux-ui/acceptance/browser-ipsec-multiple-2026-10-10.json b/docs/ux-ui/acceptance/browser-ipsec-multiple-2026-10-10.json new file mode 100644 index 00000000..6116e458 --- /dev/null +++ b/docs/ux-ui/acceptance/browser-ipsec-multiple-2026-10-10.json @@ -0,0 +1,27 @@ +{ + "date": "2026-10-10", + "runtime": { + "backend": "ux-export118", + "frontend": "ux-bound116" + }, + "nativeSessions": 2, + "linuxEncryptedPings3of3": true, + "cases": [ + { + "width": 1280, + "oneClientOnline": true, + "noArbitraryVip": true, + "noAmbiguity": true, + "noOverflow": true + }, + { + "width": 320, + "oneClientOnline": true, + "noArbitraryVip": true, + "noAmbiguity": true, + "noOverflow": true + } + ], + "pageErrors": [], + "applicationWrites": [] +} \ No newline at end of file diff --git a/docs/ux-ui/acceptance/ipsec-real-multiple-sessions-2026-10-10.json b/docs/ux-ui/acceptance/ipsec-real-multiple-sessions-2026-10-10.json new file mode 100644 index 00000000..eb7d45ac --- /dev/null +++ b/docs/ux-ui/acceptance/ipsec-real-multiple-sessions-2026-10-10.json @@ -0,0 +1,420 @@ +{ + "date": "2026-10-10", + "block": "12.5.119", + "runtime": { + "backend": "ux-export118", + "frontend": "ux-bound116" + }, + "native": { + "date": "2026-10-10", + "block": "12.5.119", + "name": "mm-ipsec119-1791648542512", + "linux": [ + { + "index": 0, + "vip": "198.18.119.249", + "initiated": true, + "ping3of3": true + }, + { + "index": 1, + "vip": "198.18.119.248", + "initiated": true, + "ping3of3": true + } + ], + "cleanup": [ + { + "serverId": 1, + "/system/logging": true, + "/ip/ipsec/identity": true, + "/ip/ipsec/peer": true, + "/ip/ipsec/policy": true, + "/ip/ipsec/policy/group": true, + "/ip/ipsec/mode-config": true, + "/ip/ipsec/proposal": true, + "/ip/ipsec/profile": true, + "/certificate": true, + "/file": true, + "/ip/address": true, + "/ip/route": true, + "/ip/firewall/nat": true, + "/ip/pool": true, + "/interface/bridge": true, + "/ipv6/address": true + }, + { + "serverId": 2, + "/system/logging": true, + "/ip/ipsec/identity": true, + "/ip/ipsec/peer": true, + "/ip/ipsec/policy": true, + "/ip/ipsec/policy/group": true, + "/ip/ipsec/mode-config": true, + "/ip/ipsec/proposal": true, + "/ip/ipsec/profile": true, + "/certificate": true, + "/file": true, + "/ip/address": true, + "/ip/route": true, + "/ip/firewall/nat": true, + "/ip/pool": true, + "/interface/bridge": true, + "/ipv6/address": true + } + ], + "clientImage": "sha256:c9d01c801de88b2349f685c1cb631e67a8b1c697439a00148d4045c23a584054", + "native": [ + { + ".id": "*1", + "id": "CN=mm-ipsec119-1791648542512-client", + "state": "established", + "dynamic-address": "198.18.119.249", + "remote-address": "161.104.46.222", + "uptime": "5s" + }, + { + ".id": "*2", + "id": "CN=mm-ipsec119-1791648542512-client", + "state": "established", + "dynamic-address": "198.18.119.248", + "remote-address": "161.104.46.222", + "uptime": "2s" + } + ], + "catalog": { + "name": "mm-ipsec119-1791648542512", + "online": true + }, + "summary": { + "clientsTotal": 1, + "clientsOnline": 1 + }, + "dockerCleanup": true, + "credentialFilesRemoved": true + }, + "browserEvidence": "browser-ipsec-multiple-2026-10-10.json", + "preliminary": { + "ownershipRecovery": { + "date": "2026-10-10", + "name": "mm-ipsec119-1791646686109", + "certificates": [ + { + ".id": "*AA", + "name": "mm-ipsec119-1791646686109-ca", + "common-name": "mm-ipsec119-1791646686109-ca", + "key-usage": "key-cert-sign,crl-sign" + }, + { + ".id": "*AB", + "name": "mm-ipsec119-1791646686109-server", + "common-name": "194.226.121.150", + "ca": "mm-ipsec119-1791646686109-ca", + "key-usage": "digital-signature,key-encipherment,tls-server" + }, + { + ".id": "*AC", + "name": "mm-ipsec119-1791646686109-client", + "common-name": "mm-ipsec119-1791646686109-client", + "ca": "mm-ipsec119-1791646686109-ca", + "key-usage": "digital-signature,key-encipherment,tls-client" + } + ], + "deleted": [ + { + "path": "/ip/ipsec/identity", + "id": "*A" + }, + { + "path": "/ip/ipsec/peer", + "id": "*1" + }, + { + "path": "/ip/ipsec/policy", + "id": "*1000000" + }, + { + "path": "/ip/address", + "id": "*74" + }, + { + "path": "/interface/bridge", + "id": "*77" + }, + { + "path": "/ip/ipsec/mode-config", + "id": "*2" + }, + { + "path": "/ip/pool", + "id": "*D" + }, + { + "path": "/ip/ipsec/policy/group", + "id": "*3" + }, + { + "path": "/ip/ipsec/proposal", + "id": "*1" + }, + { + "path": "/ip/ipsec/profile", + "id": "*B" + }, + { + "path": "/certificate", + "id": "*AB" + }, + { + "path": "/certificate", + "id": "*AC" + }, + { + "path": "/certificate", + "id": "*AA" + } + ], + "credentialFilesRemoved": true, + "nativeOwnedRemoved": true + }, + "initialAuth": { + "date": "2026-10-10", + "block": "12.5.119", + "name": "mm-ipsec119-1791647119700", + "linux": [], + "cleanup": [ + { + "serverId": 1, + "/system/logging": true, + "/ip/ipsec/identity": true, + "/ip/ipsec/peer": true, + "/ip/ipsec/policy": true, + "/ip/ipsec/policy/group": true, + "/ip/ipsec/mode-config": true, + "/ip/ipsec/proposal": true, + "/ip/ipsec/profile": true, + "/certificate": true, + "/file": true, + "/ip/address": true, + "/ip/route": true, + "/ip/firewall/nat": true, + "/ip/pool": true, + "/interface/bridge": true, + "/ipv6/address": true + }, + { + "serverId": 2, + "/system/logging": true, + "/ip/ipsec/identity": true, + "/ip/ipsec/peer": true, + "/ip/ipsec/policy": true, + "/ip/ipsec/policy/group": true, + "/ip/ipsec/mode-config": true, + "/ip/ipsec/proposal": true, + "/ip/ipsec/profile": true, + "/certificate": true, + "/file": true, + "/ip/address": true, + "/ip/route": true, + "/ip/firewall/nat": true, + "/ip/pool": true, + "/interface/bridge": true, + "/ipv6/address": true + } + ], + "clientImage": "sha256:c9d01c801de88b2349f685c1cb631e67a8b1c697439a00148d4045c23a584054", + "error": "IKE initiation failed: ad - curl_plugin_create not found and no plugin file available\ninitiate failed: establishing CHILD_SA 'private' failed\n[IKE] initiating IKE_SA lab[1] to 194.226.121.150\n[ENC] generating IKE_SA_INIT request 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) N(FRAG_SUP) N(HASH_ALG) N(REDIR_SUP) ]\n[NET] sending packet: from 172.19.0.2[500] to 194.226.121.150[500] (464 bytes)\n[NET] received packet: from 194.226.121.150[500] to 172.19.0.2[500] (437 bytes)\n[ENC] parsed IKE_SA_INIT response 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) N(FRAG_SUP) CERTREQ ]\n[CFG] selected proposal: IKE:AES_CBC_256/HMAC_SHA2_256_128/PRF_HMAC_SHA2_256/MODP_2048\n[IKE] local host is behind NAT, sending keep alives\n[IKE] sending cert request for \"CN=mm-ipsec119-1791647119700-ca\"\n[IKE] authentication of 'mm-ipsec119-1791647119700.example' (myself) with RSA signature successful\n[IKE] sending end entity cert \"CN=mm-ipsec119-1791647119700-client\"\n[IKE] establishing CHILD_SA private{1}\n[ENC] generating IKE_AUTH request 1 [ IDi CERT CERTREQ IDr AUTH CPRQ(ADDR DNS) SA TSi TSr N(MOBIKE_SUP) N(NO_ADD_ADDR) N(EAP_ONLY) N(MSG_ID_SYN_SUP) ]\n[ENC] splitting IKE message (1440 bytes) into 2 fragments\n[ENC] generating IKE_AUTH request 1 [ EF(1/2) ]\n[ENC] generating IKE_AUTH request 1 [ EF(2/2) ]\n[NET] sending packet: from 172.19.0.2[4500] to 194.226.121.150[4500] (1236 bytes)\n[NET] sending packet: from 172.19.0.2[4500] to 194.226.121.150[4500] (276 bytes)\n[NET] received packet: from 194.226.121.150[4500] to 172.19.0.2[4500] (272 bytes)\n[ENC] parsed IKE_AUTH response 1 [ N(AUTH_FAILED) ]\n[IKE] received AUTHENTICATION_FAILED notify error\n\n\n1 !== 0\n", + "dockerCleanup": true, + "credentialFilesRemoved": true + }, + "fqdn": { + "date": "2026-10-10", + "block": "12.5.119", + "name": "mm-ipsec119-1791647456912", + "linux": [], + "cleanup": [ + { + "serverId": 1, + "/system/logging": true, + "/ip/ipsec/identity": true, + "/ip/ipsec/peer": true, + "/ip/ipsec/policy": true, + "/ip/ipsec/policy/group": true, + "/ip/ipsec/mode-config": true, + "/ip/ipsec/proposal": true, + "/ip/ipsec/profile": true, + "/certificate": true, + "/file": true, + "/ip/address": true, + "/ip/route": true, + "/ip/firewall/nat": true, + "/ip/pool": true, + "/interface/bridge": true, + "/ipv6/address": true + }, + { + "serverId": 2, + "/system/logging": true, + "/ip/ipsec/identity": true, + "/ip/ipsec/peer": true, + "/ip/ipsec/policy": true, + "/ip/ipsec/policy/group": true, + "/ip/ipsec/mode-config": true, + "/ip/ipsec/proposal": true, + "/ip/ipsec/profile": true, + "/certificate": true, + "/file": true, + "/ip/address": true, + "/ip/route": true, + "/ip/firewall/nat": true, + "/ip/pool": true, + "/interface/bridge": true, + "/ipv6/address": true + } + ], + "clientImage": "sha256:c9d01c801de88b2349f685c1cb631e67a8b1c697439a00148d4045c23a584054", + "error": "IKE initiation failed: ad - curl_plugin_create not found and no plugin file available\ninitiate failed: establishing CHILD_SA 'private' failed\n[IKE] initiating IKE_SA lab[1] to 194.226.121.150\n[ENC] generating IKE_SA_INIT request 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) N(FRAG_SUP) N(HASH_ALG) N(REDIR_SUP) ]\n[NET] sending packet: from 172.19.0.2[500] to 194.226.121.150[500] (464 bytes)\n[NET] received packet: from 194.226.121.150[500] to 172.19.0.2[500] (437 bytes)\n[ENC] parsed IKE_SA_INIT response 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) N(FRAG_SUP) CERTREQ ]\n[CFG] selected proposal: IKE:AES_CBC_256/HMAC_SHA2_256_128/PRF_HMAC_SHA2_256/MODP_2048\n[IKE] local host is behind NAT, sending keep alives\n[IKE] sending cert request for \"CN=mm-ipsec119-1791647456912-ca\"\n[IKE] authentication of 'mm-ipsec119-1791647456912.example' (myself) with RSA signature successful\n[IKE] sending end entity cert \"CN=mm-ipsec119-1791647456912-client\"\n[IKE] establishing CHILD_SA private{1}\n[ENC] generating IKE_AUTH request 1 [ IDi CERT CERTREQ IDr AUTH CPRQ(ADDR DNS) SA TSi TSr N(MOBIKE_SUP) N(NO_ADD_ADDR) N(EAP_ONLY) N(MSG_ID_SYN_SUP) ]\n[ENC] splitting IKE message (1440 bytes) into 2 fragments\n[ENC] generating IKE_AUTH request 1 [ EF(1/2) ]\n[ENC] generating IKE_AUTH request 1 [ EF(2/2) ]\n[NET] sending packet: from 172.19.0.2[4500] to 194.226.121.150[4500] (1236 bytes)\n[NET] sending packet: from 172.19.0.2[4500] to 194.226.121.150[4500] (276 bytes)\n[NET] received packet: from 194.226.121.150[4500] to 172.19.0.2[4500] (256 bytes)\n[ENC] parsed IKE_AUTH response 1 [ N(AUTH_FAILED) ]\n[IKE] received AUTHENTICATION_FAILED notify error\n\n\n1 !== 0\n", + "routerAuthLogs": [ + "generated CA certificate: mm-ipsec119-1791647456912-ca", + "generated certificate 73CAEE2AB860519E:194.226.121.150::::::IP:194.226.121.150 rsa-size:2048 usage:80000005 valid:2 skid:[hash] for CA mm-ipsec119-1791647456912-ca", + "generated certificate 6EC70FF67A4A34A1:mm-ipsec119-1791647456912-client::::::DNS:mm-ipsec119-1791647456912.example rsa-size:2048 usage:40000005 valid:2 skid:[hash] for CA mm-ipsec119-1791647456912-ca", + "ipsec identity added by api:admin@:: (*A = /ip ipsec identity add auth-method=digital-signature certificate=mm-ipsec119-1791647456912-server comment=mm-ipsec119-1791647456912 generate-policy=port-strict match-by=certificate mode-config=mm-ipsec119-1791647456912 my-id=address:194.226.121.150 peer=mm-ipsec119-1791647456912 policy-template-group=mm-ipsec119-1791647456912 remote-certificate=mm-ipsec119-1791647456912-client remote-id=fqdn:mm-ipsec119-1791647456912.example)", + "mm-ipsec119-1791647456912: => certificate (size 0x36f)", + "identity not found for responder: ADDR4:194.226.121.150 peer: FQDN:mm-ipsec119-1791647456912.example" + ], + "dockerCleanup": true, + "credentialFilesRemoved": true + }, + "manualDn": { + "date": "2026-10-10", + "block": "12.5.119", + "name": "mm-ipsec119-1791647684917", + "linux": [], + "cleanup": [ + { + "serverId": 1, + "/system/logging": true, + "/ip/ipsec/identity": true, + "/ip/ipsec/peer": true, + "/ip/ipsec/policy": true, + "/ip/ipsec/policy/group": true, + "/ip/ipsec/mode-config": true, + "/ip/ipsec/proposal": true, + "/ip/ipsec/profile": true, + "/certificate": true, + "/file": true, + "/ip/address": true, + "/ip/route": true, + "/ip/firewall/nat": true, + "/ip/pool": true, + "/interface/bridge": true, + "/ipv6/address": true + }, + { + "serverId": 2, + "/system/logging": true, + "/ip/ipsec/identity": true, + "/ip/ipsec/peer": true, + "/ip/ipsec/policy": true, + "/ip/ipsec/policy/group": true, + "/ip/ipsec/mode-config": true, + "/ip/ipsec/proposal": true, + "/ip/ipsec/profile": true, + "/certificate": true, + "/file": true, + "/ip/address": true, + "/ip/route": true, + "/ip/firewall/nat": true, + "/ip/pool": true, + "/interface/bridge": true, + "/ipv6/address": true + } + ], + "clientImage": "sha256:c9d01c801de88b2349f685c1cb631e67a8b1c697439a00148d4045c23a584054", + "error": "IKE initiation failed: - curl_plugin_create not found and no plugin file available\ninitiate failed: establishing CHILD_SA 'private' failed\n[IKE] initiating IKE_SA lab[1] to 194.226.121.150\n[ENC] generating IKE_SA_INIT request 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) N(FRAG_SUP) N(HASH_ALG) N(REDIR_SUP) ]\n[NET] sending packet: from 172.19.0.2[500] to 194.226.121.150[500] (464 bytes)\n[NET] received packet: from 194.226.121.150[500] to 172.19.0.2[500] (437 bytes)\n[ENC] parsed IKE_SA_INIT response 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) N(FRAG_SUP) CERTREQ ]\n[CFG] selected proposal: IKE:AES_CBC_256/HMAC_SHA2_256_128/PRF_HMAC_SHA2_256/MODP_2048\n[IKE] local host is behind NAT, sending keep alives\n[IKE] sending cert request for \"CN=mm-ipsec119-1791647684917-ca\"\n[IKE] authentication of 'CN=mm-ipsec119-1791647684917-client' (myself) with RSA signature successful\n[IKE] sending end entity cert \"CN=mm-ipsec119-1791647684917-client\"\n[IKE] establishing CHILD_SA private{1}\n[ENC] generating IKE_AUTH request 1 [ IDi CERT CERTREQ IDr AUTH CPRQ(ADDR DNS) SA TSi TSr N(MOBIKE_SUP) N(NO_ADD_ADDR) N(EAP_ONLY) N(MSG_ID_SYN_SUP) ]\n[ENC] splitting IKE message (1472 bytes) into 2 fragments\n[ENC] generating IKE_AUTH request 1 [ EF(1/2) ]\n[ENC] generating IKE_AUTH request 1 [ EF(2/2) ]\n[NET] sending packet: from 172.19.0.2[4500] to 194.226.121.150[4500] (1236 bytes)\n[NET] sending packet: from 172.19.0.2[4500] to 194.226.121.150[4500] (308 bytes)\n[NET] received packet: from 194.226.121.150[4500] to 172.19.0.2[4500] (224 bytes)\n[ENC] parsed IKE_AUTH response 1 [ N(AUTH_FAILED) ]\n[IKE] received AUTHENTICATION_FAILED notify error\n\n\n1 !== 0\n", + "routerAuthLogs": [ + "generated CA certificate: mm-ipsec119-1791647684917-ca", + "generated certificate 1A59BFB767930A62:194.226.121.150::::::IP:194.226.121.150 rsa-size:2048 usage:80000005 valid:2 skid:[hash] for CA mm-ipsec119-1791647684917-ca", + "generated certificate 5221DA522AA8CD0D:mm-ipsec119-1791647684917-client::::::DNS:mm-ipsec119-1791647684917.example rsa-size:2048 usage:40000005 valid:2 skid:[hash] for CA mm-ipsec119-1791647684917-ca", + "ipsec identity added by api:admin@:: (*A = /ip ipsec identity add auth-method=digital-signature certificate=mm-ipsec119-1791647684917-server comment=mm-ipsec119-1791647684917 generate-policy=port-strict match-by=certificate mode-config=mm-ipsec119-1791647684917 peer=mm-ipsec119-1791647684917 policy-template-group=mm-ipsec119-1791647684917 remote-certificate=mm-ipsec119-1791647684917-client)", + "mm-ipsec119-1791647684917: => certificate (size 0x36f)" + ], + "dockerCleanup": true, + "credentialFilesRemoved": true + }, + "pinnedServer": { + "date": "2026-10-10", + "block": "12.5.119", + "name": "mm-ipsec119-1791648365867", + "linux": [], + "cleanup": [ + { + "serverId": 1, + "/system/logging": true, + "/ip/ipsec/identity": true, + "/ip/ipsec/peer": true, + "/ip/ipsec/policy": true, + "/ip/ipsec/policy/group": true, + "/ip/ipsec/mode-config": true, + "/ip/ipsec/proposal": true, + "/ip/ipsec/profile": true, + "/certificate": true, + "/file": true, + "/ip/address": true, + "/ip/route": true, + "/ip/firewall/nat": true, + "/ip/pool": true, + "/interface/bridge": true, + "/ipv6/address": true + }, + { + "serverId": 2, + "/system/logging": true, + "/ip/ipsec/identity": true, + "/ip/ipsec/peer": true, + "/ip/ipsec/policy": true, + "/ip/ipsec/policy/group": true, + "/ip/ipsec/mode-config": true, + "/ip/ipsec/proposal": true, + "/ip/ipsec/profile": true, + "/certificate": true, + "/file": true, + "/ip/address": true, + "/ip/route": true, + "/ip/firewall/nat": true, + "/ip/pool": true, + "/interface/bridge": true, + "/ipv6/address": true + } + ], + "clientImage": "sha256:c9d01c801de88b2349f685c1cb631e67a8b1c697439a00148d4045c23a584054", + "error": "IKE initiation failed: load - curl_plugin_create not found and no plugin file available\ninitiate failed: establishing CHILD_SA 'private' failed\n[IKE] initiating IKE_SA lab[1] to 194.226.121.150\n[ENC] generating IKE_SA_INIT request 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) N(FRAG_SUP) N(HASH_ALG) N(REDIR_SUP) ]\n[NET] sending packet: from 172.19.0.2[500] to 194.226.121.150[500] (464 bytes)\n[NET] received packet: from 194.226.121.150[500] to 172.19.0.2[500] (437 bytes)\n[ENC] parsed IKE_SA_INIT response 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) N(FRAG_SUP) CERTREQ ]\n[CFG] selected proposal: IKE:AES_CBC_256/HMAC_SHA2_256_128/PRF_HMAC_SHA2_256/MODP_2048\n[IKE] local host is behind NAT, sending keep alives\n[IKE] sending cert request for \"CN=mm-ipsec119-1791648365867-ca\"\n[IKE] authentication of 'CN=mm-ipsec119-1791648365867-client' (myself) with RSA signature successful\n[IKE] sending end entity cert \"CN=mm-ipsec119-1791648365867-client\"\n[IKE] establishing CHILD_SA private{1}\n[ENC] generating IKE_AUTH request 1 [ IDi CERT CERTREQ AUTH CPRQ(ADDR DNS) SA TSi TSr N(MOBIKE_SUP) N(NO_ADD_ADDR) N(EAP_ONLY) N(MSG_ID_SYN_SUP) ]\n[ENC] splitting IKE message (1440 bytes) into 2 fragments\n[ENC] generating IKE_AUTH request 1 [ EF(1/2) ]\n[ENC] generating IKE_AUTH request 1 [ EF(2/2) ]\n[NET] sending packet: from 172.19.0.2[4500] to 194.226.121.150[4500] (1236 bytes)\n[NET] sending packet: from 172.19.0.2[4500] to 194.226.121.150[4500] (276 bytes)\n[NET] received packet: from 194.226.121.150[4500] to 172.19.0.2[4500] (240 bytes)\n[ENC] parsed IKE_AUTH response 1 [ N(AUTH_FAILED) ]\n[IKE] received AUTHENTICATION_FAILED notify error\n\n\n1 !== 0\n", + "routerAuthLogs": [ + "ipsec identity added by api:admin@:: (*A = /ip ipsec identity add auth-method=digital-signature certificate=mm-ipsec119-1791648365867-server comment=mm-ipsec119-1791648365867 generate-policy=port-strict match-by=certificate mode-config=mm-ipsec119-1791648365867 peer=mm-ipsec119-1791648365867 policy-template-group=mm-ipsec119-1791648365867 remote-certificate=mm-ipsec119-1791648365867-client)", + "mm-ipsec119-1791648365867: => certificate (size 0x36f)", + "peer's ID does not match certificate", + "peer's ID does not match certificate", + "peer failed to authorize: mm-ipsec119-1791648365867 161.104.46.222-194.226.121.150 899db11c475c6cdd:693c9339b9312cce" + ], + "dockerCleanup": true, + "credentialFilesRemoved": true + } + }, + "client": { + "image": "mmapp-test/strongswan:accept119", + "debianPackages": "6.0.1-6+deb13u7", + "networkNamespaces": 2, + "capability": "NET_ADMIN", + "sharedClientCertificate": true, + "serverCertificatePinned": true, + "localId": "Derived directly from certificate; manual FQDN/DN failed", + "crypto": "AES256/SHA256/MODP2048; certificate pubkey authentication" + }, + "bounds": [ + "Two sessions with one certificate-derived DN; not all IKE ID types", + "FQDN/ADDR4/manual DN interop remains unaccepted; exact encoding cause not proven", + "Two Linux Docker namespaces use one public WAN/NAT; not physical redundancy or desktop/mobile client OS acceptance", + "Ping3/3 each is short data-plane check, not performance/SLA/rekey test", + "First cleanup comment assumption failed; scoped recovery removed verified own IDs/files before retries" + ] +} diff --git a/docs/ux-ui/screens/ipsec-multiple-1280-2026-10-10.png b/docs/ux-ui/screens/ipsec-multiple-1280-2026-10-10.png new file mode 100644 index 0000000000000000000000000000000000000000..2aa1297dbc95a6fd27aa3c511e5015b335aa1307 GIT binary patch literal 112804 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 z z@F9Fp?~oy^)sto=>Y~=h%>X{353dTs!VarJC_g_x8R*74(MAYWiEi#u^(G3t$pj8{ zKnbpoW^=o_xdj*XzlaBJ0>2QkKw{`BZ543kIoPNMb?sIqw|8iM`t<1lhb&YK`Ai&I ze%14p-<6dyB?b^;a6%4GUb8ryqPfnw&0^UHqdHQSk z!pJQ3*wS*GmtFv5W1`t{lj_alYy7Ud3%YZv-fQ2ws!r4Y%)0AK=^X_he-T84rr()$ zKEP40aAdZ(_W0k+B{B2PE+J8RYc{)gUegwlWh#|9KH3{%>%6#}Ph5ZGdHUd{!!AlC zoVGT%mff!|5J|NT#oAdn0~YknS@`EE1Qktlq^_<8jBD+cA>(NiC2k%bcWz^kmS_r3 zWaT&})s10mXIyJ8YlG+#)35r)7al{YWkj8Cy`pUZbbAgBpMUK5m3IM|qc*Wo<=qU! z&s};wu$wF5892Q>cGN2y=KKIjPHjl+7kIV2Xs7$(8*0R9rE z`5!mjH2Y67qv)W;{LoP=X`<+Y2o*}f+GmO`#tK$e78m!3Z^0R|_cHZ9w`}<6e*I!F z=+Qc@a$(2(R*G;f{aN$TJgciyRl74s%ihk)D#phxpm^BisW4u$s@;WSRai3eEj`iuAcC z9X-?khw7YTQqCIr(o8&*B`txg9U6Px5I$GEM#il<$jrOLq z{jZxpGu*rW{6ABV;$Iq?_(eR&{@CWO;Xh5tqa-#e zbZ9LpNwt4K;2CXDYWEG_4!AEXTa0wxEjlQ~J4FL@64C7$><}4~Qap@x|F^lkwAY{O zLG=z}l(Tgb`tL%$e0jUA_$qmVZL5vOR??pibE!X0*X8&9WuUfZ@>{1RAV4w4L~yA8 zcLdu%UO(UQC!ri?B%@(6W)jW#xqD;pz&%@~lZ5wSiouAjm{ZtepfiXr2wcy7^C6 z8jJ!ht8dEvzR zT6J~xu-dl+iudGxbXZblHq|rdQKjgA(D;{L9l{UvlynltW@k-Oe`NrPl_UDsZ13t# zoSZB)*tGxc{S_i2U%%@3EpzQsTH7oZ*q1v^8NF( zDE0>-icdu|hShAX12b}oKGXNG?*AJX;xYLL-hje)#GBSU{6sEd2)W@-nSLh=apT~X z6@4J=E^(ef8zhx&9zH>>VsQ_KG|i_pSS=FWS`ik83QjN*ym4R|UeW327+o#Wrr z@NlTK8WqQ0)3cB+j+M(R`lvOoZ*TD=_T74Eh)F7uza}9`WfR;is4|LqEpYc%QBhIn zQy1dWi_Em@2Q^r$+1Zbmx50+2RkWb4GWEfO2NMz#dS-)ve=@jm-a?TQ2h&S3p2g?> z)Eet|1G?9c3wKzm%I27(^{kr$% zpKHIa#iLS+va4e3urjc(R>|%)P06&RjZqmu*<#ZJQmw6G+`!_*sPMVM(`Gt4kjl@t zy-|bZjL~o3I`w9pkol!G))n}F=z8n0sN1${bU?*hKv8KBP*kLmmR67&Qo1{&k?xQZ z5Re$UyN2!>1VOq+y1S$l7<#^I?&p2>-tTejkH0();a69k=Q`I~r|Fk2qa@knG+0`} z-P;+%2~sa;D>d3TnTWz<`Ba0Q8)Px>$oS>$)7L)h;qQ&`Kq!lc2UC*1`>fHkeUyu; zW+V%bDmKne|0Cv3N;$`u3#G0=Iv$=6w<*|uwItsYQI*oquunq2kK>=aIv~VS%vzfpyME7;C-r6iQQS)yJDBQbTQ zNiZ>s*OvT<|M`w0eG&SQJSU))Ii~E|Q*v*lVY1L7Amz(_HjOv#6Gv5~>o#@=`+Ivv zopKWgBfiJYv7dGS4kS!i%=)eg#EO3X+h0ZPdf8$(Hj11@O7}r<#k16D*@xBW|K{o! zsl-P|gPIySc$RiY@w+d8O4jLzs4VC9h6bV6bSKheZ`+`SFhqe|O#k;>qL zp9Ggti6mqBHW7Gtsmas(?Wm`okfhiZ{rJL?GDJ>yR@O=viTiQS)4=MN^4}y^#J1QD zmy2oTTt}V`fr|Tqd`6vV|3u;?N)z^sB>evRqK;5%WBRa#1;f@UW?NGYR4ak?BUxDB zPFiV2Y&Cl2yqugl0pvlV-}`Q1zkd77%UkEX($G_GT7|sQJY|F-Cs!!KS(-sp_UQoX zxtWcfaW@AtM&sVPW>f%rDJ%F{LR@IVP@3BujH3AKo;GizXM-}tOf^)>B!5EiUXz#b z;+#$l3>I{Zhq*Z}RqDtyT&lv6tnlq7u)4+Xat`xBQ2XQ6&LwXtwNrk@{o*tq4&Iy3 z*t~z|HrK&)j;G05kO+FF3!?Y7>{Kb9gev3G<5F_8fF>z@ii?WB6Ln-S>WX5SaT$H{ z(h<*^f$Ik0>sP%o6WNnWvi}`f;A(uA6+%9TA{g)4dbUSLyixGay^yg zhj+%xHl@`qC%^UPcwM)$6_Kehu%nDLh@W$DDl<9^HInV4m`M89$uT3F361GrS4w*M z(r|yD_*j+xaixP2P}RO{a16jXDc5OjvOWg~Y2HU+=e`%oVt=DTGTe-R?SjhSC5q;a z^M$Onwfx22RF*d~-)CY%jn{7B;_|>ZMp@}&Q6$yu-Lp$1$^~E@AR~YEN>WQqORFg@ z4c^>*31d=sL0>Dl!y2*ro}TDgn<-M2&oJ+(4Ly+_N!;G6?rghY={S_lky2nW*qTec zCBu`-WZ+C;Y8h6Ea_aNHCiRx^;Pvo&WX~}9_r0|ef2_uI#bej};4q2WMN=74o5ePF z03E9q{39Eh0Ky0UN1Gyitin&`IV!&sek!Vg3d}42-rjx}0_1sV z8)FRKLZAMq?9J3}MW?6lgIa;7Nc>~F&7m|_y_OoVPQHCBi?ar}kqV<~K_pd6iy$eB z-o@$Kz5A40QXa=WqgiIF5^X?Zk&we$|IcAUuL+0&ps-?v13jQ`(>ptPjC0sB$A6-q zt*@Bje?)on)h#!=0q4HOYGG^TbJ|yu|1fyXBz7AQ%geD`I7KL08(Te@n(nKH)!$d9 zrq8lBFNG*RDV_ zAeaO4u4L}LYL4m{YT+V&A*e@gkDB6o9Z>6SJPs{M+3k%ju>4gxS|tv7dD0mYB?$1C zjxL#_qkE2K!?{qq13e+j$ujR71iJ0oC9kBUzoy7e`B+X$DpNHtH{Yk)i4PXJm?k_p z+x!5&JTUEuzjQ9eU-c=)MC#z%(LoSdhWP^i<)>x~db6YhKk2rpjND|LaMrI@KSK!x z9AanUN}7E|QZK&lj`kR%=j%>#$MOXNiUT+fS6<3!64MbSXE|cxAeB#yFeOG$W+-sJZr5R!WiE zQB(r*_w=4FiM)3CmR~A!G&SAZJJT1IPWSTVC#r&jg=TexkFHiAmY`&kdgp}R{n)9g zL{4Wj%lvK2*{KRxM##Dyb>;HkFQ3(vr>-0{fmUGA`#S{M=O*$(=M5-}Kva{}N(gb8 z)*{98^cY~4l)QgViq}nx2PfdWazTrUiI>~kHN=lR1)7 z0I&iA2P3ke^&{tjMmtMuvv|&?gkK$>+knpryWgh#2c3G8LLXNBwhM3qH(L0jH;$bL zcMks4Y|j>;)bU8Giv!Jb$1O1j$J_CEfmiWh$PM~hv9NAzW^3eq;#$z{-&wz>S@4Uc zKO%R3SETe|-)5@)=gTdvYlSpi*bQ3XVN@Pi=4@iYNA~3%u4_V){rWq{cf$ z4#Ty>VDW=iJ^gpSGT^}=eUH-0%NeoG02Db}cR+RsMNH~Z-dyZVe_X z6Y@CLK8>!b(BSFrO9W#CzgT>S7z7;l^3 z4dG+|x9#9!5XQGbUrSYSCd+hv?M`*TVWS$CKJ-Be65nfLRGDaGd9Ig~Gr7y4g>+YJ z)RD*1U?yP??#IOLnW?HUOe&|EpjWQQ2x4piuHaHce^#?HdjW$Y$CQY1^WHO?kyT+1 z+&Efr|6Ji`Vjh~DQ-_0yCz0NtT#3M4Eih^9+pOc@4;S3v z>!|Y26bf>R4ZnXGicmr?uhQS8dry6~`@8mq<8YmB6Yo88PK{P;<+Xkn8KE|-9?ECw zzvZWf4WpDx{_H2Mj#}iCOrv7MH5S@BEBtRx|7<-Mh?FqxNj@Q);-{~fOfwZY0Au$* z-eqCg$eqBB&BLFcd9+qiSk9dee!r9o*Fm_DCfrkYy-Dm%;cxgMYr4uU zM0^)@Hha5IC-U`##I2MBZSANXx66|BL*DY@tzUD7D9k~*y=n607OxMEEo|F9As-`2 zIP5aQp(9m~muBnTy#o=ZmOp|QX*n`lI&=FA7#{`&zqP784`#%!5nEt~8Vjto3nKYuF!SW)=h zKOe<=(Vo$~n)dbChYb-Ur7r?9at*O&NDwOL%Mskv+?YJBwj%n)-CpXPsgfJ&`@?c# zM|W}Za@ej;d^=Iyz`mkcB8$sRiL>%WgUt`NZuu^qMPnb!t9g|yyMyS66e^A8{p07x zo_F1uDg$2%_0=7p`ixI*p6%31#yIfoF{r#)kS6B6Z~JhG=HD23F5gB48f1uv9qMlX zv%49pSQ>v$;8~qhEoju~YRE2L|LdQ*>wuK=3d&u1bINqjx^3b)`n~op zkXP#Px%_GTS5tbh!@fQF7a3uDLs=BqOSmtTw!(4nKE2U6@$mlkO0Q98o3^jK{BX;q zJk=cg5A?C!qi(gaQW-0R&_jjZMtO9Rn0EmGj3gCTyaeaXY)gmRGr0T6);85HCMd6L z6Z$L!qG_fH^5Sx@10Oqrd;5>^hnczJ8COJg@5clHDeqrCbnw6PH&`)sx_3 z>ijtbUo9z}E_K1_Y=62$`UdWm60Q(}v^}y^(e5_th%nShN{*?{xjh8O3C8hEvC2ke zn1IDU4nlqiq~$hOvS^b`bCbY54NFD@@!~F+4gc{D{9qun>e%-AC~e-d@*m???rn+p zg7r&-)uY>OKCF6N!-py+2goWIW#0P&32x^iwD<=S7iY)ERb0i_b+~J4a_`2z52ldc zs-WZV`{omR^&@C1^4Y2F5OXbw4L{GH+*B)S%13E4%$f4WDYtm>74r7s*!MeCWm;Ri zW|}9&o6qtdxxArK!a&rFnXfK>e46mVSPyu-krb3GL5z zEU|#yob-Ro{OVNLW_E&| zd)Q1A??R;0$t-x=NH>2}`I&mWWAm%Z6n$;;&cL_KJz?@3FW>(gt<#8nVB9jbuE3{)soPXQQj`+{v|ntezU8gXUEf4SBYI4VOga zlIcI}wayh4r!ekz+uhn3q|Lss>_utCfb13-=&j6W9T^aIyK4Bh@a}_E4iQlRtYGrS zKGEv=w;2uGYKxhSbd6@uZtvU(n0 zg2!bgxYpX%+C0~Au{lWF*83}k)R;jg$X+M2mUv8izWGDUu$n#-Z)jWudp12)yB8P(>0I@4?zVplm3D02iC zsM{fR+8i$Aina=QckMk`e$(hiN&3&rwrAJ2W>4JPb!MH9Ni55B-BStOH#oE@#U81z z?U_g)A!R$1hIQrt*&&-MXMr=Qu8e(ptFPZrDbP04$FeeIE2YS6)6rL7j}VffFlHGi`&0VJ6B9wNGevk=z99~DXkg%Q7B&<=1#p?E zsocE$mj$^hC7)l5>(gZ5u-v+@-k;9reKC;4SxRdvadrCKuIEb`)^+#owSh+RI-l@L ziDdFN_vXFB8>$e6-yhwcT@Edu1ZSo59er@sy^Kui;gu~&*RE&jJHCJRAa$!>&T_qS z8BJEwwwzKoeg9z5_Uy-l;PbHN5Z}2QH~*R~nWhQ86vg);He3_g)e1KAwnDkQtxO`T z`NkG^^5vRc5`Vx$wz-PbU9Jhcp!9#|Ca#5JMVlh=rO#LgUW@&n=9uDC4`|jhhU8m1 zzjylCw(z;81U>I@m7LQ0Y`ppI?dDCbr+ZH@dzcELpn#`2&Y{vb&Aye@l`tE%pR)qb zg#BUo#6Ej_R*HVo9*J?Vv_S|os-vR1+R@U|QfVwFCgC$x+7mko$?88#Yrj(&hPPRE zmzKVLQyd!>;XGX#8i)gCoADJw37!_8v+X=QF8r@AE%+N`NH3tyOLr?P)ys4YU!E?# zD^+1+8k9>6RMJi&H{KceC9AqH`C@|SafBfE-y;!!tDYYpuq@DCH?s&MN~^!vqzq&t zcAn@*j$+nBaQ#Ol!_Hyy$|ThmV0h^xb8?K0jA(gTVA3)Usrrw>K1LMwpqb&i&!ox| zWnc6pE=>y_8XgXG{d97#Uc6|Vb6&bB$6umzQ1^Dds!UU=EJ@K0z`3tgV}0I#aZ;N7 zkwaMt&r>csUh6Qz#aUq=UxhZPe$p&IKi(1vZm8IZF)B5+lF8Gj%++^uiSwrs_L6co zfI(rYsU3QHfK0A(GN`-(EJ|MoE_0gGLmbDK7@zT2uWuTb3cj~K6Z{Oq$aXxxVMyjv zqv$WY=L3+wTc!pVZ$?AHgtaip1SI_~n6sayO_hW*qIP|MB-?x z$4Ta0xkNLiTbA7rJq=(?TJ)oWTXAShOq_;A?Y@SlW-UIxm-m_!6mj?TKoSB1bHCzD zW@3ZlYhbzB#_d9j;=1{+E6nyvD#h%k!Yr@oy-r}AO+cG&-H++%UM@-2gkc|aCm=yo zn@cbO_p(nw_GRdaYUT8%yG73q(0Vho;LB@K@ysX^Pj}$qs=SgH%A{U45~vV>(}-jn z%)-HZu_ZqDp`5pXHWJpg;=JoCMEWT`9p{YqV77qQ(`@x;EBB`k4J*o&y^P#c} zpZmAy@3-o)Es^@-NIoUvv0Io!B9U`*g21_N0VHST3CyX_2Qkqv!ii0 z<U|G;(o zWrow|p2aeDD$^<8|8qFpH?+{`h>8-qmgOwUo-O>)nK60o0C+ZY$kY`bkVZ~Qn&IgP{3_h8YnRjY(p?YcuGc3QA5aO4a$3CeARsc}clijC8r~bb z>Y^K+W*0cGM60cpai@^?;nV$aHc}4AbIDf)=|Y}nrlz_GA0g#*Lu2FFQccc`ixbzq znKT$o^T%hOfQ9X~c)R`U02yCNw_wtRBxHd;`Rn%aac1izELmd8wBs4^|>kaCkA`ft?pU<4E^k>nBX9erkv z2HWfMnyd%}oaS{VI^Fm52Bn{y6;k*9YPMT0Jc0Sz`>%wgXk;)l5_ZUz$S{^aLlWR%yG@~kW=FMqRt1vly3%}zd{Z2V}PolUb6V^)Z7KAbvqXfeX^ zdSt9G%*b9s!XrH1AGlFu8h9C?ebmV3gse+3Hr8*2O&f_KV)k;@Opr(#ADw1TRC-ke zHVaAUu}7;?)&TmksXW4r1+_1LAtvdwo(+tSj&{!gAK9mB*beR+9YNtDS6i`@dNkh0 zTkHtB2s&~BDfFeCN#K#u>h7eSPJ>%7@U_r3G+OC|&)&Rdr7ysV=a6Bf<1{9)flDYG z_)`?~DJTr@PL^+Glq(h4%{449Z};{|?eKo=sCY=Dom}&Go87wOt;l|Q<^G^R&7Vph z`Q*zJw><4jwfnytPRqY~&$ZdsXYuXr?bKTy9N4<09n5XlK1vgszLl$A$P6GYz^y9< zEGlu;#YxG?>_2Qm@S0-*gM~j>ZJ2%ODWXcnuc%DGr(;c!v(Z0OMgX@49HtTy-9W1 zIhv3HAn1u5hrUl>4bsQ;VdMQ$985|{G4I1`ld;biM3zb1SL1Q!uXU9c`P+X%2skQQ zHBZ>yW~V$(dW6|OJ6GCvy)+Sv5uE?P{eaF?-+tI^mC4I zER|v=2`7qZ^5^U&_J2|HWLi-}CD1O+TV+1P91_x}H?1j01p5wAv9BTJ%t`#V6 z9LzUk*kwa$0*fu~NR;{TirUuZWt}zY=iXc`MU3hdB8CyT-X+LfI3^<%)dX*96GVWP%@; zfUd0QROZNec~Yiu>~e5yJ@NtfD>(`g)4msQHP4IVBtW5ez@vNh3V6-2UU(2q-ptym zD^Z~Tgex#SR;KXH^VLVzMN%&SMlC7M_(D*R6gY`IPk-0?qV+&^cQE%@!07BtL&IHm zcJ@+P4j6@*YG;!0z?@?N#e^(j0x~N}v-YAXM?IIgLtxABU+dUC%i2x4tfHQsH+nY^NymCxN#Fv3J zQ*QDBuaCgv9O7~7(cVeMb$t+G$;!m!cv-i%;M^i4D70t!>zlcW^=uQ&5)tRq?7S;+zc0qW`nk(~@uL~e z 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
%Yc-Jrp+L@~uW%Y45{$#p%^ zNr@QvP5#MmLS2lnyW%#GC5v%mJad?aT_P^aV?GR~l8PTQ9;)EEySRXreCTvHi4k2j ziF(2XcHpn57}>G#T(|j3V6<;>ASKrSm}i{Yq6PVPqGX0tls1zgDmhthJ?+^V9%!_| z%grFG;Y+lua&QU5?nwmE`@G3*5O*`2h5Q1_vI)R2Wj-C-V;xkt0!5hu#!AuIEg5a$+=Hf=3o*j zLOaxuywT+?D{jVx1vY@KO6rShGM2)gMrun8UbV{LA3=) zH462=^j+ELQMX-jep%xC>i`rD8iq^l$G9fC#%MVF=F5vl}W5@u?ft+!I@v&A%%Mcp<8_mZk6hMlDjKAMEPZg6wXl z#=ae6@m3iO#J>#$ZV4vOCXEJm5|%q7fbX%awDj(Lldh6d5-FFZs@>jPQJxypYDKHnMu$b$a@AckSnPGC3++Z^2<&j2(~Y4TmXSw=u05G1#s;kB9`t7Ty^ z&l^ncuT<8V9Sd9Iv!8y}S?4dtMG8(1yaefUnty#eVlmfoIA=z6LzQ!C< ={ALHD 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 RT2P;$DJiJSSIb(2{tvnlm*4;Z literal 0 HcmV?d00001