7c50e69b44
Add manual repo policy checks
56 lines
1.5 KiB
Markdown
56 lines
1.5 KiB
Markdown
# Policy Checks
|
|
|
|
Manuelle, read-only Repo-Pruefungen fuer `homelab-infra`.
|
|
|
|
Ziel:
|
|
|
|
- offensichtliche Fehler vor einem Push oder Deploy erkennen
|
|
- dokumentierte Ausnahmen sichtbar halten, aber nicht als Fehlalarm behandeln
|
|
- keine Container aendern, keine Deploys ausloesen, keine Dateien ausserhalb des Reports schreiben
|
|
|
|
## Start
|
|
|
|
Aus dem Repo-Root:
|
|
|
|
```powershell
|
|
powershell -ExecutionPolicy Bypass -File .\ops\policy-checks\check_repo.ps1
|
|
```
|
|
|
|
Mit Report-Datei:
|
|
|
|
```powershell
|
|
powershell -ExecutionPolicy Bypass -File .\ops\policy-checks\check_repo.ps1 -ReportPath .\ops\policy-checks\last-report.md
|
|
```
|
|
|
|
## Was geprueft wird
|
|
|
|
- `docker compose config --quiet` fuer alle Compose-Dateien
|
|
- SHA256-Digests nur dann, wenn ein Digest im Image steht
|
|
- keine echten `.env`- oder `stack.env`-Dateien im Repo
|
|
- Datenbank-/Cache-Dienste nicht im `frontend_net`
|
|
- `security_opt: no-new-privileges:true`
|
|
- Host-Port-Mappings
|
|
- Traefik-Router mit `Host(...)` und Middleware-Standard fuer geschuetzte Admin-/Ops-Dienste
|
|
- sichtbare Report-Punkte fuer dokumentierte Ausnahmen wie `user: "0"`, `privileged: true` oder `network_mode: host`
|
|
|
|
## Wichtige Betriebsregel
|
|
|
|
Dieses Script ist absichtlich erstmal nur ein manuelles Werkzeug.
|
|
|
|
- kein Cronjob
|
|
- keine taegliche Automatik
|
|
- keine CI-Pflicht im ersten Schritt
|
|
|
|
Empfohlene Nutzung:
|
|
|
|
- vor Pushes mit Compose-/Traefik-/Netzwerk-Aenderungen
|
|
- vor neuen Stacks
|
|
- vor groesseren Hardening-Sprints
|
|
|
|
## Exit-Code
|
|
|
|
- `0`: keine kritischen Findings
|
|
- `1`: mindestens ein kritisches Finding
|
|
|
|
Warnings brechen den Lauf nicht.
|