bolt Valebyte VPS desde $4/mes — NVMe, despliegue en 60s.

Obtener VPS arrow_forward

Authentik en VPS: instalación, configuración y mantenimiento

calendar_month 11 de junio de 2026 schedule 26 min de lectura visibility 26 vistas
person
Valebyte Team
Authentik en VPS: instalación, configuración y mantenimiento

Authentik en un VPS es el despliegue de una moderna plataforma de código abierto para la gestión de identidades y accesos (IAM) en su propio servidor virtual, que proporciona autenticación y autorización de usuarios centralizadas para múltiples aplicaciones, y su instalación, configuración y mantenimiento a través de Docker Compose permite un control flexible de toda la infraestructura.

En el panorama digital actual, la gestión del acceso a aplicaciones y servicios se ha convertido en una de las tareas clave para empresas de cualquier tamaño. Desde pequeñas startups hasta grandes corporaciones, todas se enfrentan a la necesidad de proporcionar un acceso seguro y conveniente para sus empleados y clientes. Aquí es donde entra en juego Authentik, una potente y flexible plataforma de gestión de identidades y accesos (Identity and Access Management, IAM) que permite centralizar la autenticación, autorización, gestión de usuarios y mucho más.

El despliegue de Authentik en un VPS (Virtual Private Server) le abre un amplio abanico de posibilidades. Obtiene un control total sobre su infraestructura IAM, garantiza un alto nivel de seguridad, flexibilidad en la configuración y escalabilidad, y evita la dependencia de proveedores de servicios en la nube específicos. En este artículo, examinaremos en detalle qué es Authentik, para qué sirve, qué requisitos del sistema exige, y le guiaremos a través del proceso completo de instalación de Authentik en un servidor utilizando Docker y Docker Compose, la configuración de un reverse proxy con HTTPS y discutiremos cuestiones de mantenimiento, incluyendo copias de seguridad y actualizaciones. También le daremos recomendaciones sobre cómo elegir la configuración óptima de VPS para una carga de trabajo real, para que su plataforma funcione siempre de forma estable y eficiente.

¿Qué es Authentik y por qué lo necesita en un VPS?

Authentik es una plataforma de gestión de identidades y accesos (IAM) moderna y de código abierto que ofrece una amplia gama de funciones para la gestión centralizada de la autenticación y autorización de usuarios. En esencia, es un punto de entrada único (Single Sign-On, SSO) y un potente mecanismo para implementar la autenticación multifactor (MFA), la gestión de usuarios y grupos, así como la integración con diversas aplicaciones y protocolos.

La idea principal de Authentik es simplificar y asegurar el proceso de acceso a sus servicios. En lugar de que los usuarios memoricen docenas de nombres de usuario y contraseñas para cada aplicación, se autentican una vez en Authentik y luego obtienen acceso sin interrupciones a todos los sistemas integrados. Esto no solo mejora la comodidad para los usuarios, sino que también aumenta significativamente la seguridad general, al permitir la aplicación centralizada de políticas de contraseña estrictas, MFA y otros mecanismos de protección.

Características clave de Authentik

  • Inicio de sesión único (Single Sign-On, SSO): Los usuarios inician sesión una vez y obtienen acceso a todas las aplicaciones conectadas sin tener que volver a introducir sus credenciales.
  • Autenticación multifactor (MFA): Soporte para TOTP, WebAuthn (FIDO2), SMS, Email, Duo, así como la posibilidad de crear proveedores de MFA propios.
  • Gestión de usuarios y grupos: Creación, modificación y eliminación centralizada de cuentas, así como gestión de la pertenencia a grupos.
  • Protocolos de autenticación: Soporte para OAuth2, OpenID Connect (OIDC), SAML, LDAP, RADIUS, SCIM, lo que garantiza una amplia compatibilidad con las aplicaciones existentes.
  • Integración con directorios: Sincronización de usuarios y grupos con directorios externos, como Active Directory, LDAP, Azure AD.
  • Políticas de acceso: Políticas flexibles para controlar el acceso basadas en grupos, direcciones IP, hora del día y otros parámetros.
  • Auditoría y registro: Registros detallados de todos los eventos de autenticación y autorización para garantizar el cumplimiento de los requisitos de seguridad.
  • Portal de autoservicio: Los usuarios pueden gestionar sus propias cuentas, restablecer contraseñas y configurar MFA.

Ventajas de Authentik self-hosted en un VPS

