Accesos y cuentas de administración
Super administradores, cuenta de respaldo, verificación en dos pasos (MFA), cuentas técnicas, dónde viven los secretos y cómo recuperar el acceso sin correo.
Esta página describe las cuentas con privilegios de la Academia y cómo recuperar el acceso si se pierde. No contiene ninguna contraseña: las claves viven solo en Coolify y en el gestor de contraseñas de la empresa.
Super administradores
Hay dos cuentas de super administrador:
| Cuenta | Cómo se crea | Notas |
|---|---|---|
Principal (admin, o el valor de MOODLE_ADMIN_USER) | En la primera instalación, con MOODLE_ADMIN_PASSWORD | Después de instalar, la variable ya no se usa: la contraseña se cambia desde Moodle |
Respaldo (admin.respaldo) | En un despliegue, si existe MOODLE_BACKUP_ADMIN_PASSWORD | Se crea una sola vez, con cambio de contraseña obligatorio al primer ingreso. Si luego se elimina a propósito, no vuelve a aparecer |
Son las únicas cuentas que ven toda la Administración del sitio y no tienen bloqueos: pueden abrir cualquier actividad y descargar cualquier certificado sin haber completado el módulo (sirve para verificar que funciona). La lista se gestiona en Administración del sitio → Usuarios → Permisos → Administradores del sitio.
Las contraseñas iniciales de las dos cuentas de super administrador deben cambiarse en producción. En versiones antiguas del repositorio estuvieron publicadas unas contraseñas de ejemplo para admin y admin.respaldo. El código actual ya no las contiene ni las detecta, pero siguen en el historial de Git: considérelas comprometidas y verifique que ninguna cuenta las use (ver Pendientes operativos).
- Si en Administración aparece el aviso "La cuenta admin usa la contraseña por defecto que estuvo publicada", cambie la contraseña de
admin(su perfil → Cambiar contraseña, o desde la otra cuenta de super administrador). El aviso se quita solo en cuanto esa cuenta cambia su contraseña. - El código actual ya no reemplaza automáticamente la contraseña de
admin.respaldo. Si aparece el aviso de que se le puso una contraseña aleatoria, viene de una versión anterior (se muestra 14 días): póngale una nueva desde la otra cuenta (Examinar lista de usuarios → Editar).
Verificación en dos pasos (MFA)
Solo para los super administradores (moodle-config.sh la vuelve a aplicar en cada despliegue):
- Además de la contraseña, piden un código de una app de autenticación (TOTP: Google Authenticator, Microsoft Authenticator u otra).
- Hay 7 días de gracia para configurarla; después se pide siempre.
- El resto del personal entra solo con contraseña.
Los códigos TOTP dependen de la hora. El reloj del servidor de producción estaba unos 16 minutos adelantado y sin sincronizar el 2026-10-06: si los códigos se rechazan, el problema puede ser el reloj (NTP del nodo Proxmox, pendiente de TI).
Recuperar el acceso
La página pública Recuperar acceso (enlace "¿Olvidó su contraseña?", con usuario y cédula) no funciona para los super administradores ni para las cuentas de gestión, a propósito. Por eso hay dos cuentas de super administrador.
- Entre con la otra cuenta de super administrador.
- Vaya a Administración del sitio → Usuarios → Cuentas → Examinar lista de usuarios, busque la cuenta y pulse editar.
- Escriba la contraseña en Nueva contraseña y pulse Actualizar información personal.
No hace falta correo.
El equipo de Sistemas abre la consola del contenedor moodle en el servidor (en Coolify, la Terminal del contenedor; en local, docker exec -it delta-lms_app bash) y, en la carpeta /var/www/html, usa el comando de Moodle:
php admin/cli/reset_password.phpDesde esa misma consola se desactiva la verificación en dos pasos:
php /var/www/html/admin/cli/cfg.php --component=tool_mfa --name=enabled --set=0El siguiente despliegue la vuelve a activar: entre, configure la app de nuevo en el perfil y haga el Redeploy.
Diez contraseñas fallidas seguidas en 30 minutos bloquean la cuenta durante 30 minutos. Se desbloquea sola; el super administrador puede desbloquearla antes desde la ficha de la persona.
No es una tarea de TI. La persona usa "¿Olvidó su contraseña?" con su usuario y su cédula (o, si el correo está configurado, recibe un enlace por correo). Talento Humano también puede restablecer contraseñas desde Personal Deltamontero. Ver Administración.
Cuentas técnicas
| Cuenta | Para qué | Notas |
|---|---|---|
mcpservice | Cuenta de servicio del agente de gestión por MCP (servicio web /webservice/mcp/server.php) | La crea setup-mcp-service.php en cada despliegue con el rol "Delta AI MCP (gestión completa)": lectura de informes y gestión de usuarios y matrículas, sin borrado permanente. Tiene un token permanente |
Usuario de MariaDB (MYSQL_USER) | Conexión de Moodle a la base | Contraseña en MYSQL_PASSWORD |
root de MariaDB | Administración de la base y restauración | Contraseña en MYSQL_ROOT_PASSWORD |
El token del servicio MCP tiene permisos de escritura y no se imprime completo en los registros. Para verlo, dentro del contenedor moodle:
php /setup-mcp-service.php --show-tokenEl procedimiento para rotar o revocar el token del servicio MCP no está documentado en el repositorio: Por confirmar.
Dónde viven los secretos
| Secreto | Dónde | Copia de seguridad |
|---|---|---|
Contraseñas de la base (MYSQL_ROOT_PASSWORD, MYSQL_PASSWORD) | Coolify → Environment Variables | Gestor de contraseñas (pendiente) |
| Contraseña inicial del administrador y de la cuenta de respaldo | Coolify (solo sirven al crear las cuentas) | Gestor de contraseñas (pendiente) |
Clave del correo (MOODLE_SMTP_PASSWORD) | Coolify, en modo literal | Gestor de contraseñas (pendiente) |
Clave del chat de IA (GROQ_API_KEY) | Coolify; cada despliegue la copia a la instancia del proveedor en la base de datos | Gestor de contraseñas (pendiente) |
| Claves de rclone y clave de cifrado de la copia externa | /root/.config/rclone/rclone.conf en el servidor | Gestor de contraseñas (sin la clave de cifrado, la copia no se puede abrir) |
| Token del servicio MCP | Base de datos de Moodle | Se ve con --show-token |
Si se pierden las variables de Coolify y no hay copia en un gestor de contraseñas, una recuperación en un servidor nuevo queda sin correo y sin chat de IA hasta conseguir claves nuevas. Guardarlas es uno de los pendientes operativos.
Acceso al servidor
- Hoy los usuarios entran a la Academia desde la red interna de la empresa, en
http://192.168.0.192. Cuando se publique con dominio (planificado), entrarán por la web enlearning.deltamontero.net, a través de Cloudflare, sin VPN. - Solo el equipo de TI necesita VPN para el acceso interno al servidor.
- Las tareas de servidor de este manual se hacen desde Coolify → Terminal (
localhostpara el servidor, o el contenedormoodlepara la consola de Moodle).