Tryb --check nie generuje niczego: skanuje build/kb-site/**/*.html linia po
linii i przerywa z exit 1 na pierwszym zestawie trafien. Wzorce:
ip-rfc1918 192.168./10./172.16-31.
ip-tailscale 100.64-127.
ip-public-v4 reszta poprawnych adresow v4 (loopback, link-local, multicast,
broadcast i pule dokumentacyjne RFC 5737 sa neutralne)
ip-v6 adresy z "::" albo >=4 grupami (3 grupy to zwykle godzina)
port :NNNN w zakresie 1024-65535
path-host /home/... i /opt/...
token-hex ciagi hex >=32 znakow
token-b64 ciagi base64-podobne >=40 znakow mieszajace cyfry i litery
(sciezki absolutne odsiane — raportuje je path-host)
Raport: plik:linia [wzorzec] trafienie, na koncu licznik per wzorzec.
scripts/kb/check_whitelist.txt — swiadome wyjatki, na start PUSTY (same
komentarze z opisem formatu). Wpis to `<fragment>` albo
`<sciezka strony>|<fragment>`; fragment dopasowuje sie jako podciag trafienia,
wiec jeden wpis `/opt/homelab` wycisza wszystkie warianty.
Uruchomione lokalnie na 11 wygenerowanych stronach: 22 trafienia, wszystkie
path-host (/opt/homelab/... w dokumentach public), zero IP, portow i tokenow.
Whitelist zostaje pusta — decyzja co z tymi sciezkami zrobic nalezy do
operatora (patrz kb/runbooks/kb-site-deploy.md).
24 lines
1.2 KiB
Plaintext
24 lines
1.2 KiB
Plaintext
# Świadome wyjątki dla `python3 scripts/kb/gen_pages.py --check`.
|
|
#
|
|
# --check skanuje WYGENEROWANY HTML (build/kb-site/) i przerywa z exit 1, gdy
|
|
# znajdzie adres IP, port, ścieżkę hosta (/home/, /opt/) albo coś, co wygląda
|
|
# na token. Ten plik wycisza pojedyncze, świadomie zaakceptowane trafienia.
|
|
#
|
|
# Format — jeden wpis na linię, `#` zaczyna komentarz:
|
|
#
|
|
# <fragment> wycisza KAŻDE trafienie zawierające <fragment>
|
|
# <ścieżka strony>|<fragment> to samo, ale tylko w tej jednej stronie
|
|
#
|
|
# Ścieżka strony jest względna wobec katalogu wyjściowego, np.
|
|
# `subsystems/observer.html`. Fragment dopasowuje się jako podciąg trafienia,
|
|
# więc wpis `/opt/homelab` wycisza wszystkie warianty `/opt/homelab/...`.
|
|
#
|
|
# Przykłady (zakomentowane — plik startuje PUSTY, każdy wyjątek ma być decyzją):
|
|
#
|
|
# /opt/homelab # umowna ścieżka runtime, nie sekret
|
|
# subsystems/observer.html|:8080 # port w przykładzie z dokumentacji
|
|
#
|
|
# Zasada: najpierw popraw źródło w kb/ (dokument `visibility: public` nie
|
|
# powinien zawierać adresów ani ścieżek konkretnego hosta). Whitelist jest
|
|
# ostatecznością dla rzeczy, które naprawdę mają zostać na stronie.
|