10ec58f74469869f068d5ab699e088b0657ca838
ID: README_000001 | Version: 0.2.1 | Status: Draft By: Codex (GPT-5)
Safe Kiddo Daemon
Kurzbeschreibung
Safe Kiddo Daemon ist ein lokaler Systemdienst, der Benutzerkonten auf Linux-Systemen sperrt/entsperrt, Sitzungen beendet und optional einen Shutdown ausloest. Der Dienst bietet eine REST-API und eine Web-UI fuer die Fernsteuerung. Ein Legacy-CLI-Script (sk.sh) bleibt als Fallback erhalten.
Zielgruppe
- Einsteiger: moechten den Dienst schnell installieren und erste Aktionen ausfuehren.
- Admins/Operatoren: konfigurieren Auth, OIDC und Update-Mechanik.
- Entwickler: verstehen Architektur, Module und Erweiterungspunkte.
Hauptfunktionen
- Sperren/Entsperren lokaler Nutzerkonten inkl. Session-Management und optionalem Shutdown.
- Benachrichtigungen und optionaler Sound waehrend Countdown.
- PAM-Login (immer aktiv) und optionaler OIDC-Login.
- Systemd-Service mit Installations- und Update-Skripten.
- Update-Client-Integration (Enrollment, Manifest, Apply, Rollback, Logs).
- Dry-Run-Modus zum sicheren Testen.
Badges
Derzeit keine offiziellen Badges, da im Repository keine CI, Coverage, Release oder Docker-Pipeline definiert ist.
Quickstart (5 Minuten)
# 1) Repo holen
sudo mkdir -p /opt/sk
sudo git clone ssh://git@git.wlkns.org:2222/stephan/kiddo /opt/sk
# Hinweis: verwende hier die Repo-URL deiner Instanz
cd /opt/sk
# 2) Installieren (legt User, env und Systemd-Unit an)
./scripts/install.sh
# 3) Status pruefen
sudo systemctl status skd.service
# 4) Login testen (PAM)
curl -s -X POST -H "Content-Type: application/json" \
-d '{"username":"root","password":"example-password"}' \
http://localhost/login
Danach die Web-UI unter http://localhost/ oeffnen und anmelden.
Dokumentation
- Einstieg und erster Lauf:
docs/GETTING_STARTED.md - Nutzung (API, Web-UI, CLI):
docs/USAGE.md - Konfiguration (ENV-Variablen):
docs/CONFIGURATION.md - Architektur und Module:
docs/ARCHITECTURE.md - Entwicklung:
docs/DEVELOPMENT.md - Deployment & Betrieb:
docs/DEPLOYMENT.md - FAQ:
docs/FAQ.md - Troubleshooting:
docs/TROUBLESHOOTING.md
Hinweise
- Abweichung von der Zielstruktur: Die OpenAPI-Spezifikation des Update-Services bleibt unter
docs/architecture/openapi.yamlunddocs/architecture/openapi/erhalten. - Altdokumente liegen unter
docs/_archive/und sind nicht geloescht.
Legacy Script
Das Script sk.sh bleibt als CLI-Fallback. Details und Beispiele: docs/USAGE.md.
Description
Languages
HTML
45%
Python
24.7%
CSS
16.3%
Shell
13.2%
Makefile
0.8%