Aller au contenu
TubePress — gratuit, auto-hébergé & activement maintenu
Utilisateurs et administration

Sécurité

Authentification à deux facteurs, captcha, URL d’administration personnalisée, vérification d’âge et durcissement.

TubePress est sécurisé par défaut — protection CSRF sur chaque formulaire, limitation du débit sur les actions sensibles, hachage moderne des mots de passe et régénération de session sont tous intégrés. En plus de cette base, quelques contrôles vous permettent de verrouiller l'administration de manière rigoureuse.

Cette page décrit l'authentification à deux facteurs, le CAPTCHA, le déplacement de la connexion d'administration vers une URL secrète, la vérification d'âge, la sécurité du transport, et se termine par une liste de vérification de renforcement. La plupart de ces options se trouvent sous Paramètres → Sécurité.

Vue d'ensemble de la sécurité

La sécurité est en couches : aucun contrôle seul n'est suffisant, mais ensemble ils font de votre site une cible difficile. Les contrôles que vous gérez depuis les paramètres de Sécurité sont :

  • Authentification à deux facteurs — un code à usage unique lors de la connexion à l'administration.
  • CAPTCHA — empêche les bots d'accéder à vos formulaires publics.
  • Une URL d'administration personnalisée — masque la connexion aux scanners.

En dessous, le framework hache déjà les mots de passe avec Argon2id (ou bcrypt lorsque Argon2 n'est pas disponible), valide un token CSRF sur chaque requête modifiant l'état, régénère la session à la connexion, et limite les tentatives répétées de connexion, d'inscription et de réinitialisation de mot de passe.

Authentification à deux facteurs

L'authentification à deux facteurs (2FA) ajoute un code à usage unique basé sur le temps (TOTP) à la connexion d'administration, de sorte qu'un mot de passe volé seul ne suffit pas pour entrer. Elle fonctionne avec Google Authenticator, Authy, 1Password ou toute application compatible TOTP.

Pour s'inscrire, ouvrez Paramètres → Sécurité et :

  1. Cliquez sur Activer la 2FA pour générer un secret.
  2. Scannez le code QR avec votre application d'authentification, ou saisissez la clé affichée manuellement.
  3. Saisissez le code à 6 chiffres actuel pour vérifier et activer la 2FA.

Le secret est stocké sur votre compte individuel, donc chaque administrateur s'inscrit pour le sien. La désactivation de la 2FA ultérieurement nécessite un code actuel, et la porte est à sécurité fermée : une fois qu'un code est défini, le panneau d'administration l'exige à l'entrée même si vous vous êtes authentifié via le formulaire de connexion public.

Conservez une copie de la clé. Stockez la clé secrète (affichée à côté du code QR) dans votre gestionnaire de mots de passe lors de l'inscription. Si vous perdez votre téléphone, cette clé vous permet de réajouter le compte à un nouvel authentificateur.

CAPTCHA

Un CAPTCHA empêche l'utilisation abusive automatisée de vos formulaires publics. Choisissez un fournisseur dans Paramètres → Sécurité :

Désactivé
Aucun CAPTCHA.
Google reCAPTCHA
Soit v2 (la case à cocher « Je ne suis pas un robot ») soit v3 (invisible, basé sur un score).
Cloudflare Turnstile
Gratuit et respectueux de la vie privée, sans puzzles — la plupart des visiteurs passent de manière invisible.

Collez la clé de site et la clé secrète du fournisseur, choisissez un thème de widget clair ou sombre, puis sélectionnez les formulaires à protéger — Inscription, Commentaires et le Formulaire de contact peuvent chacun être activés indépendamment et sont activés par défaut une fois un fournisseur défini. Le CAPTCHA se cumule avec la suite anti-spam des commentaires décrite dans Commentaires.

La connexion d'administration n'est pas protégée par CAPTCHA. Le formulaire de connexion est protégé par la limitation du débit à la place — les tentatives échouées répétées sont limitées. Le CAPTCHA couvre les formulaires d'inscription, de commentaire et de contact accessibles aux visiteurs.

Une URL d'administration personnalisée

Les scanners automatisés frappent les chemins bien connus comme /admin/login. Vous pouvez déplacer le formulaire de connexion vers un slug secret afin que ces sondes ne trouvent rien. Dans Paramètres → Sécurité, définissez un slug de connexion personnalisé (3 à 50 caractères, lettres minuscules, chiffres et tirets). Votre connexion se trouve alors à /your-secret-slug au lieu de /admin/login ; le tableau de bord lui-même reste à /admin, toujours protégé par l'authentification.

Mettez-le en favori, ou vous vous bloquerez. Tant qu'un slug personnalisé est actif, le /admin/login par défaut ne fonctionne plus. Il s'agit d'une sécurité par l'obscurité — ce n'est pas un substitut à un mot de passe fort et à la 2FA. Si vous oubliez le slug, effacez-le directement dans la base de données : DELETE FROM settings WHERE setting_key='admin_login_slug'.

Vérification d'âge

Pour les sites pour adultes, le plugin Age Gate intégré affiche un écran de vérification d'âge en plein écran devant votre contenu, avec plusieurs modes de vérification, un méta-tag RTA optionnel, et des liens vers vos pages Conditions générales, 2257 et Confidentialité. Il est activé et configuré depuis /admin/plugins.

Parce qu'il fait partie de votre configuration de modération et de conformité, le guide complet se trouve sur la page Modération.

HTTPS & en-têtes

Servez toujours votre site via HTTPS — il protège les mots de passe et les cookies de session en transit. Un certificat gratuit de Let's Encrypt (Certbot) suffit. Si le TLS est terminé en amont au niveau d'un proxy ou d'un équilibreur de charge, transmettez le schéma (par exemple un en-tête X-Forwarded-Proto) pour que l'application sache que la requête est sécurisée.

Pour la production, désactivez également display_errors de PHP (afin que les traces de pile n'atteignent jamais les visiteurs) et expose_php (afin que la version ne soit pas divulguée). Le contrôle de santé signale ces trois éléments pour vous.

Liste de vérification du renforcement

Parcourez cette liste avant — et périodiquement après — votre mise en ligne :

  1. Définissez un mot de passe administrateur long et unique.
  2. Inscrivez la 2FA sur chaque compte du personnel.
  3. Déplacez la connexion vers une URL d'administration personnalisée.
  4. Activez un CAPTCHA sur l'inscription, les commentaires et le contact.
  5. Servez tout via HTTPS.
  6. Désactivez display_errors et expose_php.
  7. Donnez au personnel le rôle minimal dont il a besoin — préférez modérateur à administrateur.
  8. Gardez PHP et TubePress à jour, et effectuez des sauvegardes régulières.

Prochaines étapes

Toujours bloqué ?

Ouvrez un ticket depuis votre tableau de bord et notre équipe vous assistera.

Essayer la démo en direct → Télécharger TubePress →