Files
knowledge-base/decisions/2026-06-22-buzharovo-podkop.md

84 lines
8.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
date: 2026-06-22
type: decision
tags: [buzharovo, podkop, openwrt, cudy, amneziawg, fakeip, telegram, netbird, network]
---
# Podkop для Бужарово — TR3000 во главе (обход блокировок, цель Telegram)
## Контекст
Нужен обход блокировок РКН на объекте Бужарово (стройрынок [[projects/buzharovo/README|Северный лес]]),
основная цель — рабочий **Telegram** на устройствах персонала. Объект — боевая розница:
[[projects/buzharovo/server1c|Server1C]] (`192.168.1.249`) + кассы `192.168.1.18`/`192.168.1.99` (ОФД-трафик).
Канонический стек обхода у Олега — [[snippets/podkop-reference|podkop + sing-box + AmneziaWG]] на роутерах Cudy.
Олег рассматривал два пути: (1) Cudy с podkop перед текущим роутером; (2) OpenWrt на гипервизоре/Windows-сервере, как в [[projects/niikn/openwrt-bypass|НИИКН]].
## Разведка сети (что выяснили)
Заходил на роутер `192.168.1.1` через Server1C (WinRM jump, `dttb/1qaz!QAZ`, plink по SSH). Ключевые находки:
- **Грабля диагностики:** из Server1C НЕЛЬЗЯ зондировать Бужарово по `192.168.1.x` — подсеть **совпадает с НИИКН** (тоже `192.168.1.0/24`), и NetBird-маршрут (`wt0`) уводит туда. `Find-NetRoute` для `.1/.18/.50/.99` → ifIndex `wt0`. Поэтому «`.1` = RouterOS `ROSSSH`, admin/пустой пароль, порт 2000» и «`.50` = OpenWrt dropbear» — это **MikroTik и VM101 НИИКН через NetBird-утечку**, НЕ Бужарово. Реальные хосты Бужарово видны только по настоящим MAC в `arp -a`.
- **Доступ к настоящему роутеру** получен через L2: на Server1C добавил непостоянный host-route `New-NetRoute 192.168.1.1/32 -InterfaceIndex 12 -NextHop 0.0.0.0 -PolicyStore ActiveStore` → пакеты на `.1` пошли по локальному LAN (MAC `80:af:ca` = Cudy), интернет сервера не пострадал. Маршрут потом убран.
- **Роутер Бужарово = Cudy WR6500H** (Wi-Fi 7 / BE6500), сток на базе **OpenWrt 21.02** (vendor-LuCI Cudy `git-25.217`, fw 2.3.15 от 07.08.2025). Публичный WAN `185.13.47.2`: открыты **443 (LuCI), 3389 (RDP→Server1C), 53 (DNS)**; **SSH/22 закрыт и на WAN, и на LAN**. LuCI-логин Cudy хэширует пароль `sha256(pw+salt)` в браузере + самоподписанный серт → headless-вход не проходит (403 = схема, не «неверный пароль»).
## Варианты
1. **podkop на самом WR6500H** — ❌. Wi-Fi 7 mainline OpenWrt не поддерживает (vanilla-образа нет, рефлаш невозможен), на стоке 21.02 sing-box/AmneziaWG не встанут, SSH выключен.
2. **OpenWrt на гипервизоре / Hyper-V на Server1C** (как НИИКН) — ❌. У Бужарово нет ни выделенного Proxmox, ни управляемого роутера, на которых держится схема НИИКН. Server1C — боевой Win2012R2 без ИБП (24+ краша/день), вешать на него сеть нельзя. Плюс объект мигрируют на HomeLab.
3. **Отдельная Cudy TR3000 с podkop, параллельно (Вариант A)** — WR6500H остаётся шлюзом, на нём `route 198.18.0.0/15 → TR3000` + DHCP DNS = TR3000. Рабочий, без double-NAT, но требует доступа к залоченному WR6500H LuCI.
4. **Отдельная Cudy TR3000 во главе (Вариант B)** — ✅ TR3000 = шлюз (NAT+DHCP+DNS+podkop), WR6500H → точка доступа (bridge, Wi-Fi 7 остаётся).
## Решение
**Вариант B — Cudy TR3000 во главе.** Выбор Олега: подкоп на самом шлюзе — простейшая и крепкая FakeIP-схема (как Sergey/Benelux/Olivier), не нужен хэндоф маршрут+DNS и доступ к залоченному WR6500H, меньше точек коллизий.
**Двойного NAT не будет при условии:** WR6500H перевести в **режим AP/bridge** (не router). Тогда единственный NAT — на TR3000, WR6500H лишь раздаёт Wi-Fi 7.
```mermaid
flowchart LR
NET([🌐 Internet]) --> TR[Cudy TR3000 · ШЛЮЗ<br/>podkop · DHCP · DNS<br/>LAN 192.168.1.1 · awg0→FI/SG]
subgraph LAN["LAN 192.168.1.0/24 — адресацию сохраняем"]
AP[WR6500H · режим AP/bridge<br/>Wi-Fi 7, без NAT]
S[Server1C .249]
K[Кассы .18 / .99 · ОФД]
end
TR --> LAN
S -. ОФД/1С/банки → напрямую .-> TR
classDef r fill:#3d2817,stroke:#d97757,color:#fff
class TR r
```
**Конфиг podkop (по канону [[snippets/podkop-reference]]):**
- Списки **точечно** `telegram` (+`meta`/`youtube` по нужде). ⛔ НЕ `russia_inside`/`russia_outside`.
- `connection_type=vpn`, `interface=awg0`, `disable_quic=1`, awg0 в firewall WAN-зоне.
- EXIT зарубежный (FI `78.17.4.225` или SG `202.71.12.186`), **новый AWG-peer** (свои ключи/IP, не переиспользовать НИИКН).
- **Безопасность для розницы:** точечные списки заворачивают в туннель ТОЛЬКО telegram-домены → кассы/ОФД/1С/банки идут напрямую (не через зарубежный выход).
## План миграции (минимум простоя)
1. TR3000 настроить на столе: LAN `192.168.1.1/24`, DHCP (статика касс/сервера сохранена), podkop как выше.
2. WR6500H → AP/bridge (DHCP off, патч-корд LAN-порт → TR3000), Wi-Fi 7 сохранить.
3. Перецепить WAN (2.5G-аплинк) из WR6500H в 2.5G-порт TR3000. **Если ISP биндит IP к MAC** — склонировать MAC WR6500H на WAN TR3000.
4. Проброс 3389 (RDP) НЕ восстанавливать — доступ к серверу только через NetBird.
5. Проверка: `nslookup telegram.org 127.0.0.42``198.18.x`; домен кассы/ОФД → реальный IP; `wg` handshake awg0 свежий.
## Последствия / открытые вопросы
- Нужна свободная **Cudy TR3000** (прошить vanilla OpenWrt — деплой Олега). Олег ставит готовый сервер, Claude даёт конфиг.
- Подтвердить EXIT (FI/SG) — под него поднять AWG-peer.
- Уточнить: публичный `185.13.47.2` статический и привязан ли к MAC роутера у провайдера.
- WR6500H оставить как AP (ради Wi-Fi 7) или снять.
- RDP 3389 — увести в NetBird (рекомендовано) или оставить публичный проброс.
**Побочные проблемы (отдельно от podkop, но важные):**
- ⚠️ **Коллизия подсетей** Бужарово↔НИИКН (обе `192.168.1.0/24`) через NetBird на Server1C — мина для диагностики и будущей связки podkop/NetBird. Переадресовать один объект или сузить NetBird-маршруты.
- ⚠️ **WAN светит 443 (LuCI) и 3389 (RDP)** в интернет — закрыть, увести в NetBird.
## Ссылки
- [[snippets/podkop-reference]] — канон podkop (списки, грабли, конфиг)
- [[projects/buzharovo/server1c]] · [[projects/buzharovo/README]]
- [[projects/niikn/openwrt-bypass]] — образец параллельной схемы (НИИКН)
- [[decisions/2026-05-29-niikn-diadoc-ozon-fix]] — урок про `russia_outside`