# vuln-suse – SUSE/openSUSE CSAF mirror Spiegelt die offiziellen **CSAF 2.0 Advisory-Rohdaten** (SUSE und openSUSE) ab Advisory-Jahr 2017 direkt nach Git. Quelle (GWDG-Mirror): https://ftp2.gwdg.de/pub/linux/suse/projects/security/csaf/ - `data/index.txt`: unveränderter offizieller Index. - `data/csaf//.json`: unveränderte CSAF-Dokumente. - `state/sync.json`: Indexstand und Rotation für die Rückprüfung alter Dateien. **Nicht enthalten:** Die separate SUSE CSAF-VEX-Sammlung nach CVE. Diese kann als eigenes Repository `vuln-suse-vex` folgen. ## Gitea-Installation 1. Leeres Repository `VULN/vuln-suse` erstellen. 2. Dateien initial nach `main` pushen. 3. Auf dem Gitea-Runner-Host: `sudo install -d -o act_runner -g act_runner -m 700 /var/lib/act_runner/cache/vuln-suse` 4. `git`, `python3`, `flock` (`util-linux`) installieren. 5. Workflow `SUSE CSAF Mirror` manuell starten. Automatisch alle 6 Stunden um Minute 31 (UTC). 6. Gitea-Jobtoken `secrets.GITEA_TOKEN` benötigt Schreibrecht auf das Repository. ## Ablauf - Erstimport: alle Advisory-JSONs ab 2017 aus `index.txt`. - Weitere Läufe: neue/fehlende Dokumente und 300 ältere Dokumente zur Änderungserkennung. - Vollabgleich: `python3 scripts/sync.py --full` im persistenten Checkout. - Fehlgeschlagene Downloads verhindern Statusfortschreibung und Löschungen. - Alte Dateien werden nur entfernt, wenn sie nach erfolgreichem Indexabruf nicht mehr gelistet sind. **Grenze:** Änderungen an alten Dokumenten werden bei der rotierenden Kontrolle verzögert erkannt. `changes.csv` wird aktuell nicht ausgewertet. Der öffentliche GWDG-Mirror kann dem SUSE-Ursprung zeitlich hinterherhinken. Große Erstimports benötigen entsprechend Speicher und Git-Commit-Zeit. Für produktive Nutzung empfiehlt sich zusätzlich ein regelmäßiger `--full`-Abgleich. Sicherheit: Ein `:host`-Runner führt Workflows direkt auf der Gitea-VM aus. Repository-Schreibrechte beschränken und nur vertrauenswürdige Branches ausführen.