Cuando probé NetBird hace unas semanas, la autenticación SSO quedó pendiente de resolver con algo autoalojado — mencioné Keycloak como opción típica, pero antes de dar el paso quise comparar con Authentik, que llevaba tiempo viendo recomendado como la alternativa más moderna para quien no necesita todo el peso de Keycloak.
Por qué no fui directo a Keycloak
Keycloak es el estándar de facto en entornos empresariales —lo uso a diario en el trabajo indirectamente, vía herramientas que se apoyan en él— pero para un homelab de una persona, su modelo de realms y clients tiene más piezas de las que necesito, y el arranque de la JVM se nota (60-90 segundos hasta estar operativo, según las comparativas que he visto). Authentik, escrito en Python/Go, arranca más rápido y su sistema de "flujos" visuales para configurar el proceso de login resultó mucho más directo de entender la primera vez que abrí el panel.
No necesitaba un sistema de identidad de nivel banco — necesitaba dejar de generar cuentas sueltas en cada servicio nuevo que despliego.
El día a día
Conecté Authentik como proveedor OIDC para un par de servicios internos del homelab (Code-Server y Uptime Kuma), y el proceso fue definir la aplicación en el panel, copiar el client ID/secret, y pegarlo en la configuración de cada servicio — sin tocar ningún fichero de configuración a mano más allá de eso. El sistema de políticas permite restringir por grupo quién accede a qué, algo que hasta ahora resolvía con contraseñas sueltas por servicio, sin ningún control centralizado real.
Puntos a mejorar
La edición Community es sólida, pero algunas funciones (RADIUS, soporte con SLA) quedan en la edición Enterprise de pago — para un homelab personal no las echo en falta, pero si tu caso de uso las necesita, hay que tenerlo en cuenta desde el principio. Y aunque es más ligero que Keycloak, sigue siendo un stack de varios contenedores (server, worker, PostgreSQL, Redis) que hay que mantener actualizado, no una pieza trivial de "instalar y olvidar".



