docs(anleitung): Kapitel Einstellungen und Benachrichtigungen (#029)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -30,6 +30,7 @@ in die Verwaltung.
|
|||||||
9. [Vorlagen](#9-vorlagen)
|
9. [Vorlagen](#9-vorlagen)
|
||||||
10. [Private Key anzeigen oder löschen](#10-private-key-anzeigen-oder-löschen)
|
10. [Private Key anzeigen oder löschen](#10-private-key-anzeigen-oder-löschen)
|
||||||
11. [Audit-Log](#11-audit-log)
|
11. [Audit-Log](#11-audit-log)
|
||||||
|
12. [Einstellungen und Benachrichtigungen](#12-einstellungen-und-benachrichtigungen)
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -214,3 +215,20 @@ weder ändern noch löschen; jeder Eintrag ist per Hash mit seinem Vorgänger ve
|
|||||||
- **Syslog:** Mit `SSHKV_SYSLOG_HOST` geht jeder Eintrag zusätzlich an einen zentralen Syslog-Server
|
- **Syslog:** Mit `SSHKV_SYSLOG_HOST` geht jeder Eintrag zusätzlich an einen zentralen Syslog-Server
|
||||||
(z. B. für Zabbix) – eine Kopie außerhalb von sshkv.
|
(z. B. für Zabbix) – eine Kopie außerhalb von sshkv.
|
||||||
|
|
||||||
|
## 12. Einstellungen und Benachrichtigungen
|
||||||
|
|
||||||
|
Unter **Einstellungen** (ändern nur Admins) richten Sie Benachrichtigungen ein:
|
||||||
|
|
||||||
|
- **E-Mail** über SMTP – für Microsoft 365 vorbelegt (`smtp.office365.com:587`, STARTTLS).
|
||||||
|
- **Webhook** (nur `https://`, außer ausdrücklich für interne Ziele erlaubt) mit optionaler Signatur
|
||||||
|
`X-Sshkv-Signatur: sha256=…` über den Inhalt.
|
||||||
|
- **Anlässe** einzeln schaltbar: neue Abweichungen, Schlüssel, die in 30/14/7 Tagen ablaufen,
|
||||||
|
abgelaufene, aber noch ausgerollte Schlüssel, nicht erreichbare Hosts – als **tägliche
|
||||||
|
Zusammenfassung** um 07:00 (`SSHKV_MELDUNG_CRON`) – und **geänderte Host-Keys sofort**.
|
||||||
|
- **Testnachricht senden** je Kanal; die letzten Zustellungen stehen darunter. Jede Meldung geht nur
|
||||||
|
einmal hinaus; fehlgeschlagene werden einige Male wiederholt.
|
||||||
|
|
||||||
|
Passwörter und Geheimnisse werden verschlüsselt gespeichert und nie wieder angezeigt („gesetzt“).
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
|||||||
@@ -106,7 +106,7 @@ docker compose up -d --build # migrate spielt neue Migrationen ein
|
|||||||
| Variable | Bedeutung |
|
| Variable | Bedeutung |
|
||||||
|---|---|
|
|---|---|
|
||||||
| `SSHKV_SYNC_CRON` | Zeitplan des Abgleichs (Standard `30 2 * * *`, Europe/Berlin) |
|
| `SSHKV_SYNC_CRON` | Zeitplan des Abgleichs (Standard `30 2 * * *`, Europe/Berlin) |
|
||||||
| `SSHKV_MELDUNG_CRON` | tägliche Zusammenfassung der Benachrichtigungen |
|
| `SSHKV_MELDUNG_CRON` | tägliche Zusammenfassung der Benachrichtigungen (Standard `0 7 * * *`); geänderte Host-Keys gehen alle 5 Minuten sofort hinaus |
|
||||||
| `SSHKV_SYSLOG_HOST`/`_PORT`/`_PROTOKOLL` | Kopie des Protokolls an einen Syslog-Server (RFC 5424, UDP oder TCP) |
|
| `SSHKV_SYSLOG_HOST`/`_PORT`/`_PROTOKOLL` | Kopie des Protokolls an einen Syslog-Server (RFC 5424, UDP oder TCP) |
|
||||||
| `SSHKV_SYSLOG_FACILITY` / `_APPNAME` | Facility (Standard `authpriv`) und App-Name (Standard `sshkv`) |
|
| `SSHKV_SYSLOG_FACILITY` / `_APPNAME` | Facility (Standard `authpriv`) und App-Name (Standard `sshkv`) |
|
||||||
| `SSHKV_WORKER_USER` | Benutzer des Worker-Containers, falls die Master-Key-Datei nicht UID 1001 gehört |
|
| `SSHKV_WORKER_USER` | Benutzer des Worker-Containers, falls die Master-Key-Datei nicht UID 1001 gehört |
|
||||||
|
|||||||
@@ -1,19 +1,29 @@
|
|||||||
# #029 Handbuch und Betriebsdokumentation
|
# #029 Handbuch und Betriebsdokumentation
|
||||||
**Status:** offen
|
**Status:** erledigt
|
||||||
**Meilenstein:** v0.5.0
|
**Meilenstein:** v0.5.0
|
||||||
**Labels:** docs
|
**Labels:** docs
|
||||||
**Geschätzt:** 3 h **Tatsächlich:** –
|
**Geschätzt:** 3 h **Tatsächlich:** 0 h 50 min
|
||||||
|
|
||||||
## Ziel
|
## Ziel
|
||||||
Installation, Bootstrap, Kern-Anwendungsfall mit Bildern; Bedrohungsanalyse, Backup-Konzept.
|
Installation, Bootstrap, Kern-Anwendungsfall mit Bildern; Bedrohungsanalyse, Backup-Konzept.
|
||||||
|
|
||||||
## Aufgaben
|
## Aufgaben
|
||||||
- [ ] wird zu Beginn der Phase verfeinert
|
- [x] Handbuch mit Bildern (`docs/anleitung/README.md`, 12 Kapitel)
|
||||||
|
- [x] Installation, authentik, Reverse Proxy (`docs/betrieb/installation.md`)
|
||||||
|
- [x] Bedrohungsanalyse und Notfallplan (`docs/betrieb/sicherheit.md`)
|
||||||
|
- [x] Backup-Konzept mit Skripten und geprobter Wiederherstellung (`docs/betrieb/sicherung.md`)
|
||||||
|
|
||||||
## Akzeptanzkriterien
|
## Akzeptanzkriterien
|
||||||
- [ ] wird zu Beginn der Phase verfeinert
|
- [x] Handbuch mit Bildern (`docs/anleitung/README.md`, 12 Kapitel)
|
||||||
|
- [x] Installation, authentik, Reverse Proxy (`docs/betrieb/installation.md`)
|
||||||
|
- [x] Bedrohungsanalyse und Notfallplan (`docs/betrieb/sicherheit.md`)
|
||||||
|
- [x] Backup-Konzept mit Skripten und geprobter Wiederherstellung (`docs/betrieb/sicherung.md`)
|
||||||
|
|
||||||
## Abhängigkeiten
|
## Abhängigkeiten
|
||||||
–
|
–
|
||||||
|
|
||||||
## Notizen / Entscheidungen
|
## Notizen / Entscheidungen
|
||||||
|
- **Wiederherstellung geprobt** auf einem Wegwerf-Stapel – dabei zwei Fehler gefunden und behoben (Schema pgboss mit `--clean` nicht rückspielbar; Abbruch ohne Transaktion löschte es halb). Jetzt: nur Schema `public`, eine Transaktion, Warteschlange neu, offene Vorgänge abgebrochen.
|
||||||
|
- **Master-Key wird nicht mitgesichert**, nur ein Prüfwert (SHA-256). Das Wiederherstellungsskript bricht vor jeder Änderung ab, wenn der bereitliegende Master-Key nicht passt; der Worker startet nicht mit einem falschen Master-Key.
|
||||||
|
- **Notfallplan „sshkv kompromittiert“** beschreibt das Entfernen des Deployment-Keys auf allen Hosts von Hand – eine eingebaute Rotation des Deployment-Keys gibt es noch nicht.
|
||||||
|
- Bilder entstehen aus `scripts/screenshots.ts` und den E2E-Abläufen.
|
||||||
|
|||||||
Reference in New Issue
Block a user