El despliegue de Authentik self-hosted en un VPS ofrece una serie de ventajas significativas en comparación con el uso de servicios IAM en la nube o sistemas de autenticación dispersos:

  1. Control total y soberanía de los datos: Sus datos y registros de autenticación permanecen completamente bajo su control. No depende de las políticas ni de la infraestructura de terceros. Esto es especialmente importante para empresas con estrictos requisitos de confidencialidad y cumplimiento normativo.
  2. Flexibilidad y personalización: Puede configurar Authentik para que se ajuste exactamente a sus necesidades únicas, integrarlo con cualquier parte de su infraestructura y adaptar la interfaz de usuario.
  3. Ahorro de costes a largo plazo: Aunque la instalación inicial de Authentik en un VPS requiere esfuerzo, a largo plazo puede ser significativamente más barata que las tarifas mensuales de las soluciones IAM comerciales, especialmente a medida que crece el número de usuarios.
  4. Rendimiento: Usted controla los recursos de su VPS, lo que le permite optimizar el rendimiento de Authentik para sus cargas de trabajo específicas, evitando el "efecto vecino" en los alojamientos compartidos.
  5. Seguridad: Usted gestiona la seguridad del servidor de forma independiente, establece sus propias reglas de firewall, realiza auditorías y actualizaciones, lo que le permite crear un entorno lo más seguro posible.
  6. Ausencia de dependencia del proveedor: Al ser una solución de código abierto, Authentik no le ata a un proveedor específico, lo que le da libertad de elección y migración.

La elección de un VPS para el despliegue de Authentik es especialmente relevante para aquellos que valoran la independencia, el control y la eficiencia. Un VPS self-managed de Valebyte.com es ideal para estas tareas, proporcionando recursos potentes y acceso completo para instalar y configurar cualquier aplicación, incluido Authentik.

Requisitos del sistema para Authentik: ¿qué VPS elegir?

Antes de proceder con la instalación de Authentik, es importante asegurarse de que su VPS cumple con los requisitos mínimos y recomendados del sistema. Authentik, como muchas aplicaciones modernas, utiliza activamente una base de datos (PostgreSQL) y almacenamiento en caché (Redis), por lo que el rendimiento del subsistema de disco y la cantidad de memoria RAM juegan un papel clave. Dado que utilizaremos Authentik Docker, esto también impone ciertos requisitos de recursos.

Requisitos mínimos para despliegues pequeños (hasta 50 usuarios activos / 5-10 aplicaciones)

  • Sistema operativo: Ubuntu 20.04+, Debian 11+, CentOS 7+/Rocky Linux 8+. Se recomienda Ubuntu Server LTS por su facilidad de uso y amplio soporte.
  • Procesador (CPU): 2 vCPU. Para cargas pequeñas será suficiente, pero cuanto mayor sea la frecuencia del núcleo, mejor.
  • Memoria RAM: 4 GB. Authentik por sí mismo consume alrededor de 1-2 GB, además PostgreSQL y Redis también requieren memoria. Los contenedores Docker también utilizan recursos.
  • Espacio en disco: 50 GB NVMe SSD. Se recomienda encarecidamente NVMe debido a la alta velocidad de las operaciones de entrada/salida, lo cual es crítico para la base de datos. Los HDD o SATA SSD pueden ralentizar significativamente el rendimiento.
  • Interfaz de red: 100 Mbps o 1 Gbps.
  • Dirección IP pública: Necesaria para acceder a Authentik desde el exterior y para el funcionamiento de HTTPS.

Requisitos recomendados para despliegues medianos (hasta 500 usuarios activos / 20-50 aplicaciones)

  • Procesador (CPU): 4 vCPU.
  • Memoria RAM: 8 GB.
  • Espacio en disco: 100 GB NVMe SSD.
  • Interfaz de red: 1 Gbps.

Requisitos recomendados para despliegues grandes (más de 500 usuarios activos / más de 50 aplicaciones)

Para despliegues grandes de Authentik, especialmente si espera una alta carga concurrente, se requerirá un VPS más potente o incluso un servidor dedicado. En este caso, tiene sentido considerar la escalabilidad de la base de datos y Redis a instancias separadas o el uso de clústeres.

  • Procesador (CPU): 8+ vCPU.
  • Memoria RAM: 16+ GB.
  • Espacio en disco: 200+ GB NVMe SSD (con posibilidad de expansión).
  • Interfaz de red: 1 Gbps con ancho de banda garantizado.

Nota importante sobre los discos: NVMe SSD no es solo una recomendación, sino casi un requisito para un funcionamiento estable y rápido de Authentik, especialmente con un gran número de operaciones de base de datos (registros, sesiones, sincronización). La diferencia de rendimiento entre NVMe y los SSD o HDD normales puede ser colosal.

Al elegir un VPS de Valebyte.com, preste atención a las tarifas con NVMe SSD y suficiente RAM. Si no está seguro de qué tarifa elegir, es mejor empezar con una un poco más potente y escalar hacia abajo si es necesario, que enfrentarse a problemas de rendimiento por falta de recursos.

¿Busca un servidor fiable para sus proyectos?

VPS desde $10/mes y servidores dedicados desde $9/mes con NVMe, protección DDoS y soporte 24/7.

Ver ofertas →

Instalación paso a paso de Authentik en un VPS con Docker Compose

