Files
Virtnet.bond/extensions/Others/Authentik/INSTALACION.md
2025-11-30 11:57:22 +01:00

5.8 KiB

🚀 Guía de Instalación - Extensión Authentik SSO - Forclus.NET

📋 Requisitos Previos

  • Paymenter instalado y funcionando
  • PHP 8.0 o superior
  • Laravel 10+
  • Acceso a la base de datos
  • Instancia de Authentik configurada

📦 Instalación

Método 1: Instalación Automática (Recomendado)

  1. Descargar la extensión:

    # Descargar el archivo Authentik.zip
    wget https://tu-servidor.com/Authentik.zip
    
  2. Extraer en el directorio correcto:

    cd /var/www/paymenter/extensions/Others/
    unzip Authentik.zip
    
  3. Ejecutar el script de instalación:

    cd /var/www/paymenter
    php extensions/Others/Authentik/install.php
    
  4. Activar desde el panel:

    • Ve a Administración > Extensiones
    • Busca "Authentik SSO - Forclus.NET"
    • Haz clic en "Activar" (la vista de login se modificará automáticamente)

Método 2: Instalación Manual

  1. Extraer la extensión:

    cd /var/www/paymenter/extensions/Others/
    unzip Authentik.zip
    
  2. Configurar manualmente:

    • Ve a Administración > Extensiones
    • Busca "Authentik SSO - Forclus.NET"
    • Haz clic en "Instalar"
    • Luego "Activar"

⚙️ Configuración

1. Configurar Authentik

En tu instancia de Authentik:

  1. Crear una aplicación OAuth2/OpenID:

    • Ve a Applications > Create
    • Selecciona OAuth2/OpenID Provider
    • Configura los siguientes parámetros:
  2. URLs de redirección:

    • Authorization URL: https://tu-paymenter.com/oauth/authentik
    • Callback URL: https://tu-paymenter.com/oauth/authentik/callback
  3. Scopes requeridos:

    • openid
    • email
    • profile
  4. Copiar credenciales:

    • Client ID
    • Client Secret
    • Base URL (ej: https://authentik.tudominio.com)

2. Configurar en Paymenter

  1. Ve a Administración > Extensiones > Authentik SSO

  2. Configura los parámetros:

    • ✅ Authentik SSO Enabled: Activar
    • 🔑 Client ID: Tu Client ID de Authentik
    • 🔐 Client Secret: Tu Client Secret de Authentik
    • 🌐 Base URL: URL base de tu instancia Authentik
  3. Opciones avanzadas:

    • ✅ Auto-crear usuarios: Crear automáticamente usuarios de Authentik
    • ❌ Requerir usuario existente: Solo usuarios ya existentes en Paymenter
    • ❌ Forzar solo Authentik: Ocultar formulario de login normal

🧪 Pruebas

1. Probar la configuración

cd /var/www/paymenter
php extensions/Others/Authentik/test_extension.php

2. Probar el login

  1. Ve a la página de login de Paymenter
  2. Deberías ver el botón "Iniciar sesión con Authentik"
  3. Haz clic en el botón
  4. Serás redirigido a Authentik
  5. Después del login, serás redirigido de vuelta a Paymenter

🔧 Solución de Problemas

Error: "ERR_TOO_MANY_REDIRECTS"

Si experimentas bucles de redirección:

# Desactivar temporalmente el modo "force Authentik only"
php extensions/Others/Authentik/disable_force_mode.php

Error: "Vista de login no modificada"

Si la vista no se modifica automáticamente:

# Restaurar la vista original
php extensions/Others/Authentik/restore_login_view.php

Error: "Configuración inválida"

Verifica que:

  • ✅ Client ID esté configurado
  • ✅ Client Secret esté configurado
  • ✅ Base URL esté configurado y sea accesible
  • ✅ URLs de redirección estén configuradas correctamente en Authentik

📁 Estructura de Archivos

Authentik/
├── Authentik.php              # Clase principal de la extensión
├── config.php                 # Configuración de la extensión
├── install.php                # Script de instalación
├── uninstall.php              # Script de desinstalación
├── test_extension.php         # Script de pruebas
├── disable_force_mode.php     # Desactivar modo forzado
├── restore_login_view.php     # Restaurar vista original
├── README.md                  # Documentación en francés
├── README_ES.md               # Documentación en español
├── INSTALACION.md             # Esta guía
├── FORCE_AUTHENTIK_ONLY.md    # Documentación del modo forzado
├── routes/
│   └── web.php                # Rutas de la extensión
├── Http/
│   └── Controllers/
│       └── AuthentikController.php
├── Providers/
│   └── AuthentikProvider.php
├── Middleware/
│   └── ForceAuthentikOnly.php
├── Livewire/
│   └── AuthentikLoginOverride.php
├── resources/
│   ├── views/
│   │   └── login-override.blade.php
│   └── lang/
│       ├── fr/messages.php    # Traducciones en francés
│       ├── en/messages.php    # Traducciones en inglés
│       └── es/messages.php    # Traducciones en español
└── scripts/
    └── modify_login_view.php  # Script para modificar la vista

🆘 Soporte

Si tienes problemas:

  1. Revisa los logs de Laravel: storage/logs/laravel.log
  2. Ejecuta el script de prueba: php extensions/Others/Authentik/test_extension.php
  3. Verifica la configuración de Authentik
  4. Consulta la documentación de Authentik

🔄 Actualización

Para actualizar la extensión:

  1. Hacer backup de la configuración actual
  2. Desactivar la extensión desde el panel
  3. Reemplazar los archivos con la nueva versión
  4. Reactivar la extensión
  5. Verificar que todo funciona correctamente

🗑️ Desinstalación

Para desinstalar completamente:

cd /var/www/paymenter
php extensions/Others/Authentik/uninstall.php

Esto eliminará:

  • ✅ La extensión de la base de datos
  • ✅ Todos los parámetros de configuración
  • ✅ Restaurará la vista de login original
  • ✅ Limpiará todos los archivos de backup