Impossible d’accéder au PCA phpBB : mot de passe oublié, droits administrateur perdus ou connexion impossible
Vous êtes administrateur de votre forum phpBB et, soudainement, vous ne pouvez plus accéder au panneau de contrôle d’administration ?
Le problème peut prendre plusieurs formes :
[]vous avez oublié votre mot de passe ;
[]phpBB refuse votre mot de passe alors que vous êtes certain qu’il est correct ;
[]vous pouvez vous connecter au forum mais plus au PCA ;
[]le lien vers le PCA a disparu ;
[]phpBB affiche que vous ne possédez pas les permissions administratives ;
[]le formulaire du PCA revient simplement sur la page de connexion ;
[]vous êtes déconnecté immédiatement après vous être identifié ;
[]la connexion fonctionne sur une adresse mais pas sur une autre ;
[]phpBB vous redirige vers un ancien domaine ;
[]le PCA renvoie une erreur 403, 404 ou 500 ;
[]le problème est apparu après une migration ;
[]le problème est apparu après une mise à jour phpBB ou PHP ;le problème est apparu après un changement de domaine ou de sous-domaine.
Ces symptômes se ressemblent, mais leurs causes peuvent être complètement différentes.
Un problème d’accès au PCA n’est pas forcément un problème de mot de passe.
Il peut également venir :
[]des cookies ;
[]des sessions ;
[]du nom de domaine configuré dans phpBB ;
[]des permissions administratives ;
[]du statut Fondateur ;
[]d’un cache contenant encore une ancienne configuration ;
[]d’un serveur Web ;
[]d’un pare-feu applicatif ;
[]d’une extension ;
[]d’une migration incomplète ;ou d’une configuration PHP devenue incompatible.
L’objectif de ce guide est de déterminer précisément pourquoi l’accès au PCA ne fonctionne plus, puis de choisir la méthode de récupération adaptée.
Nous commencerons toujours par les solutions les moins invasives.
La modification directe de la base de données ne doit intervenir qu’en dernier recours.
1. Commencez par identifier exactement ce qui ne fonctionne plus
Avant toute manipulation, déterminez dans quelle situation vous vous trouvez.
Cas A
Vous ne pouvez plus vous connecter au forum du tout.
Code : Tout sélectionner
Connexion au forum : impossible
Connexion au PCA : impossible
Cas B
Vous êtes connecté normalement au forum, mais le lien du PCA n’apparaît plus.
Code : Tout sélectionner
Connexion au forum : OK
Lien PCA : absent
Cas C
Vous êtes connecté au forum, le lien du PCA existe, mais phpBB refuse l’accès.
Code : Tout sélectionner
Connexion au forum : OK
Lien PCA : présent
Accès PCA : refusé
Cas D
Le formulaire du PCA accepte vos identifiants puis vous renvoie à nouveau vers la page de connexion.
Code : Tout sélectionner
Identifiants saisis
↓
Validation
↓
Retour à la connexion
Cas E
Après la connexion, vous êtes envoyé vers :
Code : Tout sélectionner
ancien-domaine.example
ou :
Code : Tout sélectionner
localhost
ou vers un mauvais sous-domaine.
Cas F
L’accès au PCA produit directement :
Code : Tout sélectionner
403
404
500
Not Acceptable
Chaque cas oriente le diagnostic dans une direction différente.
Ne traitez donc pas tous les problèmes d’administration comme un simple « mot de passe oublié ».
2. Sauvegardez avant toute modification directe de la base
La plupart des vérifications de ce guide sont sans danger.
En revanche, si vous devez finalement modifier directement :
Code : Tout sélectionner
phpbb_users
phpbb_config
ou une autre table, effectuez auparavant une sauvegarde de votre base de données.
Ne modifiez jamais les permissions administratives en base simplement pour essayer.
Il faut savoir :
[]quel utilisateur vous modifiez ;
[]pourquoi vous le modifiez ;
[]quelle valeur vous changez ;
[]et comment revenir en arrière.
3. Avez-vous simplement oublié le mot de passe ?
Si le forum fonctionne normalement et que votre seule difficulté est un mot de passe oublié, commencez par la fonction native de récupération de phpBB.
Sur la page de connexion, utilisez :
J’ai oublié mon mot de passe
ou le libellé équivalent de votre langue.
phpBB peut alors vous envoyer la procédure de réinitialisation à l’adresse e-mail associée au compte.
C’est la première méthode à utiliser.
Elle présente plusieurs avantages :
[]elle utilise le mécanisme natif de phpBB ;
[]elle ne nécessite aucune modification SQL ;
[]elle ne modifie pas vos permissions ;
[]elle évite la création d’un compte administrateur temporaire ;elle conserve le fonctionnement normal du système de mots de passe.
Ne cherchez pas immédiatement à remplacer le mot de passe dans phpMyAdmin si la fonction native peut résoudre le problème.
4. Le message de récupération n’arrive pas
Un e-mail de récupération absent ne signifie pas nécessairement que votre compte administrateur est perdu.
Vérifiez :
[]les courriers indésirables ;
[]l’adresse e-mail associée au compte ;
[]le fonctionnement général des e-mails du forum ;
[]la configuration SMTP ;
[]les journaux d’erreurs ;
[]la file d’attente des e-mails.
Essayez également de déterminer si aucun e-mail phpBB ne part ou si seul votre message de récupération manque.
Si l’envoi d’e-mails est défectueux, traitez d’abord ce problème.
Un guide complet est disponible sur phpBB Lab :
phpBB n’envoie plus d’e-mails : comprendre et diagnostiquer les problèmes SMTP
5. Votre mot de passe fonctionne sur le forum mais pas l’accès au PCA
C’est une situation complètement différente.
Si vous pouvez :
[]vous connecter ;
[]lire les forums ;
[]publier ;
[]accéder à votre profil ;
mais pas accéder au PCA, votre mot de passe principal fonctionne.
Ne le réinitialisez donc pas inutilement.
Le problème peut plutôt concerner :
[]vos permissions administratives ;
[]votre appartenance aux groupes ;
[]votre statut Fondateur ;
[]une session spécifique au PCA ;
[]un problème de cookies ;
[]une protection du serveur appliquée au dossierCode : Tout sélectionner
adm/.
6. Le lien vers le PCA a disparu
Le simple fait que le lien vers le panneau d’administration n’apparaisse plus est déjà une information.
Normalement, phpBB n’affiche pas ce lien à un utilisateur qui n’est pas autorisé à accéder au PCA.
Si le lien était présent hier et ne l’est plus aujourd’hui, cherchez notamment :
[]une modification de permissions ;
[]une modification du groupe Administrateurs ;
[]une modification du statut Fondateur ;
[]une restauration de base ancienne ;
[]une extension agissant sur les permissions ;
[]un problème de cache.
Ne concluez pas immédiatement que le fichier :
Code : Tout sélectionner
adm/index.php
a disparu.
Le lien peut simplement ne plus être généré pour votre compte.
7. Entrer directement l’adresse du PCA ne contourne pas les permissions
Un utilisateur peut essayer :
Code : Tout sélectionner
https://example.com/adm/
ou :
Code : Tout sélectionner
https://example.com/adm/index.php
Mais connaître l’adresse du PCA ne donne évidemment pas les droits permettant d’y entrer.
phpBB vérifie l’identité et les permissions de l’utilisateur.
Si votre compte n’est plus autorisé à administrer le forum, saisir manuellement l’URL ne doit pas servir de contournement.
Cela permet néanmoins de distinguer :
[]un lien simplement absent ;
[]un refus de permissions ;
[]une erreur serveur ;
[]une URL incorrecte.
8. Administrateur et Fondateur ne sont pas exactement la même chose
C’est un point important dans phpBB.
Un compte peut posséder des permissions administratives sans être Fondateur.
Le statut Fondateur correspond à un niveau particulier.
Un Fondateur dispose d’un accès administratif complet et certaines opérations sensibles concernant les autres Fondateurs lui sont réservées.
Vous pouvez donc avoir :
Code : Tout sélectionner
Utilisateur enregistré
Administrateur
Fondateur
qui ne sont pas trois mots désignant exactement la même chose.
Une installation devrait conserver au moins un véritable compte Fondateur sous le contrôle du propriétaire ou d’un administrateur totalement fiable.
9. Ne donnez pas le statut Fondateur à tout le monde
Le statut Fondateur donne un pouvoir considérable sur le forum.
Ne l’utilisez pas comme solution de facilité pour régler tous les problèmes de permissions.
Un modérateur n’a pas besoin d’être Fondateur.
Un administrateur chargé d’une petite partie du PCA n’a pas nécessairement besoin d’être Fondateur.
Un compte technique temporaire ne doit pas rester Fondateur indéfiniment.
Utilisez ce statut uniquement pour les personnes qui doivent réellement disposer du niveau d’administration maximal.
10. Vérifiez les permissions avant de toucher à la base
Si un autre Fondateur peut toujours accéder au PCA, utilisez ce compte pour examiner le compte en difficulté.
Vérifiez :
[]son groupe principal ;
[]ses groupes secondaires ;
[]son appartenance au groupe Administrateurs ;
[]ses permissions administratives ;
[]son statut Fondateur ;
[]les éventuelles permissions définies directement sur l’utilisateur.
Utilisez également les outils de traçage des permissions disponibles dans phpBB.
Ils permettent de comprendre pourquoi une permission particulière est accordée ou refusée.
Pour comprendre en profondeur le fonctionnement de ces permissions, consultez :
Comprendre enfin les permissions phpBB : groupes, rôles, Oui, Non et Jamais
11. Vérifiez quels comptes sont réellement Fondateurs
Si vous disposez d’un accès à la base de données, une requête en lecture seule permet de vérifier les comptes possédant le statut Fondateur.
Exemple avec le préfixe standard :
Code : Tout sélectionner
SELECT user_id, username, user_email, user_type
FROM phpbb_users
WHERE user_type = 3;
Cette requête ne modifie rien.
Elle affiche simplement les utilisateurs dont :
Code : Tout sélectionner
user_type = 3
correspond au statut Fondateur.
Sur une installation classique, vous devriez reconnaître chaque compte affiché.
12. Attention au préfixe des tables
Votre base ne s’appelle pas forcément :
Code : Tout sélectionner
phpbb_users
Votre préfixe peut par exemple être :
Code : Tout sélectionner
forum_users
abc_users
p33_users
Le préfixe utilisé est indiqué dans :
Code : Tout sélectionner
config.php
Ne copiez donc jamais aveuglément une requête SQL contenant :
Code : Tout sélectionner
phpbb_
sans vérifier votre installation.
Et si vous consultez
Code : Tout sélectionner
config.php, ne publiez jamais son contenu complet dans un forum de support.
Il contient notamment des informations de connexion à votre base de données.
13. Un compte Fondateur inconnu doit immédiatement vous alerter
Si la requête précédente affiche :
Code : Tout sélectionner
VotreCompte
AutreAdministrateurConnu
CompteInconnu
ne supprimez pas immédiatement le compte inconnu.
Commencez par déterminer :
[]qui l’a créé ;
[]sa date d’inscription ;
[]ses journaux administratifs ;
[]son adresse e-mail ;
[]ses actions ;
[]la date à laquelle il est devenu Fondateur.
Si vous soupçonnez une compromission, préservez les éléments de preuve avant de modifier le système.
Sauvegardez notamment :
[]les fichiers ;
[]la base de données ;
[]les journaux serveur ;
[]les journaux phpBB.
Une compromission éventuelle doit être traitée comme un incident de sécurité, et non comme un simple problème de permissions.
14. « Vous n’avez pas les permissions administratives »
Si phpBB affiche un message indiquant que vous ne possédez pas les permissions permettant d’accéder au PCA, commencez par vérifier votre compte.
Demandez-vous :
[]suis-je toujours dans le groupe Administrateurs ?
[]suis-je encore Fondateur ?
[]un autre administrateur a-t-il modifié mon compte ?
[]une ancienne base a-t-elle été restaurée ?
[]une migration a-t-elle remplacé les données utilisateurs ?
[]une extension agit-elle sur les permissions ?
Si un autre Fondateur existe, la réparation doit idéalement être faite depuis le PCA.
La base de données n’est pas le premier outil de gestion des permissions.
15. Le problème est apparu après une mise à jour phpBB
Après une mise à jour, il est possible que le problème n’ait absolument rien à voir avec vos droits administratifs.
Sur des versions récentes de phpBB 3.3.x, une mauvaise valeur du nom d’hôte peut provoquer des redirections incorrectes au moment de la connexion.
Exemple :
Votre forum est réellement accessible sur :
Code : Tout sélectionner
forum.example.com
mais la configuration contient seulement :
Code : Tout sélectionner
example.com
Le forum peut sembler fonctionner en consultation, puis produire un comportement incorrect lors de certaines redirections.
Si vous disposez de SSH, vous pouvez vérifier la valeur utilisée par phpBB :
Code : Tout sélectionner
php bin/phpbbcli.php config:get server_name
Résultat attendu dans cet exemple :
Code : Tout sélectionner
forum.example.com
et non :
Code : Tout sélectionner
example.com
16. Corriger server_name avec la CLI
Si la valeur est réellement incorrecte, elle peut être modifiée avec :
Code : Tout sélectionner
php bin/phpbbcli.php config:set server_name “forum.example.com”
Puis purgez le cache :
Code : Tout sélectionner
php bin/phpbbcli.php cache:purge
Remplacez évidemment :
Code : Tout sélectionner
forum.example.com
par le véritable nom d’hôte de votre forum.
N’utilisez pas cette commande si votre server_name est déjà correct.
17. Vérifier server_name directement dans la base
Si vous n’avez pas accès à la CLI mais disposez de phpMyAdmin, commencez par une lecture :
Code : Tout sélectionner
SELECT config_name, config_value
FROM phpbb_config
WHERE config_name = ‘server_name’;
Là encore, adaptez :
Code : Tout sélectionner
phpbb_
à votre véritable préfixe.
Ne faites pas directement un
Code : Tout sélectionner
UPDATEavant d’avoir vérifié la valeur actuelle.
18. Redirection vers l’ancien domaine après migration
C’est un problème particulièrement déroutant.
Vous migrez :
Code : Tout sélectionner
ancien.example.com
vers :
Code : Tout sélectionner
nouveau.example.com
La page d’accueil s’affiche correctement sur le nouveau domaine.
Vous cliquez sur connexion.
Et phpBB vous renvoie vers :
Code : Tout sélectionner
ancien.example.com
Le mot de passe n’est probablement pas en cause.
Vérifiez notamment :
[]
Code : Tout sélectionner
server_name;
[]Code : Tout sélectionner
script_path;
[]les paramètres de cookies ;
[]la configuration du serveur Web ;
[]les redirections ;
[]le cache phpBB.
Après une migration, un cache contenant encore l’ancienne configuration peut produire des comportements extrêmement trompeurs.
19. Purgez le cache après une correction de domaine
Si vous corrigez la configuration du domaine, purgez ensuite le cache phpBB.
Avec SSH :
Code : Tout sélectionner
php bin/phpbbcli.php cache:purge
Sans SSH, utilisez la fonction de purge du cache disponible dans le PCA lorsque vous pouvez encore y accéder.
Si vous ne pouvez plus accéder au PCA, une purge manuelle du cache peut être nécessaire selon votre situation.
Ne supprimez cependant pas arbitrairement l’ensemble des dossiers de l’installation.
20. Le formulaire vous reconnecte immédiatement
Un scénario fréquent ressemble à ceci :
Code : Tout sélectionner
Pseudo correct
Mot de passe correct
↓
Connexion
↓
Retour immédiat à la page de connexion
Ce comportement ressemble à un mauvais mot de passe, mais peut en réalité venir d’une session qui ne persiste pas.
Vérifiez notamment :
[]le domaine du cookie ;
[]le chemin du cookie ;
[]l’utilisation de HTTPS ;
[]le cookie sécurisé ;
[]le nom de domaine réellement utilisé ;
[]www contre non-www ;
[]la présence d’un reverse proxy ou CDN ;
[]la cohérence des redirections.
Si votre forum alterne entre :
Code : Tout sélectionner
https://example.com
et :
Code : Tout sélectionner
https://www.example.com
vous pouvez créer des problèmes de cookies et de session si la configuration n’est pas cohérente.
21. SID présent partout dans les URL
phpBB peut ajouter un identifiant de session dans les URL lorsque les cookies ne fonctionnent pas comme prévu.
Vous pouvez voir quelque chose ressemblant à :
Code : Tout sélectionner
sid=xxxxxxxxxxxxxxxxxxxxxxxx
La présence ponctuelle d’un SID n’est pas nécessairement anormale.
Mais si vous voyez un SID ajouté constamment aux liens pendant votre navigation, examinez les cookies.
Cela peut être un indice que votre navigateur ne conserve pas correctement la session attendue.
22. Ne désactivez pas les protections de session pour « réparer » le PCA
Face à des déconnexions, certains administrateurs commencent à désactiver plusieurs protections de sécurité.
C’est une mauvaise méthode.
Ne transformez pas :
Mon PCA ne garde pas ma connexion.
en :
Je vais désactiver toutes les validations de session.
Cherchez d’abord pourquoi la session est instable.
Un domaine incorrect, un proxy mal configuré ou des cookies incohérents doivent être corrigés à leur source.
23. Cloudflare ou reverse proxy peuvent compliquer le diagnostic
Si votre forum se trouve derrière :
[]Cloudflare ;
[]un reverse proxy ;
[]un load balancer ;
[]un proxy fourni par l’hébergeur ;
phpBB peut recevoir une adresse IP ou un protocole différent de celui réellement utilisé par le visiteur.
Une mauvaise restauration de l’adresse IP réelle peut perturber certaines validations de session.
De même, si le navigateur utilise HTTPS mais que phpBB croit recevoir du HTTP derrière un proxy, les cookies et redirections peuvent devenir incohérents.
Avant de modifier phpBB, vérifiez donc également l’architecture située devant lui.
24. Erreur 403 ou « Not Acceptable » dans le PCA
Si vous êtes correctement connecté mais que l’ouverture d’une page du PCA produit :
Code : Tout sélectionner
403 Forbidden
ou :
Code : Tout sélectionner
Not Acceptable
le problème peut provenir du serveur plutôt que de phpBB.
Un pare-feu applicatif comme :
Code : Tout sélectionner
mod_security
peut par exemple bloquer certaines requêtes.
Un WAF, un proxy ou une protection de l’hébergeur peut également intervenir.
Dans ce cas, vérifiez :
[]les logs Apache ou Nginx ;
[]les logs du WAF ;
[]le panneau de votre hébergeur ;
[]les règles de sécurité récemment modifiées.
Ne commencez pas par changer vos permissions administratives si le serveur bloque lui-même la requête.
25. Erreur 404 sur /adm/
Si :
Code : Tout sélectionner
/adm/
renvoie une véritable erreur 404, vérifiez :
[]que le dossier existe ;
[]que votre installation est complète ;
[]que le DocumentRoot pointe vers la bonne installation ;
[]que le forum n’a pas été déplacé dans un autre dossier ;
[]que les règles de réécriture ne capturent pas l’URL ;
[]que votre VirtualHost est correct.
Après une migration, il est possible de consulter le forum servi depuis une installation et d’essayer d’accéder au PCA d’une autre installation à cause d’un mauvais VirtualHost.
Vérifiez donc toujours quelle racine Web est réellement utilisée.
26. Erreur 500 ou page blanche dans le PCA
Une erreur 500 n’est pas une erreur de permissions administratives.
Elle signifie qu’une erreur côté serveur s’est produite pendant le traitement.
Consultez les logs.
Le problème peut venir :
[]de PHP ;
[]d’une extension ;
[]d’un fichier manquant ;
[]d’une erreur de syntaxe ;
[]d’une incompatibilité ;
[]d’un service ;de la base de données.
phpBB Lab propose un guide complet pour ce cas :
Erreur 500 ou page blanche sur phpBB : trouver la vraie erreur et la corriger
27. Vous pouvez vous connecter avec votre compte mais aucun Fondateur n’est disponible
Nous arrivons maintenant aux méthodes de récupération d’urgence.
Cette partie ne doit être utilisée que si :
[]vous êtes réellement propriétaire ou administrateur autorisé de l’installation ;
[]vous avez accès à la base de données ;
[]aucun autre Fondateur ne peut effectuer la réparation dans le PCA ;
[]votre compte utilisateur normal fonctionne toujours ;vous avez effectué une sauvegarde.
Commencez par retrouver précisément votre :
Code : Tout sélectionner
user_id
dans la table utilisateurs.
Utilisez l’identifiant numérique, pas une approximation sur le pseudo.
28. Restaurer temporairement le statut Fondateur d’un compte existant
Si votre compte existe, que vous pouvez vous y connecter mais qu’il a perdu le statut Fondateur, une récupération d’urgence peut consister à rétablir ce statut directement en base.
Exemple :
Code : Tout sélectionner
UPDATE phpbb_users
SET user_type = 3,
user_permissions = ‘’
WHERE user_id = 123;
Remplacez :
Code : Tout sélectionner
123
par votre véritable user_id.
Et remplacez :
Code : Tout sélectionner
phpbb_
si votre installation utilise un autre préfixe.
Le fait de vider :
Code : Tout sélectionner
user_permissions
force phpBB à reconstruire les permissions mises en cache pour cet utilisateur.
Cette requête donne au compte concerné le statut Fondateur, c’est-à-dire le niveau administratif maximal.
Ne l’exécutez jamais sur un compte dont vous n’êtes pas absolument certain.
29. Vérifiez toujours la cible avant l’UPDATE
Avant une requête de modification, effectuez une lecture.
Par exemple :
Code : Tout sélectionner
SELECT user_id, username, user_type
FROM phpbb_users
WHERE user_id = 123;
Vérifiez que le pseudo affiché correspond exactement au compte que vous souhaitez restaurer.
Ensuite seulement, si tout est correct, effectuez l’UPDATE.
Cette habitude évite énormément d’erreurs SQL.
30. Après la restauration d’urgence
Après avoir restauré votre compte :
[]déconnectez-vous si nécessaire ;
[]reconnectez-vous ;
[]accédez au PCA ;
[]vérifiez votre compte ;
[]vérifiez les groupes ;
[]vérifiez les permissions ;
[]vérifiez les autres Fondateurs ;
[]consultez les journaux d’administration.
Puis cherchez la cause du problème initial.
Le fait d’avoir retrouvé l’accès n’explique pas encore pourquoi vous l’aviez perdu.
31. Vérifiez tous les Fondateurs après une récupération
Une fois l’accès restauré, relancez :
Code : Tout sélectionner
SELECT user_id, username, user_email, user_type
FROM phpbb_users
WHERE user_type = 3;
Chaque compte de cette liste doit être connu et justifié.
Un ancien compte de dépannage ne doit pas conserver accidentellement le statut Fondateur pendant plusieurs années.
32. Pourquoi éviter le compte Admin1 avec un mot de passe public
On trouve depuis longtemps sur Internet des procédures de dépannage créant directement en SQL un compte comme :
Code : Tout sélectionner
Admin1
avec un mot de passe prédéfini.
Cette méthode peut fonctionner dans certaines situations, mais elle comporte un danger évident :
les identifiants sont publics et connus de tous.
Si le compte reste présent, même quelques heures de trop, il peut devenir une porte d’entrée extrêmement dangereuse.
Lorsque votre propre compte existe encore et peut se connecter, il est préférable de restaurer précisément ce compte plutôt que de créer inutilement un nouveau Fondateur doté d’identifiants largement connus.
Si vous devez réellement créer un compte de récupération, utilisez une procédure adaptée à votre version phpBB, des identifiants uniques et supprimez immédiatement le compte après réparation.
33. Ne remplacez pas votre mot de passe par une valeur en clair dans la base
Le champ :
Code : Tout sélectionner
user_password
ne doit pas contenir votre mot de passe en clair.
Ne faites jamais :
Code : Tout sélectionner
UPDATE phpbb_users
SET user_password = ‘MonMotDePasse’
WHERE user_id = 123;
Ce n’est pas ainsi que phpBB stocke les mots de passe.
Les mots de passe utilisent un système de hachage.
Évitez également de suivre aveuglément de vieux tutoriels utilisant des méthodes de hachage anciennes sans comprendre leur compatibilité avec votre version de phpBB.
La fonction native de récupération du mot de passe reste la solution à privilégier.
34. Attention aux changements de PHP et aux anciens mots de passe
Après une migration ou une mise à jour importante de PHP, un problème de connexion peut parfois être lié à la disponibilité de l’algorithme utilisé pour vérifier un ancien mot de passe.
Si :
Code : Tout sélectionner
tous les anciens comptes échouent
mais :
Code : Tout sélectionner
les nouveaux comptes fonctionnent
ne réinitialisez pas manuellement les centaines ou milliers de mots de passe.
Cherchez plutôt un problème global.
Vérifiez notamment :
[]la version PHP ;
[]les extensions PHP disponibles ;
[]l’historique de migration de la base ;
[]la longueur du champ de mot de passe si la base provient d’une très ancienne version phpBB ;les erreurs dans les logs.
Un problème affectant tous les anciens membres n’est probablement pas dû à plusieurs milliers d’utilisateurs ayant simultanément oublié leur mot de passe.
35. Attention aux très anciennes bases phpBB
Lors d’une migration depuis une version très ancienne, la structure historique de certaines colonnes peut différer de celle attendue aujourd’hui.
Un champ de mot de passe trop court, par exemple, peut tronquer un hash plus moderne.
Le résultat peut être particulièrement trompeur :
[]la migration semble terminée ;
[]les utilisateurs existent ;
[]les messages existent ;
[]mais les mots de passe ne fonctionnent plus.
Dans ce cas, ne corrigez pas seulement le compte administrateur.
Vérifiez la structure de la base et la procédure complète de migration.
36. Votre compte a-t-il réellement perdu ses droits ?
Il faut distinguer :
Code : Tout sélectionner
Compte sans permission administrateur
et :
Code : Tout sélectionner
Compte administrateur dont la session est cassée
Le premier problème concerne les ACL et éventuellement le statut Fondateur.
Le deuxième concerne plutôt :
[]cookies ;
[]sessions ;
[]domaine ;
[]HTTPS ;
[]proxy ;
[]cache.
Une bonne question à se poser est :
Un autre Fondateur peut-il voir mon compte comme administrateur dans le PCA ?
Si oui, ne touchez pas immédiatement à :
Code : Tout sélectionner
user_type
La permission existe probablement toujours.
37. Le problème existe-t-il avec un autre navigateur ?
Un test avec un autre navigateur peut être utile.
Mais son résultat doit être interprété correctement.
Si :
Code : Tout sélectionner
Navigateur A : connexion impossible
Navigateur B : connexion correcte
le compte et le mot de passe fonctionnent probablement.
Cherchez plutôt :
[]un ancien cookie ;
[]une ancienne redirection mise en cache ;une donnée locale liée à l’ancien domaine.
Ne modifiez pas votre base uniquement parce qu’un navigateur possède encore un ancien cookie.
38. www et non-www doivent être cohérents
Ces deux adresses sont différentes :
Code : Tout sélectionner
https://example.com
et :
Code : Tout sélectionner
https://www.example.com
Vous pouvez choisir l’une ou l’autre.
Mais évitez de laisser le forum passer constamment de l’une à l’autre.
Choisissez une adresse canonique et utilisez une redirection cohérente.
Cela simplifie :
[]les cookies ;
[]les sessions ;
[]le référencement ;
[]les liens ;les connexions.
39. Un problème apparu après migration doit être diagnostiqué comme une migration
Si le PCA fonctionnait sur l’ancien serveur et ne fonctionne plus immédiatement après le déplacement, vérifiez en priorité ce qui a changé.
Par exemple :
Code : Tout sélectionner
Ancien domaine
Nouveau domaine
Ancienne IP
Nouvelle IP
Ancien PHP
Nouveau PHP
Ancien Apache
Nouveau Nginx
Pas de proxy
Nouveau proxy
HTTP
HTTPS
Le compte utilisateur n’a peut-être subi aucune modification.
L’environnement, lui, a changé.
40. Un problème apparu sans aucune modification doit vous rendre plus prudent
Si vous affirmez :
Je n’ai rien modifié et mon compte Fondateur a perdu ses droits.
ne vous contentez pas de remettre :
Code : Tout sélectionner
user_type = 3
et d’oublier l’incident.
Examinez :
[]les journaux administrateur ;
[]les autres Fondateurs ;
[]les extensions récemment mises à jour ;
[]les tâches automatiques ;
[]les modifications effectuées par l’hébergeur ;
[]les accès suspects ;les sauvegardes/restaurations récentes.
Un statut Fondateur ne devrait pas disparaître mystérieusement sans qu’une donnée ait été modifiée quelque part.
41. Ne supprimez jamais le dernier Fondateur sans préparation
Avant :
[]de supprimer un ancien administrateur ;
[]de transférer la propriété du forum ;
[]de désactiver un compte ;
[]de nettoyer d’anciens utilisateurs ;
vérifiez qu’un autre compte Fondateur opérationnel existe réellement.
Testez-le.
Ne vous contentez pas de supposer :
Ce compte est dans le groupe Administrateurs, donc tout ira bien.
Connectez-vous réellement avec le compte de secours autorisé et vérifiez qu’il peut accéder au PCA.
42. Bonnes pratiques pour éviter de perdre totalement l’administration
Quelques précautions simples peuvent éviter une situation difficile.
[]Conservez au moins un compte Fondateur parfaitement identifié.
[]Utilisez une adresse e-mail administrateur réellement accessible.
[]Vérifiez périodiquement l’envoi des e-mails.
[]Utilisez un mot de passe unique et robuste.
[]Conservez vos accès d’hébergement et de base de données séparément.
[]Sauvegardez régulièrement la base et les fichiers.
[]Testez vos sauvegardes.
[]Ne donnez pas le statut Fondateur inutilement.
[]Consultez les journaux après une modification sensible.
[]Vérifiez la configuration du domaine avant et après une migration.
43. Diagnostic rapide selon le symptôme
Mot de passe oublié
Code : Tout sélectionner
Utiliser d’abord la récupération native phpBB
↓
Vérifier la réception des e-mails
Connexion au forum OK mais lien PCA absent
Code : Tout sélectionner
Permissions
Groupe Administrateurs
Statut Fondateur
Message « pas de permissions administratives »
Code : Tout sélectionner
ACL administrateur
Statut Fondateur
Restauration de base
Permissions utilisateur
Retour permanent à la page de connexion
Code : Tout sélectionner
Cookies
Sessions
Domaine
HTTPS
Proxy
Redirection vers ancien domaine
Code : Tout sélectionner
server_name
script_path
cookies
cache
redirections serveur
403 ou Not Acceptable
Code : Tout sélectionner
WAF
mod_security
hébergeur
serveur Web
404
Code : Tout sélectionner
DocumentRoot
dossier adm/
migration des fichiers
VirtualHost
réécriture URL
500 ou page blanche
Code : Tout sélectionner
logs PHP
logs serveur
extension
fichiers
base
44. Informations à fournir lorsque vous demandez de l’aide
Indiquez précisément :
Code : Tout sélectionner
Version phpBB :
Version PHP :
MariaDB/MySQL :
Hébergement mutualisé/VPS/dédié :
Date d’apparition du problème :
Dernière modification effectuée :
Puis :
Code : Tout sélectionner
Connexion au forum : oui/non
Lien PCA visible : oui/non
Accès PCA : oui/non
Mot de passe oublié : oui/non
Récupération par e-mail : fonctionne/ne fonctionne pas
Précisez également le message exact :
Code : Tout sélectionner
Mot de passe incorrect
Permissions administratives absentes
Formulaire invalide
403
404
500
Boucle de connexion
Redirection vers un autre domaine
Autre :
Si vous avez migré :
Code : Tout sélectionner
Ancien domaine :
Nouveau domaine :
Ancienne version PHP :
Nouvelle version PHP :
Si vous avez accès à SSH :
Code : Tout sélectionner
Résultat de :
php bin/phpbbcli.php config:get server_name
Si vous avez vérifié les Fondateurs :
Code : Tout sélectionner
Nombre de comptes user_type = 3 :
Vous pouvez communiquer les pseudos si nécessaire.
Ne communiquez jamais :
[]le mot de passe du Fondateur ;
[]le mot de passe MariaDB/MySQL ;
[]le contenu complet deCode : Tout sélectionner
config.php;
[]un cookie de session ;
[]une clé privée ;
[]un mot de passe FTP ;
[]un mot de passe SSH ;
[]un jeton secret.
45. Checklist avant de modifier la base
[]J’ai identifié précisément le symptôme.
[]J’ai vérifié si ma connexion normale fonctionne.
[]J’ai essayé la récupération native du mot de passe si nécessaire.
[]J’ai vérifié les e-mails.
[]J’ai vérifié les cookies et le domaine si je suis déconnecté en boucle.
[]J’ai vérifiéCode : Tout sélectionner
server_nameaprès une migration ou mise à jour.
[]J’ai purgé le cache après une correction de domaine.
[]J’ai demandé à un autre Fondateur de vérifier mes droits lorsque c’est possible.
[]J’ai consulté les permissions.
[]J’ai consulté les journaux.
[]J’ai identifié les comptes Fondateurs.
[]J’ai effectué une sauvegarde de la base.
[]Je connais exactement monCode : Tout sélectionner
user_id.
[]Je n’ai pas créé un compte de secours avec un mot de passe public.Je n’ai pas mis de mot de passe en clair dans la base.
À retenir
Perdre l’accès au PCA phpBB ne signifie pas automatiquement que le mot de passe administrateur est incorrect.
Commencez toujours par déterminer :
Code : Tout sélectionner
Puis-je me connecter au forum ?
Le lien PCA est-il visible ?
Quel message exact est affiché ?
Le problème est-il apparu après une migration ?
Le domaine a-t-il changé ?
PHP a-t-il changé ?
Mes permissions ont-elles réellement disparu ?
Puis suivez une progression logique :
Code : Tout sélectionner
Mot de passe
↓
E-mail de récupération
↓
Cookies et sessions
↓
Domaine et server_name
↓
Permissions administratives
↓
Statut Fondateur
↓
Serveur / WAF / logs
↓
Base de données en dernier recours
Retenez surtout :
un problème de session ne se corrige pas en modifiant les permissions ;
un problème de permissions ne se corrige pas en réinitialisant inutilement le mot de passe ;
une erreur 500 ne se corrige pas en créant un nouvel administrateur ;
et une redirection vers un ancien domaine ne signifie pas que votre compte est perdu.
Si une récupération directe en base devient réellement nécessaire, sauvegardez d’abord, ciblez précisément votre compte par son
Code : Tout sélectionner
user_idet n’accordez jamais le statut Fondateur à un utilisateur que vous n’avez pas formellement identifié.
Le but n’est pas simplement de retrouver le PCA.
Le véritable objectif est de comprendre pourquoi l’accès a été perdu, afin que le problème ne se reproduise pas.