securityNous allons vous expliquer comment déplacer le dossier logs d'une installation antérieure à Joomla! 3.6.0. Mais comment faire ?

Si vous avez mis en production votre site à partir de la version 3.6.0, ce tutoriel ne vous sera pas d'une grande utilité mais pour tous commençons par quelques explications techniques.

Joomla! 3.6.0 nous a apporté beaucoup de nouveautés dont l'installation des journaux (logs) dans le dossier administrator par défaut, le but principal était d'augmenter la compatibilité avec certaines configurations d'hébergement.

Cette fonctionnalité n'a été que peu abordée en terme de sécurité et pourtant on doit s'y intéresser.

Que contient le dossier logs (par défaut) ?

index.html

ce fichier sert à empêcher le listing du dossier.

error.php

logs error

Ce fichier piste les connexions échouées, les tentatives d’intrusion et vous informe d'actions qui peuvent poser problème.

joomla_update.php

logs joomla update

Ce fichier stocke l’historique de vos mises à jours de Joomla.

Seul les trois fichiers ci-dessus font partie intégrante d'une installation de base Joomla, mise à jour au moins une fois, vous pouvez donc supprimer les autres qui ne vous seront d'aucune utilité suite au déplacement dans le dossier /administratror d'autant plus si vous avez protégé ce dernier avec un couple htaccess+htapsswd.

Pour les utilisateurs averti on peut certes aller plus loin en déplaçant ce dossier à un niveau supérieur, mais encore faut-il que l'hébergement soit adapté pour le faire.

Ce tutoriel est une base pour avoir une structure identique à une installation que nous propose par défaut Joomla! depuis la première version 3.6, une mise à jour ne fera pas la modification à votre place.

Comment procéder ?

Vous avez deux possibilités:

En local, récupérez via votre client de FTP le dossier complet /logs et le fichier configuration.php qui se trouvent à la racine de votre site.

Avec votre éditeur de texte (qui gère l'encodage en UTF8 sans BOM) il vous faut faire une modification dans le fichier configuration.php

Recherchez la ligne

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

Et la modifier comme ci-dessous:

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

Transférez le dossier /logs dans le dossier /administrator (vérifier que le transfert contient les trois fichiers)

Pour finir, vous transférez votre fichier configuration.php à la racine de votre site, en n'oubliant pas de lui attribuer des droits pour en interdire l'écriture (CHMOD 444)

Seconde possibilité:

Faire le transfert du dossier /logs comme expliqué ci-dessus

Connectez-vous à votre administration Joomla, puis rendez-vous sur l'onglet Système de la Configuration pour éditer la ligne Dossier 'logs'

logs configuration administration

Dès les modifications réalisées, n'oubliez pas de supprimer le dossier /logs présent à la racine de votre site.

Et le robots.txt ?

Vu que le dossier /logs ne sera plus présent à la base de votre site, vous pouvez aussi éditer (conseillé) le fichier robots.txt présent à la base de votre installation en supprimant la ligne suivante:

Disallow: /logs/

A propos de l'auteur
Stéphane Bourderiou
Nom: Stéphane Bourderiou
Fondateur des sites Aide-joomla.fr et SFK
Derniers articles de l'auteur