Général

Interface et notifications globales

  • Nom de l'application, sous-titre, lettre/logo et tagline de connexion.
  • Fuseau horaire : soit celui du serveur, soit un fuseau personnalisé.
  • Intervalle de rafraîchissement du dashboard.
  • Période par défaut des statistiques.
  • Configuration mail et SMTP.
ParamètreValeur par défautRôle
interface_timezoneserverFuseau utilisé pour l'affichage et la planification, ou fuseau serveur si la valeur reste server.
interface_dashboard_refresh_seconds60 secondesIntervalle d'auto-refresh de la page d'accueil.
interface_stats_default_period_days7 joursPériode par défaut utilisée dans les graphiques.
OngletSous-sections vues dans l'UIBut
GénéralInterface, NotificationsBranding, fuseau, rafraîchissement, SMTP et canaux globaux.
AccèsSecurity, WebAuth, Audit, RolesSessions, 2FA, passkeys, rétention des journaux et hiérarchie RBAC.
BackupBackup, RestoreValeurs par défaut des jobs et comportements de restauration.
AutomationScheduler, WorkerCron central, tâches globales et traitement de fond.
DonnéesExploration, Indexation, PerformanceCaches, pagination, recherche, index et seuils de lenteur.
Intégrations / APIIntégrations, API publiqueSecrets externes, canaux tiers, CORS, tokens et limites API.
Accès

Sécurité, WebAuth, audit et rôles

  • Durée de session absolue, inactivité, délai d'avertissement et fréquence de synchronisation en base.
  • Fingerprint strict de session.
  • Âge maximum de ré-authentification et TTL du second facteur en attente.
  • Nombre maximum de sessions par utilisateur.
  • Force du 2FA pour les administrateurs et notifications de login.
  • RP name, RP ID, timeouts, user verification, resident keys et attestation pour WebAuthn.
  • Rétentions d'audit pour activité, restaurations, cron, logins, rate limits, queue et archives.
  • Édition de la hiérarchie des rôles et de leurs badges.
ParamètreValeur par défautRôle
session_absolute_lifetime_minutes480 minutesDurée de vie absolue d'une session.
reauth_max_age_seconds300 secondesÂge maximum avant qu'une action sensible n'exige une nouvelle saisie du mot de passe ou d'un facteur.
session_strict_fingerprintActivéInvalide la session si l'empreinte stricte ne correspond plus.
max_sessions_per_user5Nombre maximum de sessions simultanées par compte.
app_notifications_retention_days7 joursDurée de rétention des notifications internes.
Valeurs par défaut métier

Backup, restauration et comportements par défaut

  • Seuil global d'alerte des dépôts.
  • Valeurs par défaut de planification des backup jobs : actif ou non, heure, jours, notification en cas d'échec.
  • Valeurs par défaut de rétention : activation, keep_last/daily/weekly/monthly/yearly et prune.
  • Politique de retry globale de référence.
  • Chemins par défaut des restaurations locales, distantes et partielles.
  • Taille de page de l'historique des restaurations.
Surveillance de l'espace disque

Monitoring de l'espace disque

Le service DiskSpaceMonitor surveille en continu l'espace disponible sur les montages concernés par vos sauvegardes. Il s'exécute comme tâche planifiée globale et sonde périodiquement les espaces disques configurés.

  • Ce qui est surveillé : les points de montage des dépôts Restic locaux, ainsi que la racine / de chaque hôte SSH distant.
  • Sonde distante : réalisée via la commande SSH df -Pk exécutée sur l'hôte cible.
  • Stockage des données : historique ponctuel dans la table disk_space_checks, dernier état connu dans disk_space_runtime_status.
  • Modèle de prévision : utilise 30 jours d'historique (nécessite au moins 3 points de données quotidiens) pour projeter le nombre de jours avant saturation.
  • Contrôles preflight : avant chaque job (backup, copie, restauration), l'espace disque est vérifié — si le seuil critique est dépassé, le job est bloqué avec une erreur explicite.
  • Niveaux de sévérité : ok / warning / critical — seuils configurables en pourcentage d'utilisation. error indique un échec de la sonde elle-même (hôte SSH inaccessible, erreur de commande). unknown indique qu'aucune donnée n'a encore été collectée.
  • Sonde manuelle : déclenchable depuis la page d'un dépôt ou d'un hôte, ou via le script probe_disk_space.php.
  • Surfaces UI : widget du dashboard, page des statistiques, pages individuelles des dépôts et hôtes.