La instalación de Authentik en un VPS se realizará utilizando Docker y Docker Compose. Esto permite desplegar fácilmente todos los componentes necesarios (Authentik, PostgreSQL, Redis) en contenedores aislados, lo que simplifica la gestión, actualización y escalabilidad. Este método es ideal para soluciones Authentik self-hosted.

Preparación del VPS para la instalación de Authentik

Antes de proceder con el despliegue, debe preparar su VPS. Asumimos que está utilizando el sistema operativo Ubuntu Server 22.04 LTS.

  1. Actualización del sistema:

    Conéctese a su VPS por SSH y actualice todos los paquetes del sistema:

    sudo apt update && sudo apt upgrade -y
  2. Instalación de Docker:

    Instale Docker Engine. Se recomienda utilizar el script oficial para una instalación estable:

    sudo apt install ca-certificates curl gnupg lsb-release -y
    sudo mkdir -p /etc/apt/keyrings
    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
    echo \
      "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
      $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
    sudo apt update
    sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin -y

    Añada el usuario actual al grupo docker para no usar sudo al trabajar con Docker:

    sudo usermod -aG docker $USER
    newgrp docker

    Verifique la instalación de Docker:

    docker run hello-world
  3. Instalación de Docker Compose (si no está instalado como plugin):

    Si ha instalado docker-compose-plugin, entonces docker compose ya está disponible. Si no, o si prefiere la versión antigua de docker-compose:

    sudo apt install docker-compose -y

    En este artículo, utilizaremos la nueva sintaxis docker compose (sin guion).

  4. Configuración del nombre de dominio y DNS:

    Asegúrese de tener un nombre de dominio registrado (por ejemplo, auth.yourdomain.com) y que el registro A para este dominio apunte a la dirección IP pública de su VPS. Esto es fundamental para el funcionamiento de HTTPS y Let's Encrypt.

  5. Apertura de puertos del firewall:

    Configure el firewall (por ejemplo, UFW) para permitir conexiones entrantes en los puertos 80 (HTTP) y 443 (HTTPS), así como 22 (SSH).

    sudo ufw allow ssh
    sudo ufw allow http
    sudo ufw allow https
    sudo ufw enable

    Confirme la activación del firewall pulsando y.

Despliegue de Authentik con Docker Compose

Ahora que el VPS está listo, podemos proceder con el despliegue de Authentik. Crearemos un archivo docker-compose.yml que definirá todos los servicios necesarios.

  1. Creación del directorio para Authentik:

    Cree un directorio separado para todos los archivos de Authentik:

    mkdir authentik && cd authentik
  2. Creación del archivo .env:

    Authentik utiliza variables de entorno para la configuración. Cree un archivo .env en el directorio authentik:

    nano .env

    Y añada el siguiente contenido, reemplazando your.domain.com por su dominio y generando contraseñas/secretos seguros:

    AUTHENTIK_SECRET_KEY=your_very_long_and_random_secret_key_for_authentik
    AUTHENTIK_HOST=https://auth.yourdomain.com
    
    PG_PASS=your_strong_postgres_password
    PG_HOST=authentik-database
    PG_NAME=authentik
    PG_USER=authentik
    
    REDIS_HOST=authentik-redis
    REDIS_PORT=6379

    Importante: AUTHENTIK_SECRET_KEY debe ser muy largo y aleatorio (mínimo 50 caracteres). Puede generarlo, por ejemplo, con el comando openssl rand -base64 48.

  3. Creación del archivo docker-compose.yml:

    Cree el archivo docker-compose.yml en el mismo directorio:

    nano docker-compose.yml

    Y añada el siguiente contenido:

    version: '3.9'
    
    services:
      authentik-database:
        image: postgres:15-alpine
        restart: unless-stopped
        healthcheck:
          test: ["CMD-SHELL", "pg_isready -d $$PG_NAME -U $$PG_USER"]
          start_period: 20s
          interval: 30s
          retries: 5
          timeout: 5s
        volumes:
          - database-data:/var/lib/postgresql/data
        environment:
          POSTGRES_PASSWORD: ${PG_PASS}
          POSTGRES_USER: ${PG_USER}
          POSTGRES_DB: ${PG_NAME}
    
      authentik-redis:
        image: redis:7-alpine
        restart: unless-stopped
        healthcheck:
          test: ["CMD-SHELL", "redis-cli ping"]
          start_period: 20s
          interval: 30s
          retries: 5
          timeout: 5s
        volumes:
          - redis-data:/data
    
      authentik-server:
        image: ghcr.io/goauthentik/authentik:2023.10.3 # Utilice la versión actual
        restart: unless-stopped
        command: server
        environment:
          AUTHENTIK_SECRET_KEY: ${AUTHENTIK_SECRET_KEY}
          AUTHENTIK_HOST: ${AUTHENTIK_HOST}
          AUTHENTIK_DATABASE__HOST: ${PG_HOST}
          AUTHENTIK_DATABASE__NAME: ${PG_NAME}
          AUTHENTIK_DATABASE__USER: ${PG_USER}
          AUTHENTIK_DATABASE__PASSWORD: ${PG_PASS}
          AUTHENTIK_REDIS__HOST: ${REDIS_HOST}
        volumes:
          - media:/media
          - custom-templates:/templates
        ports:
          - "9000:9000" # HTTP
          - "9443:9443" # HTTPS (para proxy integrado, usaremos Nginx/Caddy)
    
      authentik-worker:
        image: ghcr.io/goauthentik/authentik:2023.10.3 # Utilice la versión actual
        restart: unless-stopped
        command: worker
        environment:
          AUTHENTIK_SECRET_KEY: ${AUTHENTIK_SECRET_KEY}
          AUTHENTIK_HOST: ${AUTHENTIK_HOST}
          AUTHENTIK_DATABASE__HOST: ${PG_HOST}
          AUTHENTIK_DATABASE__NAME: ${PG_NAME}
          AUTHENTIK_DATABASE__USER: ${PG_USER}
          AUTHENTIK_DATABASE__PASSWORD: ${PG_PASS}
          AUTHENTIK_REDIS__HOST: ${REDIS_HOST}
        volumes:
          - media:/media
          - custom-templates:/templates
        # No es necesario abrir puertos para el worker, se comunica a través de la red interna de Docker
    
    volumes:
      database-data:
      redis-data:
      media:
      custom-templates:

    Nota: Reemplace 2023.10.3 por la versión estable más reciente de Authentik. Puede verificar la versión actual en la página de GitHub de Authentik.

  4. Inicio de Authentik:

    Guarde docker-compose.yml y inicie todos los servicios:

    docker compose up -d

    La opción -d inicia los contenedores en segundo plano. Espere a que todos los contenedores se inicien. Puede verificar su estado:

    docker compose ps

    Asegúrese de que todos los servicios tienen el estado running y su health también está en orden.

  5. Inicialización de Authentik y creación del superusuario:

    Después del primer inicio, Authentik necesita inicializar la base de datos y crear el primer administrador. Authentik realizará las migraciones automáticamente en el primer inicio, pero debe crear un superusuario. Esto se hace a través del contenedor worker:

    docker compose exec authentik-worker authentik shell
    > from authentik.core.models import User
    > User.objects.create_superuser('akadmin', '[email protected]', 'your_super_strong_password')
    > exit()

    Reemplace akadmin, [email protected] y your_super_strong_password por las credenciales deseadas. ¡Utilice una contraseña muy segura!

