From 514a1e991ee303e25119baf7caf486a32fa9d58e Mon Sep 17 00:00:00 2001 From: vitya Date: Wed, 12 Aug 2026 19:29:20 +0300 Subject: [PATCH] =?UTF-8?q?wiki(kreknin):=20reverse=20proxy=20git.kreknin.?= =?UTF-8?q?site=20443=E2=86=924443=20=D0=BD=D0=B0=20DSM=20nginx=20?= =?UTF-8?q?=E2=80=94=20=D0=B8=D0=B7=20LAN=20gitea=20=D1=80=D0=B0=D0=B1?= =?UTF-8?q?=D0=BE=D1=82=D0=B0=D0=B5=D1=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 443 на NAS занят встроенным nginx DSM (трафик уходил в Synology вместо traefik). Добавлен server block в server.ReverseProxy.conf (w3conf) + nginx -s reload: proxy_pass https://127.0.0.1:4443 (TLS-to-traefik! HTTP на 4443 = 404). Из LAN: DNS-override → 192.168.1.43:443 → nginx → traefik → gitea 200. Осталось: LE-серт DSM для git.kreknin.site (нужен GUI DSM). --- .wiki/entities/kreknin-synology.md | 4 +++- .wiki/log.md | 1 + 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/.wiki/entities/kreknin-synology.md b/.wiki/entities/kreknin-synology.md index 2858bb0..f337f00 100644 --- a/.wiki/entities/kreknin-synology.md +++ b/.wiki/entities/kreknin-synology.md @@ -125,7 +125,9 @@ USB **2TB WD20EARX** (sdq) отформатирован в один btrfs, см - **Домен:** `https://git.kreknin.site/` — LE-серт (traefik httpChallenge, выписан 2026-08-12), redirect http→https. - **Traefik** (v2.6.6, порты 8000/4443/8080): лежал с 07-31 (restart policy был `no`, упал на инциденте) — починен: `restart: unless-stopped`. **Урок: traefik без restart policy после ребута не поднимается.** - **Проброс на Keenetic:** 80→192.168.1.43:8000, 443→192.168.1.43:4443 (правила в панели, сделал vitya/Алексей в GUI — KeeneticOS Viva API закрыт для curl-автоматизации). -- **NAT loopback у Алексея СЛОМАН** (из его LAN внешние адреса не открывались): **РЕШЕНО 2026-08-12 через DNS-override** — статичные DNS-записи на Keenetic: `git.kreknin.site → 192.168.1.43`, `kreknin.site → 192.168.1.43` (добавлены через RCI API, см. концепт keenetic-rci-api). Проверено с LAN: git.kreknin.site → 200, kreknin.site:5000 → 200. KeeneticOS 5.1.3 hairpin НЕ чинит (проверено после обновления) — DNS-override это единственное рабочее решение. +- **NAT loopback у Алексея СЛОМАН** — **РЕШЕНО (2026-08-12)**: KeeneticOS 5.1.3 hairpin не чинит (проверено). Двойное решение: + 1. **DNS-override на Keenetic** (RCI): `git.kreknin.site`/`kreknin.site` → `192.168.1.43` (ip host через POST /rci/ parse) + 2. **Reverse proxy на DSM nginx**: 443 занят встроенным nginx DSM → добавлен server block `git.kreknin.site:443 → proxy_pass https://127.0.0.1:4443` (traefik), файл `/usr/local/etc/nginx/sites-available/0a73bdfc-…w3conf` (server.ReverseProxy.conf) + `nginx -s reload`. ⚠️ Важно: traefik на 4443 — TLS-entrypoint, поэтому `proxy_pass https://` + `proxy_ssl_verify off` + `proxy_ssl_name git.kreknin.site` (HTTP на 4443 даёт 404). Серт из LAN — DSM default (Synology), валидный LE-серт для git.kreknin.site из LAN: добавить в DSM Security → Certificate → Add → Let's Encrypt → выбрать в правиле (GUI, без DSM-пароля не автоматизируется). - **Keenetic admin-пароль:** `pass kreknin/keenetic` (t3r1a4k314; 3steaks1eGG — НЕ для роутера). - Установка через web-форму падала (xorm nil-pointer panic на sqlite) → обход: `INSTALL_LOCK=true` в [security] + CLI `admin user create`. Gitea CLI: `docker exec -u 1026:100 gitea gitea --config /data/gitea/conf/app.ini admin user ...` (новый синтаксис `admin user create`, не `create-user`). diff --git a/.wiki/log.md b/.wiki/log.md index e233b7c..2d27e3b 100644 --- a/.wiki/log.md +++ b/.wiki/log.md @@ -1,3 +1,4 @@ +## [2026-08-12] implement | UPDATE entities/kreknin-synology.md — reverse proxy git.kreknin.site:443 → traefik:4443 на DSM nginx (server.ReverseProxy.conf w3conf + reload). Из LAN git.kreknin.site → Gitea (DNS-override + proxy), снаружи LE-серт. Осталось: LE-серт в DSM для git.kreknin.site (из LAN, без предупреждения). ## [2026-08-12] implement | NEW concepts/keenetic-rci-api.md — разобрана автоматизация KeeneticOS 5.1.3 (RCI: GET /rci/show/*, POST /rci/ массив parse-команд). Через API добавлены DNS-записи git.kreknin.site/kreknin.site → 192.168.1.43 (решение сломанного hairpin). Проверено с LAN: всё 200. Правила порт-форвардинга в 5.x лежат в ip.static (to-host=MAC). ## [2026-08-12] implement | UPDATE entities/kreknin-synology.md — Gitea 1.27.1 + postgres 16 на kreknin (для Алексея), traefik починен (restart policy), LE-серт git.kreknin.site, проброс 80/443→8000/4443 на Keenetic. KeeneticOS Viva API закрыт — правила в GUI. NAT loopback сломан → нужен DNS-override git.kreknin.site→192.168.1.43. Пароли: pass kreknin/keenetic + pass kreknin/gitea. # Wiki op-log