🔑

SSO med Authentik

Ét login til hele mit homelab. Authentik som identitetsudbyder, fra SAML-frustration til OIDC, og en database der forsvandt undervejs.

Authentik OIDC SAML 2.0 MFA Selvhostet

Baggrund

Jeg ville have én identitet til alle mine interne services. LDAP og SAML var de første kandidater, men begge havde begrænsninger: besværlig opsætning, lokale konti per app, mangelfuld platform-understøttelse og et par sikkerhedsmæssige forbehold.

Efter at have skiftet til OpenID Connect frem for SAML og LDAP blev der væsentligt færre problemer. Jeg har også integreret mine Cloudflare-tunnels med SSO, men det har sine egne begrænsninger. I dag kører Authentik på Triton, MFA er påkrævet på alt på admin-niveau, og det er auth-backend for Airlock.

Tidslinje

  1. 01/11/2023

    Startede SSO

    Begyndte at eksperimentere med selvhostet single sign-on til mine interne services.

  2. 06/11/2023

    Første succes

    SSO oppe at køre. Begyndte at integrere de første services bag ét login.

  3. Skifte til OIDC

    Væk fra SAML og LDAP

    Databaserne flyttede fra Skynet til Orion, og jeg droppede SAML og LDAP til fordel for OIDC. Langt færre problemer derfra.

  4. Juni 2025

    Databasetab

    Database-containere på Skynet fejlede og gjorde SSO ubrugeligt.

  5. 19/06/2025

    Fejlsøgning

    Problemet blev indkredset og undersøgt.

  6. 23/06/2025

    Ny database

    Friske databaser sat op på Orion.

  7. 24/06/2025

    SSO genoprettet

    SSO tilbage online. Services skulle kobles på igen.

  8. 26/06/2025

    Færdig

    Udrullet på tværs af alle nuværende services.

Authentik i dag

Authentik er værktøjet bag det hele. OIDC er den primære protokol, SAML 2.0 er stadig understøttet for de apps der kræver det. Det kører på Triton og er en del af den kritiske HA-gruppe, hvor Triton og Callisto er failover-mål, så et enkelt nedbrud ikke låser mig ude af mit eget homelab.

Det er identitetsudbyder for hele homelabbet og auth-backend for Airlock, så hver forespørgsel udefra skal gennem Authentik og MFA, før den når en service.

Ressource-kategorisering

  • PrivatSSO + MFA. Proxmox-UI'er, pfSense, dashboards, admin-paneler
  • OffentligÅben, PIN eller kodeord. Værktøjer delt med folk uden for Authentik
  • Aldrig eksponeretiDRAC, altid LAN-only