En este punto, Authentik está en funcionamiento y disponible en su VPS en los puertos 9000 (HTTP) y 9443 (HTTPS) dentro de la red Docker. Sin embargo, para acceder a él desde el exterior a través de un nombre de dominio con HTTPS, necesitaremos configurar un reverse proxy.

rocket_launch Elección rápida

¿Buscas un servidor que simplemente funcione?

Valebyte VPS — NVMe, soporte 24/7, despliegue en 60 segundos.

Ver planes VPS arrow_forward

Configuración de Reverse Proxy y HTTPS para Authentik

El acceso directo a Authentik por dirección IP y puertos no estándar no es deseable desde el punto de vista de la seguridad y la comodidad. Para ello, utilizaremos un reverse proxy (servidor proxy inverso) que aceptará todas las solicitudes entrantes en los puertos estándar (80 y 443), las reenviará a Authentik y proporcionará cifrado HTTPS utilizando Let's Encrypt. Consideraremos dos opciones populares: Nginx y Caddy.

Configuración de Nginx como Reverse Proxy

Nginx — es un servidor web y proxy inverso de alto rendimiento, ampliamente utilizado para estas tareas.

  1. Instalación de Nginx:
    sudo apt install nginx -y
  2. Creación del archivo de configuración de Nginx para Authentik:

    Cree un nuevo archivo de configuración para su dominio:

    sudo nano /etc/nginx/sites-available/authentik.conf

    Y añada el siguiente contenido, reemplazando auth.yourdomain.com por su dominio:

    server {
        listen 80;
        listen [::]:80;
        server_name auth.yourdomain.com;
    
        location / {
            return 301 https://$host$request_uri;
        }
    }
    
    server {
        listen 443 ssl http2;
        listen [::]:443 ssl http2;
        server_name auth.yourdomain.com;
    
        ssl_certificate /etc/letsencrypt/live/auth.yourdomain.com/fullchain.pem; # Será creado por Certbot
        ssl_certificate_key /etc/letsencrypt/live/auth.yourdomain.com/privkey.pem; # Será creado por Certbot
        ssl_trusted_certificate /etc/letsencrypt/live/auth.yourdomain.com/chain.pem;
    
        include /etc/letsencrypt/options-ssl-nginx.conf;
        ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
    
        location / {
            proxy_pass http://127.0.0.1:9000; # Puerto HTTP de Authentik
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $scheme;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
            proxy_buffering off;
        }
    
        # Para conexiones WebSocket (actualizaciones en vivo, etc.)
        location /ws {
            proxy_pass http://127.0.0.1:9000;
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $scheme;
        }
    }
  3. Activación de la configuración:
    sudo ln -s /etc/nginx/sites-available/authentik.conf /etc/nginx/sites-enabled/
    sudo nginx -t
    sudo systemctl restart nginx
  4. Instalación de Certbot para Let's Encrypt:

    Certbot automatiza la obtención y renovación de certificados SSL de Let's Encrypt.

    sudo apt install certbot python3-certbot-nginx -y
  5. Obtención del certificado SSL:

    Ejecute Certbot, especificando su dominio:

    sudo certbot --nginx -d auth.yourdomain.com

    Siga las instrucciones en pantalla. Certbot configurará automáticamente Nginx para usar HTTPS y añadirá las directivas necesarias. Es posible que deba seleccionar "Redirect" para la redirección automática de HTTP a HTTPS.

  6. Verificación:

    Abra su dominio (por ejemplo, https://auth.yourdomain.com) en el navegador. Debería ver la página de inicio de sesión de Authentik. Inicie sesión con el superusuario creado anteriormente.

Configuración de Caddy como Reverse Proxy

Caddy — es un servidor web moderno que simplifica la configuración de HTTPS gracias a la automatización integrada de Let's Encrypt.

  1. Instalación de Caddy:

    Instale Caddy, siguiendo la documentación oficial (para Ubuntu):

    sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https
    curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
    curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list
    sudo apt update
    sudo apt install caddy -y
  2. Creación del archivo Caddyfile para Authentik:

    Caddy utiliza el archivo Caddyfile para la configuración. Cree o edite el archivo:

    sudo nano /etc/caddy/Caddyfile

    Y añada el siguiente contenido, reemplazando auth.yourdomain.com por su dominio:

    auth.yourdomain.com {
        reverse_proxy 127.0.0.1:9000 {
            header_up Host {host}
            header_up X-Real-IP {remote_ip}
            header_up X-Forwarded-For {remote_ip}
            header_up X-Forwarded-Proto {scheme}
            header_up Upgrade {http.request.header.Upgrade}
            header_up Connection {http.request.header.Connection}
        }
    }

    Caddy obtendrá y renovará automáticamente los certificados SSL para auth.yourdomain.com. También redirigirá automáticamente HTTP a HTTPS.

  3. Verificación e inicio de Caddy:
    sudo caddy validate
    sudo systemctl restart caddy
  4. Verificación:

    Abra su dominio (por ejemplo, https://auth.yourdomain.com) en el navegador. Debería ver la página de inicio de sesión de Authentik.

Ambas opciones (Nginx y Caddy) cumplen perfectamente la función de reverse proxy. Caddy suele elegirse por su simplicidad y configuración automática de HTTPS, mientras que Nginx ofrece una configuración más granular y amplias posibilidades, lo que puede ser importante para infraestructuras más complejas.

Mantenimiento básico de Authentik: copias de seguridad y actualizaciones

Mantener la operatividad y seguridad de Authentik en el servidor requiere un mantenimiento regular, que incluye la copia de seguridad de los datos y la actualización oportuna del software. Estos son aspectos críticos para cualquier aplicación self-hosted.

Estrategias de copia de seguridad de Authentik

Sus datos de Authentik incluyen la base de datos PostgreSQL (usuarios, aplicaciones, políticas, registros) y archivos multimedia/plantillas. La copia de seguridad debe cubrir ambas partes.

  1. Copia de seguridad de la base de datos PostgreSQL:

    La parte más importante es la base de datos. Utilice la utilidad pg_dump para crear un volcado de la base de datos. Se recomienda hacerlo regularmente, por ejemplo, a diario.

    # Vaya al directorio de Authentik
    cd /path/to/your/authentik
    
    # Detenga Authentik para una copia de seguridad consistente (opcional, pero recomendado para sistemas grandes)
    # docker compose stop authentik-server authentik-worker
    
    # Realice la copia de seguridad de la base de datos
    docker compose exec authentik-database pg_dump -U $PG_USER -d $PG_NAME > authentik_db_backup_$(date +%Y%m%d%H%M%S).sql
    
    # Si detuvo los servicios, inícielos de nuevo
    # docker compose start authentik-server authentik-worker

    Reemplace $PG_USER y $PG_NAME por los valores de su archivo .env. Para simplificar, puede crear un script que lea estas variables. El archivo de copia de seguridad .sql se creará en el directorio actual (el directorio de Authentik).

  2. Copia de seguridad de los volúmenes de Docker:

    Además de la base de datos, Authentik almacena archivos multimedia y plantillas personalizadas en volúmenes de Docker:

    • media: para imágenes de usuario, logotipos y otros archivos multimedia.
    • custom-templates: para cualquier plantilla de Authentik modificada.
    • database-data: datos de PostgreSQL.
    • redis-data: datos de Redis.

    Puede crear archivos tar de estos volúmenes. Ejemplo para el volumen media:

    docker run --rm --volumes-from authentik-server -v $(pwd):/backup ubuntu tar cvf /backup/authentik_media_backup_$(date +%Y%m%d%H%M%S).tar /media

    Este enfoque requiere que el contenedor authentik-server esté en ejecución, ya que es el "propietario" del volumen media. Repita para custom-templates.

    Un enfoque más fiable: utilice herramientas para la copia de seguridad de volúmenes de Docker o simplemente haga una copia de seguridad de todo el directorio /var/lib/docker/volumes/ (después de detener Docker) o utilice herramientas especializadas de copia de seguridad del sistema de archivos que puedan trabajar con volúmenes en vivo.

  3. Automatización y almacenamiento de copias de seguridad:
    • Cron: Configure tareas cron para ejecutar scripts de copia de seguridad diariamente.
    • Almacenamiento remoto: Nunca almacene las copias de seguridad en el mismo VPS que el sistema en producción. Utilice almacenamiento remoto (almacenamiento compatible con S3, SCP a otro servidor, Google Drive, Dropbox) para garantizar la tolerancia a fallos.
    • Rotación de copias de seguridad: Implemente una política de rotación (por ejemplo, conservar 7 copias diarias, 4 semanales, 3 mensuales).

Actualización de Authentik

Actualizar Authentik en Docker Compose es un proceso relativamente sencillo que se reduce a obtener nuevas imágenes y reiniciar los contenedores. Siempre revise la documentación oficial de Authentik antes de actualizar, ya que puede haber instrucciones específicas para versiones mayores.

  1. Verificación de la versión actual:

    Visite el repositorio de GitHub de Authentik o su sitio web oficial para conocer la última versión estable.

  2. Actualización del archivo docker-compose.yml:

    Edite docker-compose.yml y cambie la etiqueta de la imagen para authentik-server y authentik-worker a la nueva versión (por ejemplo, de 2023.10.3 a 2023.12.0):

    # ...
      authentik-server:
        image: ghcr.io/goauthentik/authentik:2023.12.0 # Versión actualizada
    # ...
      authentik-worker:
        image: ghcr.io/goauthentik/authentik:2023.12.0 # Versión actualizada
    # ...
  3. Realización de la actualización:

    Vaya al directorio de Authentik y ejecute los comandos:

    # Cree una copia de seguridad antes de actualizar (¡OBLIGATORIO!)
    cd /path/to/your/authentik
    # ... ejecute los comandos de copia de seguridad, como se describió anteriormente ...
    
    # Detenga y elimine los contenedores antiguos
    docker compose down
    
    # Obtenga las nuevas imágenes e inicie los contenedores
    docker compose pull
    docker compose up -d

    docker compose pull descargará las nuevas versiones de las imágenes. docker compose up -d recreará los contenedores con las nuevas imágenes, conservando los datos en los volúmenes. Authentik realizará automáticamente las migraciones de base de datos necesarias al iniciar.

  4. Verificación después de la actualización:

    Después de iniciar, asegúrese de que todos los contenedores están funcionando y que Authentik es accesible a través de su dominio. Revise los registros en busca de errores.

Las copias de seguridad regulares y las actualizaciones oportunas son la clave para un funcionamiento estable, seguro y actualizado de su instalación de Authentik en un VPS. No descuide estos procedimientos.

Configuración óptima de VPS para Authentik bajo carga real

Elegir la configuración de VPS correcta para Authentik es crucial para garantizar un rendimiento estable y la capacidad de respuesta de su plataforma IAM. La "carga real" puede variar mucho dependiendo del número de usuarios, la frecuencia de las autenticaciones, el número de aplicaciones integradas y el uso de funciones como la sincronización con directorios externos o políticas complejas. Aquí, examinaremos escenarios típicos y propondremos configuraciones adecuadas.

Factores que influyen en los requisitos del VPS

  • Número de usuarios activos: ¿Cuántos usuarios se autenticarán regularmente?
  • Número de aplicaciones integradas: Cuantas más aplicaciones utilicen Authentik para SSO, mayor será la carga.
  • Frecuencia de autenticaciones: Cargas pico (por ejemplo, el lunes por la mañana) o un flujo constante de solicitudes.
  • Uso de MFA: Algunos métodos de MFA pueden requerir más recursos o servicios externos.
  • Sincronización de directorios: La sincronización frecuente con grandes directorios LDAP/AD puede consumir muchos recursos.
  • Registro y auditoría: Grandes volúmenes de registros requieren más espacio en disco y IOPS.
  • Uso de API: Si Authentik se utiliza activamente a través de API, esto también aumenta la carga.

Tabla de recomendaciones de configuraciones de VPS para Authentik

Las configuraciones que se presentan a continuación son recomendaciones generales. Para sistemas críticos o despliegues muy grandes, puede ser necesario un análisis y pruebas más detallados.

Escenario de carga Usuarios activos / Aplicaciones vCPU RAM (GB) Disco (NVMe SSD) Interfaz de red Costo aproximado (USD/mes)
Inicial / Prueba 10-50 / 5-10 2 4 50 GB 1 Gbps $10 - $20
Pequeña empresa / Departamento 50-200 / 10-25 4 8 100 GB 1 Gbps $20 - $40
Mediana empresa / Organización 200-500 / 25-50 6 16 200 GB 1 Gbps $40 - $80
Gran empresa / Corporación 500+ / 50+ 8+ 32+ 400+ GB 1 Gbps (garantizado) $80 - $150+

Aclaraciones sobre la tabla:

  • vCPU: Authentik escala bien con los núcleos. Más núcleos significan un mejor procesamiento paralelo de las solicitudes.
  • RAM: Authentik, PostgreSQL y Redis son los principales consumidores de memoria. La falta de RAM llevará a un uso activo del swap y a una drástica caída del rendimiento. 8 GB de RAM es un mínimo razonable para un entorno de producción.
  • Disco (NVMe SSD): Este es uno de los parámetros más críticos. PostgreSQL escribe activamente en el disco, y un disco lento se convertirá en un cuello de botella. NVMe SSD proporciona una velocidad de IOPS significativamente mayor en comparación con SATA SSD o, más aún, HDD. Para escenarios de alta carga o grandes volúmenes de registros, NVMe es obligatorio.
  • Interfaz de red: 1 Gbps es el estándar para los VPS modernos. Para despliegues muy grandes, asegúrese de que el proveedor garantiza un alto ancho de banda, y no "hasta 1 Gbps".
  • Costo aproximado: Los precios pueden variar mucho según el proveedor, la ubicación y los servicios adicionales. Valebyte.com ofrece tarifas competitivas con NVMe SSD que son ideales para Authentik.

Recomendaciones adicionales:

  1. Monitoreo: Después del despliegue, configure un sistema de monitoreo (por ejemplo, Netdata, Prometheus con Grafana) para rastrear la carga de CPU, RAM, IOPS de disco y tráfico de red. Esto le ayudará a comprender las necesidades reales de su sistema y a escalar el VPS a tiempo.
  2. Escalabilidad: Si espera un crecimiento significativo, considere la posibilidad de utilizar VPS más grandes o incluso servidores dedicados. En algunos casos, para despliegues muy grandes, puede ser aconsejable trasladar la base de datos y Redis a instancias separadas y optimizadas para ellos.
  3. Copia de seguridad: Asegúrese de que su plan de copias de seguridad cumple con sus requisitos de recuperación (RTO/RPO).
  4. Seguridad: Actualice regularmente el SO, Docker y Authentik, utilice contraseñas complejas y configure el firewall.

Elegir la configuración óptima de VPS para Authentik es una inversión en la estabilidad y seguridad de su infraestructura. Comience con un mínimo razonable, basándose en sus necesidades actuales, y esté preparado para escalar a medida que la carga crezca. Valebyte.com ofrece tarifas de VPS flexibles que pueden adaptarse a cualquier requisito de Authentik, desde entornos de prueba hasta sistemas de producción de alta carga.

rocket_launch Elección rápida

¿Buscas un servidor que simplemente funcione?

Valebyte VPS — NVMe, soporte 24/7, despliegue en 60 segundos.

Ver planes VPS arrow_forward

Preguntas frecuentes sobre Authentik en el servidor

Al desplegar y operar Authentik en un servidor, especialmente al utilizar el enfoque Authentik Docker, surgen una serie de preguntas típicas. A continuación, hemos recopilado las respuestas a las más comunes para ayudarle en el proceso de instalación, configuración y mantenimiento.

1. ¿Se puede usar Authentik sin Docker?

Teóricamente, sí, Authentik se puede instalar sin Docker, configurando manualmente todas las dependencias (Python, PostgreSQL, Redis, etc.). Sin embargo, este enfoque es significativamente más complejo, requiere más tiempo para la configuración y el soporte, y también complica el proceso de actualización. Los desarrolladores de Authentik recomiendan y apoyan activamente solo el despliegue a través de Docker/Docker Compose debido a su simplicidad, portabilidad y aislamiento de componentes.

2. ¿Cómo cambiar la contraseña del superusuario de Authentik si la he olvidado?

Puede restablecer la contraseña del superusuario utilizando el comando authentik shell dentro del contenedor authentik-worker:

cd /path/to/your/authentik
docker compose exec authentik-worker authentik shell
> from authentik.core.models import User
> user = User.objects.get(username='akadmin') # Reemplace akadmin por su nombre de usuario
> user.set_password('your_new_super_strong_password')
> user.save()
> exit()

Asegúrese de usar una contraseña segura.

3. ¿Qué puertos utiliza Authentik por defecto?

Dentro del contenedor Docker, Authentik utiliza por defecto el puerto 9000 para HTTP y el 9443 para HTTPS (proxy integrado). Sin embargo, como hemos visto, para el acceso externo se recomienda utilizar un reverse proxy (Nginx o Caddy) que escuchará los puertos estándar 80 y 443 y reenviará las solicitudes al puerto interno 9000 de Authentik.

4. ¿Cómo configurar Authentik para que funcione con varios nombres de dominio?

Si necesita que Authentik sea accesible a través de varios nombres de dominio, puede configurar su reverse proxy (Nginx o Caddy) para manejar esos dominios. Para Nginx, esto significaría añadir bloques server_name adicionales y, posiblemente, certificados SSL separados. En Authentik mismo, la variable AUTHENTIK_HOST en el archivo .env debe contener el nombre de dominio principal, pero Authentik generalmente funciona correctamente con las solicitudes que llegan a través del reverse proxy, independientemente del encabezado Host, si se proxy correctamente.

5. ¿Qué hacer si Authentik no se inicia después de una actualización?

Si después de una actualización Authentik no se inicia, realice los siguientes pasos:

  1. Compruebe los registros de los contenedores:
    cd /path/to/your/authentik
    docker compose logs authentik-server authentik-worker

    Busque errores, especialmente los relacionados con la base de datos o la configuración.

  2. Compruebe el estado de los contenedores:
    docker compose ps

    Asegúrese de que todos los contenedores tienen el estado running y health.

  3. Compruebe el archivo .env y docker-compose.yml: Asegúrese de que todas las variables de entorno y configuraciones son correctas y no han sido modificadas accidentalmente.
  4. Restaurar desde una copia de seguridad: Si nada ayuda, esta es la razón por la que siempre se hacen copias de seguridad antes de una actualización. Restaure la base de datos y los volúmenes desde la última copia de seguridad funcional.

6. ¿Cómo aumentar el rendimiento de Authentik?

Para aumentar el rendimiento de Authentik:

  • Escalar el VPS: Aumente el número de vCPU, RAM y, lo más importante, proporcione un NVMe SSD rápido.
  • Optimizar PostgreSQL: Si tiene una carga muy alta, considere una configuración fina de PostgreSQL o trasladarlo a una instancia separada y más potente.
  • Configurar Redis: Asegúrese de que Redis funciona de forma eficiente y tiene suficiente memoria.
  • Optimizar el Reverse Proxy: Asegúrese de que Nginx o Caddy están configurados de forma óptima para manejar un gran número de conexiones.
  • Distribuir la carga: Para despliegues muy grandes, se puede considerar el uso de varias instancias de Authentik detrás de un balanceador de carga.

7. ¿Puedo usar Authentik para autenticarme en Windows AD o LDAP?

Sí, Authentik tiene soporte integrado para la integración con LDAP y Active Directory. Puede configurar proveedores de fuentes de usuarios (User Sources) para sincronizar usuarios y grupos desde su AD/LDAP, lo que le permite utilizar Authentik como un punto de autenticación único para su infraestructura existente.

8. ¿Dónde se almacenan los datos de Authentik?

Los datos principales de Authentik se almacenan en los siguientes lugares:

  • Base de datos PostgreSQL: Contiene toda la información sobre usuarios, aplicaciones, políticas, sesiones y registros. Se almacena en el volumen database-data.
  • Redis: Se utiliza para el almacenamiento en caché y las sesiones. Se almacena en el volumen redis-data.
  • Archivos multimedia: Avatares de usuario, logotipos de aplicaciones y otros datos multimedia se almacenan en el volumen media.
  • Plantillas personalizadas: Si ha modificado las plantillas de la interfaz de usuario de Authentik, se almacenan en el volumen custom-templates.

Todos estos volúmenes son creados por Docker Compose y se encuentran en el directorio /var/lib/docker/volumes/ de su VPS.

Esperamos que estas respuestas le ayuden a trabajar con más confianza con Authentik en su servidor.

Conclusiones

El despliegue de Authentik en un VPS es una solución potente y flexible para la gestión centralizada de identidades y accesos, que proporciona un control total sobre su infraestructura de seguridad. Siguiendo las instrucciones paso a paso para la instalación de Authentik a través de Docker Compose, la configuración de un reverse proxy con HTTPS y el mantenimiento regular, obtendrá una plataforma fiable y escalable.

Para garantizar un rendimiento y una seguridad óptimos de su instancia de Authentik, es fundamental elegir un VPS con recursos suficientes, especialmente con NVMe SSD. Valebyte.com ofrece VPS de alto rendimiento con discos NVMe, que son ideales para alojar Authentik y otras aplicaciones críticas, garantizando la estabilidad y velocidad de su sistema IAM.

¿Listo para elegir un servidor?

VPS y servidores dedicados en más de 72 países con activación instantánea y acceso root completo.

Empezar ahora →

Compartir esta publicación:

support_agent
Valebyte Support
Usually replies within minutes
Hi there!
Send us a message and we'll reply as soon as possible.