--- okf: "0.1" type: session-log visibility: private status: active updated: 2026-07-07 links: [] --- # Sesja 2026-07-07 — okit.pl Faza 1 (wildcard cert) + przepiecie 9 hostow ## Kontekst Kontynuacja migracji okit.pl 42.pl -> Cloudflare. Faza 0 (strefa) zrobiona wczesniej. Dzis: Faza 1 (wildcard cert) + przepiecie zywych vhostow. ## Wykonane ### Weryfikacja Fazy 0 (propagacja) - dig NS okit.pl = dom.ns/katja.ns.cloudflare.com (spropagowane). - Autorytatywnie (dig @dom.ns.cloudflare.com): rekordy 1:1 z AXFR, poczta OK. - WAZNE: Pi-hole split-horizon — Local DNS nadpisuje ~15 okit.pl na 192.168.31.5 (LAN). dig z hosta pokazuje LAN IP, nie Cloudflare. To NIE blad. Cloudflare autorytatywny ma poprawne IP. Przy Fazie 2 pamietac o OBU warstwach. ### FAZA 1 — wildcard *.okit.pl - Nowy token Cloudflare "npm-dns01-all-zones" (Zone:DNS:Edit, All zones — obejmuje kapala + okit + przyszle). Stary "Edit zone DNS" byl tylko 1 zone (kapala). - npm@PIHA: cert *.okit.pl + okit.pl przez Cloudflare DNS-01 (cert #51 w npm). Wazny do 2026-10-05, samoodnawialny. Pulapka: literowka ".okit.pl" zamiast "okit.pl" dawala Internal Error; propagation 5->30s tez pomaga. ### Przepiecie 9 zywych hostow na wildcard (bulk-SQL) Metoda: keinos/sqlite3 --user root (brak sqlite3 na hoscie i w kontenerze npm). - Backup bazy npm: /data/database.sqlite.bak-20260707-2210 (w wolumenie). - UPDATE proxy_host SET certificate_id=51 WHERE id IN (7,16,3,11,1,6,5,10,20). - KLUCZOWE: sam UPDATE bazy NIE wystarcza! npm generuje .conf per host ze sciezka certu; baza mowi 51 ale nginx laduje stary. Trzeba sed sciezek w .conf + reload: sed 's|/live/npm-[0-9]*/|/live/npm-51/|g' na 9 plikach + nginx -t + nginx -s reload. - Zweryfikowane: openssl pokazuje CN=*.okit.pl do 2026-10-05 dla wszystkich 9. Przepiete: grafana, home, immich, wiki, pihole, prometheus, zigbee, ngpm, owntracks. ## LEKCJA Przepinanie certow npm bulk-SQL = DWA kroki (UPDATE bazy + sed .conf + reload), bo npm nie regeneruje configow z bazy. UI-klik robi to jednym Save (regeneracja). Przy <15 hostach UI prostsze; bulk oplaca sie dopiero przy duzej skali. Kontener keinos/sqlite3 --user root do edycji bazy npm (gdy brak sqlite3). ## NIE ruszone (swiadomie) - forgejo, vikunja, foty, ha, immich.kapala -> juz na *.kapala.org (cert 49) - owntracks-frontend -> czeka na mesh (Faza 2) - outline, joplin, agents -> NIE na PIHA! Zyja na VPS-npm (drugi npm do sprawdzenia) ## TODO nastepne sesje - FAZA 2: mesh/public reorg, owntracks-frontend->mesh, audyt martwych vhostow (dysk vault portainer hai audiobooks budget tasmota node-red printer router code-server ap slzb hagc ha-embed — 000/502, sprawdzic zywe/usunac). - Drugi npm na VPS (outline/joplin/agents tam) — analogiczny wildcard *.okit.pl? - Sprzatanie starych certow okit.pl w npm (npm-2..48) — wygasna same, kosmetyka. - 9 decyzji Paperless/Nextcloud (DECYZJE-do-podjecia.md) -> deploy modulow 2-5 KB.