Kanidm ist eine moderne, sichere und vergleichsweise leichtgewichtige Identity‑Management-Lösung, entwickelt in Rust, mit Fokus auf klaren Standards, Self‑Healing‑Mechanismen und einfacher Administration. Die Plattform eignet sich für Homelabs, kleinere Unternehmen bis hin zu Enterprise‑Umgebungen. docker
Im Gegensatz zu vielen anderen IAM‑Systemen (z.B. Keycloak) bringt Kanidm eingebaute Funktionen wie OAuth2/OIDC, Unix‑Integration, Passkey‑Authentifizierung (WebAuthn) und ein Application Portal direkt mit.
Kanidm unterstützt moderne Sicherheitsfeatures:
Die entsprechende Einrichtung erfolgt über CLI und Konfigurationsdateien - die vollständigen Referenzen findest du im Kanidm‑Book
Kanidm wird offiziell als Container bevorzugt bereitgestellt. Die offiziellen Images findest du im Docker Hub:
Im folgenden Beispiel richten wir Kanidm mit einem bind‑mount für die Zertifikate und einem persistenten Volume für die Daten ein.
/etc/kanidm/
├── chain.pem
├── key.pem
└── server.toml
Minimalbeispiel basierend auf offizieller Dokumentation:
version = "2"
bindaddress = "0.0.0.0:8443"
db_path = "/data/kanidm.db"
tls_chain = "/data/chain.pem"
tls_key = "/data/key.pem"
domain = "idm.example.com"
origin = "https://idm.example.com"
log_level = "info"version = "2"
bindaddress = "0.0.0.0:8443"
db_path = "/data/kanidm.db"
tls_chain = "/data/chain.pem"
tls_key = "/data/key.pem"
domain = "idm.example.com"
origin = "https://idm.example.com"
log_level = "info"
Hinweis: Domain, origin, tls_chain & tls_key müssen gesetzt sein, sonst startet Kanidm nicht.
Basierend auf offiziellen Maintainer-Angaben:
services:
kanidmd:
container_name: kanidmd
image: kanidm/server:latest
restart: always
volumes:
- type: bind
source: /etc/kanidm/
target: /data/
- kanidm_data:/var/lib/kanidm/
ports:
- "443:8443"
volumes:
kanidm_data:
docker compose up -d
docker logs -f kanidmd
Wenn TLS und Config korrekt sind, sollte der Server erfolgreich starten
Für die Administration wird das CLI‑Tool benötigt (kanidm, Teil des Docker‑Images oder per Paket installierbar).
docker run --rm -it \
--network host \
kanidm/tools:latest \
kanidm login --user admin --password
Du kannst anschließend Benutzer, Gruppen und Anwendungen verwalten.
Kanidm unterstützt moderne Sicherheitsfeatures:
Passkeys / WebAuthn OIDC & OAuth2 Application Portal Unix‑Integration Zwei‑Node‑Replikation
Die entsprechende Einrichtung erfolgt über CLI und Konfigurationsdateien – die vollständigen Referenzen findest du im Kanidm‑Book
Kanidm lädt TLS‑Zertifikate bei SIGHUP neu:
docker kill -s HUP kanidmd
Kanidm ist eine moderne, sichere und erstaunlich schlanke Identity-Management-Lösung, die durch ihre Container‑Bereitstellung besonders leicht zu installieren ist. Die strikten, aber übersichtlichen Konfigurationen machen es ideal für homelabs genauso wie größere Umgebungen.