5.8 KiB
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)
-
Descargar la extensión:
# Descargar el archivo Authentik.zip wget https://tu-servidor.com/Authentik.zip -
Extraer en el directorio correcto:
cd /var/www/paymenter/extensions/Others/ unzip Authentik.zip -
Ejecutar el script de instalación:
cd /var/www/paymenter php extensions/Others/Authentik/install.php -
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
-
Extraer la extensión:
cd /var/www/paymenter/extensions/Others/ unzip Authentik.zip -
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:
-
Crear una aplicación OAuth2/OpenID:
- Ve a Applications > Create
- Selecciona OAuth2/OpenID Provider
- Configura los siguientes parámetros:
-
URLs de redirección:
- Authorization URL:
https://tu-paymenter.com/oauth/authentik - Callback URL:
https://tu-paymenter.com/oauth/authentik/callback
- Authorization URL:
-
Scopes requeridos:
openidemailprofile
-
Copiar credenciales:
- Client ID
- Client Secret
- Base URL (ej:
https://authentik.tudominio.com)
2. Configurar en Paymenter
-
Ve a Administración > Extensiones > Authentik SSO
-
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
-
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
- Ve a la página de login de Paymenter
- Deberías ver el botón "Iniciar sesión con Authentik"
- Haz clic en el botón
- Serás redirigido a Authentik
- 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:
- Revisa los logs de Laravel:
storage/logs/laravel.log - Ejecuta el script de prueba:
php extensions/Others/Authentik/test_extension.php - Verifica la configuración de Authentik
- Consulta la documentación de Authentik
🔄 Actualización
Para actualizar la extensión:
- Hacer backup de la configuración actual
- Desactivar la extensión desde el panel
- Reemplazar los archivos con la nueva versión
- Reactivar la extensión
- 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