aesecure visual

securityNous allons vous expliquer comment restreindre l'accès à l'administration de votre site. Mais comment faire ?

Vous avez la possibilité d'installer l'un des nombreux plugins disponibles sur cette page du JED ou suivre la suite de notre tutoriel et ses avantages.

  • Pas besoin de mise à jour une fois le système de protection installé, donc toujours sécurisé et en plus c'est gratuit!
  • Pas de requête au niveau de votre base de données, certains plugins génèrent beaucoup de requêtes pour leurs fonctionnements (une charge supplémentaire pour un serveur)

Avec deux fichiers, un couple identifiant/mot de passe et sur un serveur Apache on bloque facilement l'accès à cette partie sensible de Joomla!

Donc "Pourquoi faire compliqué quand on peut faire simple ?"

Les opérations de ce tutoriel peuvent être réalisées directement en ligne (si vous êtes sûr de ce que vous faites), mais nous vous conseillons toutefois d'être prudent et de travailler en local.

Avec éditeur de texte du type Notepad++ créez un fichier .htaccess (ou éditez celui présent dans votre répertoire administrator) et insérez-y ces quelques lignes

AuthType Basic
AuthName "Administration Joomla"
AuthUserFile /full/path/to/joomla/administrator/.htpasswd
require valid-user
ErrorDocument 401 "Authorisation Required"

Pour compléter correctement la ligne AuthUserFile, vous pouvez vous aider de l'information présente dans le fichier configuration.php (stocké à la racine de votre site)

public $log_path = '/full/path/to/joomla/administrator/logs';

Il est possible de récupérer ce chemin absolu via votre administration dans la configuration globale, prenez des précautions pour ne pas modifier les paramètres et rendre votre site inaccessible.

Créez ensuite un fichier .htpasswd vide, où sera stocké l'identifiant et le mot de passe crypté de l'utilisateur.

On peut effectivement utiliser un mot de passe non crypté, cela fonctionnera mais réduira fortement le niveau de sécurité.

Un exemple: (à ne surtout pas utiliser, mais malheureusement cela existe encore!)

Utilisateur = admin   Mot de passe = password

admin:$apr1$.lQ8Cmu9$S8tOT80v516IIhnFs5FzD/ 

Si vous souhaitez autoriser une autre personne, ajouter son nom d'utilisateur et son mot de passe crypté sur une nouvelle ligne.

Vos fichiers sont créés, à l'aide de votre client de FTP vous allez transférer les deux fichiers dans le répertoire administrator

 Si toutes les opérations se sont bien déroulées lors de la connexion à votre administration vous aurez une nouvelle fenêtre de connexion. si ce n'est pas le cas ou si vous obtenez une page blanche (erreur 500) c'est qu'il y a un ou plusieurs paramètres mal configuré.

Pour reprendre la main sur votre accès, supprimer simplement les fichiers et reprenez-les en local pour trouver ce qui pose problème.

En cas de succès, pensez à appliquer sur les fichiers des droits plus restrictifs (conseillé) en interdisant l'écriture sur ces derniers (CHMOD en 444)

Outils de génération de htpasswd en ligne

Htaccesstools.com

Un générateur des plus simples qui va à l'essentiel.

htpasswd generator

Une fois créé un copié/collé dans votre éditeur

htpasswd generator create

Accéder à l'outil en ligne

Aspirine.org

Ce service en ligne propose plus de réglages, mais attention! Ne faites pas n'importe quoi !

htpasswd aspirine org

L'une des options intéressantes est le générateur de mots de passe aléatoire et celle qui vous propose de tester le niveau de sécurité de votre mot de passe.

test de force

Une fois créé un copié/collé dans votre éditeur

Accéder à l'outil en ligne

A propos de l'auteur
Stéphane Bourderiou
Nom: Stéphane BourderiouSite Web: https://www.aide-joomla.fr
Fondateur et rédacteur en chef - Fondateur du site SFK
Webmaster en perpétuelle recherche
Derniers articles de l'auteur

Liste des participants qui ont commenté cet article

  • Je plussoie : ce type de protection est idéale et très forte pour protéger l'accès à un dossier sensible tel que /administrator. Et en outre, comme mentionné, assez simple à mettre en place et intemporelle : une fois placée, cette protection restera valable des années durant.

    Pour connaître l'emplacement exact à mettre dans le .htaccess, tu as mentionné l'astuce du dossier logs; bien vu. Perso, je crée parfois un petit script php qui fait juste

    
    <?php
    echo __DIR__;
    

    qui me donne alors le nom complet du dossier; le résultat étant le même.

    Pour l'erreur 500, juste préciser que ce type d'erreur arrive uniquement lorsque le fichier .htaccess est incorrect : lorsqu'il y a une erreur de frappe (il faut *scrupuleusement* utiliser la syntaxe que tu as donnée) ou lorsque l'encodage est mauvais (il faut sauver le fichier en UTF8-NoBOM; cela se règle dans le menu Encoding de l'éditeur).

    Chouette tuto.

Ajouter un commentaire