ParamètreValeur par défautRôle
disk_monitoring_enabledActivéActive ou désactive globalement le service de surveillance.
disk_local_warning_percent80%Pourcentage d'utilisation locale à partir duquel le statut passe à warning.
disk_local_critical_percent90%Pourcentage d'utilisation locale à partir duquel le statut passe à critical et les jobs sont bloqués.
disk_remote_warning_percent80%Pourcentage d'utilisation distante à partir duquel le statut passe à warning.
disk_remote_critical_percent90%Pourcentage d'utilisation distante à partir duquel le statut passe à critical.
disk_preflight_enabledActivéActive les contrôles d'espace disque avant les jobs.
disk_monitor_history_retention_days30 joursDurée de conservation de l'historique des sondes.
Le modèle de prévision nécessite au minimum 3 points de données quotidiens sur 30 jours pour être fiable. En dessous de ce seuil, la prévision est affichée comme indisponible.
La santé du broker HA est également exposée sous forme de notifications — voir le profil de notification secret_broker.
Automation

Scheduler, cron central et worker

  • Cron central en mode CLI-only (l'entrée HTTP legacy cron.php?token=... est désactivée).
  • Modes d'exécution (manual, diagnostic, quick) pilotés par FULGURITE_CRON_MODE.
  • Rapport hebdomadaire, integrity check et maintenance vacuum avec jours, heures et notifications.
  • Nom par défaut du worker, sleep, jobs par boucle, stale minutes et heartbeat stale seconds.
ParamètreValeur par défautRôle
worker_stale_minutes30 minutesDélai après lequel un worker inactif est considéré comme mort et peut être relancé.
worker_heartbeat_stale_seconds20 secondesTolérance du heartbeat avant alerte.
worker_limit3Nombre maximum de jobs traités par itération de boucle.

Assistant de reconfiguration (Resetup Wizard)

Le bouton Reconfigurer le système dans l'onglet Automation ouvre l'assistant de reconfiguration. Il permet de modifier l'utilisateur PHP-FPM, les permissions de fichiers et la configuration du worker sans réinstaller l'application.

  • 7 étapes : contrôle preflight → sélection utilisateur/groupe → validation des permissions → mot de passe sudo (si nécessaire) → application → journal d'audit → fin.
  • Gestion sudo : si un mot de passe sudo est requis, il est conservé uniquement en session le temps de l'assistant et n'est jamais stocké. Chaque commande sudo est validée individuellement (défense en profondeur).
  • Journal d'audit : toutes les actions sont enregistrées avec horodatage, commande exécutée et acteur.
  • Détection Docker : si l'application tourne dans un conteneur Docker, les étapes liées à systemd sont automatiquement ignorées.
  • Mode sans sudo : dans les environnements sans sudo disponible, l'assistant génère les commandes manuelles à exécuter directement sur le serveur.
  • Verrou de session : une seule session de reconfiguration peut être active simultanément. Naviguer hors de l'assistant réinitialise l'état.
  • Limitation de débit : maximum 3 tentatives de reconfiguration par heure.
L'assistant de reconfiguration nécessite le rôle administrateur. Les opérations appliquées sont irréversibles via l'interface — le journal d'audit permet de tracer ce qui a été modifié.
Exploration, indexation et performance

Données internes, caches et seuils

  • TTL du cache de vue explorateur et taille de page d'exploration.
  • Nombre maximum de résultats de recherche et taille max de fichier exploitable.
  • Batch du warm index, rétention de l'index adhoc et nombre de snapshots récents indexés.
  • TTL des caches Restic : snapshots, ls, stats, search et tree.
  • Seuils de lenteur HTTP, SQL, Restic et commandes loggées.
  • Paramètres d'auto-refresh et de cache de la page performance.
ParamètreValeur par défautRôle
explore_max_file_size_mb5 MoTaille maximum d'un fichier explorable depuis l'interface.
explore_view_cache_ttl20 secondesDurée de vie du cache des vues explorateur.
explore_search_max_results200Nombre maximum de résultats renvoyés par la recherche.
performance_slow_request_threshold_ms800 msSeuil au-dessus duquel une requête HTTP est loggée comme lente.
Services externes

Intégrations externes et API publique

  • Discord, Slack, Telegram, ntfy, webhook, Teams, Gotify, in-app et web push.
  • Rétention des notifications internes.
  • Gestion des secrets via secret:// avec provider agent (par défaut) et fallback local chiffré.
  • Configuration Infisical : URL, projet, environnement et chemin de secrets.
  • Activation de l'API, durée de vie par défaut des tokens, rate limit, rétention des logs API, rétention de l'idempotency et CORS autorisés.
  • Rate limits par familles d'endpoints, y compris restaurations, scheduler, worker, explore, recherche et WebAuthn.
ParamètreValeur par défautRôle
api_enabledÀ définir selon le déploiementActive globalement l'API publique.
api_default_rate_limit_per_minute120Limite de requêtes par minute appliquée par défaut.
api_log_retention_days30 joursRétention des logs d'appels API.
app_notifications_retention_days7 joursRétention des notifications internes en base.
Les valeurs marquées "Voir src/AppConfig.php" sont susceptibles d'évoluer entre versions. Consultez ce fichier pour confirmer la valeur exacte appliquée sur votre déploiement, et utilisez la page Paramètres pour les surcharger.