Zum Hauptinhalt springen
  1. Beiträge/
  2. Kleines Homelab/
  3. k3s-prod: Kubernetes Cluster Konfiguration und Anwendungsbereitstellung/

Authentik

Inhaltsverzeichnis

Authentik
#

Authentik ist ein quelloffener Identitätsanbieter (IdP), der sich auf Flexibilität und Vielseitigkeit konzentriert. Er kann als zentrales Authentifizierungs- und Autorisierungssystem für Ihre Anwendungen verwendet werden.

Status
#

Status
Uptime
Ping
Avg Response Time
Certificate Expiration
Response Time

Deployment
#

Argo Deployment

Komponenten
#

Diese Authentik-Bereitstellung umfasst die folgenden Komponenten:

  • Authentik Server: Die Kernanwendung, die die Identitäts- und Zugriffsverwaltung bereitstellt.
  • PostgreSQL: Die relationale Datenbank, die von Authentik zur Speicherung seiner Daten verwendet wird.
  • Redis: Ein In-Memory-Datenspeicher, der von Authentik für Caching verwendet wird.

Quelle
#

Das Projekt basiert auf der offiziellen Authentik-Website. Das Helm-Chart stammt aus dem offiziellen Authentik-Chart-Repository.

Dokumentation
#

Funktion
#

Dieser Dienst bietet eine umfassende Lösung für Single Sign-On (SSO), Multi-Faktor-Authentifizierung (MFA) und Benutzerverwaltung. Er ermöglicht die sichere Authentifizierung von Benutzern für verschiedene Anwendungen und Dienste.

Lokale Anpassungen
#

Die Konfiguration erfolgt über die values.yaml-Datei.

Die Persistenz für PostgreSQL und Redis wird über vorhandene PVCs (authentik-db, authentik-redis) verwaltet.

Wichtige Einstellungen
#

  • Ingress: Der Zugriff auf die Authentik-Weboberfläche wird über einen Ingress mit einem Hostnamen ermöglicht und durch Traefik verwaltet.
  • Datenbank: Authentik verwendet eine dedizierte PostgreSQL-Datenbank, die als Teil des Helm-Charts bereitgestellt wird. Die Daten werden persistent auf einem Volume gespeichert.
  • Redis: Für Caching und Hintergrundaufgaben wird eine dedizierte Redis-Instanz verwendet, deren Daten auf einem Volume gespeichert werden.
  • E-Mail: SMTP ist für den Versand von Benachrichtigungen und Passwort-Resets konfiguriert.

Installation
#

Die Anwendung wird mittels Kustomize und Helm durch ArgoCD im Kubernetes-Cluster bereitgestellt. Die Konfiguration befindet sich im apps/authentik-Verzeichnis. Eine manuelle Installation kann mit folgendem Befehl durchgeführt werden:

1kubectl kustomize --enable-helm apps/authentik | kubectl apply -n authentik -f -

Abhängigkeiten
#

  • Ein laufender Kubernetes-Cluster.
  • Ein Ingress-Controller (z.B. Traefik) für den externen Zugriff.
  • Eine Zertifikatsmanagement-Lösung (z.B. cert-manager) zur Bereitstellung von TLS-Zertifikaten.
  • Ein SMTP-Server für E-Mail-Benachrichtigungen.
Per E-Mail antworten
Fabrice Kirchner
Autor
Fabrice Kirchner
stolzer Vater, Nerd, Admin