Español
Empezar

← Todas las plantillas · Contraseñas e inicio de sesión

Despliega authentik en un clic

Un proveedor de identidad para el inicio de sesión único en tus apps: OpenID Connect, SAML, LDAP, MFA y passkeys

Una alternativa autoalojada a Okta, Auth0 y Keycloak.

¿Qué es authentik?

authentik es un proveedor de identidad de código abierto: un solo inicio de sesión, con sus propios usuarios, grupos y autenticación multifactor, para todas las apps que ejecutas. Habla OAuth2 y OpenID Connect, SAML, LDAP, RADIUS y SCIM, y su proveedor de proxy pone un inicio de sesión delante de las apps que no lo tienen. El inicio de sesión se construye con flujos y etapas en la interfaz de administrador, así que la inscripción, la recuperación, la MFA con TOTP, passkeys WebAuthn o Duo, y el inicio de sesión con GitHub, Google, Apple o Discord se configuran en lugar de programarse.

La gente autoaloja authentik para dar inicio de sesión único a sus propias apps, como hacen las empresas con Okta o Microsoft Entra ID, sin pagar por usuario. Esta plantilla ejecuta el servidor de authentik, su worker y PostgreSQL, y fija el correo y la contraseña del administrador con los datos de los campos; authentik no necesita Redis desde la versión 2025.10. El inconveniente: LDAP y RADIUS necesitan cada uno un puesto avanzado (outpost), que es un contenedor aparte, y algunas funciones, como las integraciones con Google Workspace y Entra ID, están en la edición Enterprise, que es de pago.

Hosting de authentik en Pethost

  1. Inicias sesión en Pethost con una passkey, GitHub o Google. ¿Aún no tienes máquina? Eliges un plan, y el enlace espera hasta que esté lista.
  2. Nuevo proyecto se abre en authentik. Rellenas lo que pide y haces clic en Crear proyecto: Correo electrónico, Contraseña de administrador.
  3. En un par de minutos authentik está en marcha en su propia dirección con HTTPS. Sus secretos se generan al azar, y sus datos entran en el backup de cada noche.
  4. Es un proyecto como cualquier otro: tú o tu agente lo pueden cambiar, volver a una versión anterior o restaurar.

Preguntas sobre authentik

¿authentik es gratis?

Sí. La edición de código abierto de authentik es gratis bajo la licencia MIT e incluye OpenID Connect, SAML, LDAP, RADIUS, SCIM y el proveedor de proxy. La edición Enterprise cuesta desde 5 USD por usuario al mes, con facturación anual.

¿authentik o Keycloak?

Los dos son proveedores de identidad de código abierto con OpenID Connect y SAML. authentik construye el inicio de sesión con flujos en su interfaz de administrador, y su propia comparación señala LDAP, GeoIP y el acceso por RDP, SSH y VNC en el navegador como lo que él tiene y Keycloak no, con SCIM y RADIUS en Keycloak solo mediante extensiones.

¿authentik admite passkeys?

Sí. Su etapa de WebAuthn registra passkeys y llaves de seguridad, como segundo factor o para iniciar sesión sin contraseña, y desde authentik 2025.12 el formulario de inicio de sesión ofrece autocompletar las passkeys.

¿Cómo conecto una app a authentik con OpenID Connect?

En la Interfaz de administrador, abre Aplicaciones → Aplicaciones, haz clic en “New Application”, elige OAuth2/OpenID Connect e indica la URI de redirección de la app. Luego la app toma el ID de cliente, el secreto del cliente y el emisor, https://<tu dirección>/application/o/<slug>/, donde encuentra lo demás.

¿authentik puede ser un servidor LDAP?

Sí, mediante un proveedor de LDAP y un puesto avanzado (outpost) de LDAP, el contenedor ghcr.io/goauthentik/ldap, que sirve los usuarios y grupos de authentik a las apps que solo hablan LDAP. Se agrega a compose.yaml con el token del puesto avanzado que da authentik.

¿Cuánta memoria y disco necesita authentik?

authentik ocupa unos 750 MB de memoria en reposo con PostgreSQL y alrededor de 1 GB mientras se inicia; su base de datos crece despacio con los eventos y las sesiones. En Pethost le basta el plan Starter, y queda sitio para otras apps a su lado.

El archivo Docker Compose de authentik

La plantilla es este compose.yaml y las variables que se escriben en el .env del proyecto al crearlo. Pethost ejecuta el archivo tal como está escrito.

Contenedores: server (ghcr.io/goauthentik/server:2026.8), worker (ghcr.io/goauthentik/server:2026.8), postgresql (postgres:16-alpine).

Volúmenes, en el backup de cada noche: data, certs, templates, database.

x-authentik: &authentik
  image: ghcr.io/goauthentik/server:2026.8
  restart: unless-stopped
  depends_on:
    postgresql:
      condition: service_healthy
  shm_size: 512mb
  # Any of authentik's settings can be added to .env, such as AUTHENTIK_EMAIL__HOST and the
  # others that send its email.
  env_file: .env

services:
  server:
    <<: *authentik
    command: server
    environment: &environment
      AUTHENTIK_POSTGRESQL__HOST: postgresql
      AUTHENTIK_POSTGRESQL__NAME: authentik
      AUTHENTIK_POSTGRESQL__USER: authentik
      AUTHENTIK_POSTGRESQL__PASSWORD: ${POSTGRES_PASSWORD}
      AUTHENTIK_SECRET_KEY: ${SECRET_KEY}
    volumes:
      - data:/data
      - templates:/templates

  # The worker runs the background tasks, and at its first start it gives the administrator,
  # akadmin, the email and password given, so authentik's initial setup is never offered.
  worker:
    <<: *authentik
    command: worker
    environment:
      <<: *environment
      AUTHENTIK_BOOTSTRAP_EMAIL: ${ADMIN_EMAIL}
      AUTHENTIK_BOOTSTRAP_PASSWORD: ${ADMIN_PASSWORD}
    volumes:
      - data:/data
      - certs:/certs
      - templates:/templates

  postgresql:
    image: postgres:16-alpine
    restart: unless-stopped
    environment:
      POSTGRES_DB: authentik
      POSTGRES_USER: authentik
      POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
    volumes:
      - database:/var/lib/postgresql/data
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -h 127.0.0.1 -U authentik -d authentik"]
      interval: 5s
      timeout: 5s
      retries: 10
      start_period: 30s

volumes:
  data:
  certs:
  templates:
  database:

Más en Contraseñas e inicio de sesión