Dans ce tutoriel nous allons vous faire découvrir une des fonctionnalités que l'on peut ajouter au script  de protection CrawlProtect  avec l'ajout de la gestion des URLs explicites (SEF) native sous Joomla!.

Plébiscité sur de nombreux sites de support, ce script est relativement aisé à prendre en main avec notre CMS dès que l'on souhaite ajouter un bon niveau de protection.

Bien que d'une efficacité redoutable sur la plupart des attaques, ce script ne doit pas vous affranchir d'une mise à jour régulière de vos extensions et de votre version de Joomla!

Ce produit français gratuit est le fruit du développement de Jean-Denis Brun, qui est aussi l'éditeur de Crawltrack que nous aborderons dans un prochain article.

Introduction sur CrawlProtect

logo_crawlprotectPrésentation de l'éditeur

CrawlProtect a été développé suite à la demande d'utilisateurs de CrawlTrack qui n'étaient pas intéressés par les statistiques fournies par CrawlTrack mais uniquement par ses fonctions anti-hacking. Donc CrawlProtect ne fait que de la protection et ne vous fourniras pas de statistiques sur vos visiteurs ni les robots. La protection est faites au niveau d'Apache à l'aide d'un fichier .htaccess qui fournit une protection encore plus poussée que celle de CrawlTrack. Les deux scripts peuvent parfaitement cohabiter pour vous fournir une protection optimum.

Télécharger la dernière version de Crawlprotect

Installation et documentation

install crawlprotect

 Présentation des fonctions de protection

Le premier niveau de protection  proposé par Crawlprotect

  • Bloquage des tentatives d'injection de code
  • Bloquage des tentatives d'injection SQL
  • Bloquage des visites de robots connus comme étant des "Badbots" (robots utilisés par les hackers)
  • Bloquage des aspirateurs de site
  • Bloquage des tentatives d'éxécution de commande shell

Le deuxième niveau de protection  vous permettra d'ajouter le niveau de chmod le plus adapté sur vos fichiers et répertoires.

Bien que cette partie ne soit pas obligatoire pour le fonctionnement de Crawlprotect, nous vous conseillons vivement d'y prêter attention.

Pour bien comprendre le principe des chmods et les enjeux sur la sécurité d'un site, nous vous conseillons la lecture de cet article de Nicholas K. Dionysopoulos : 777, le numéro du démon et notre tutoriel sur ce sujet : Chmods - Les droits des fichiers

 Mise à jour du htaccess avec les paramètres SEF de Joomla!

Pour la suite de ce tutoriel nous partirons du principe que votre installation est finalisée et que le htaccess généré par Crawlprotect est en place.

fonction htaccess

 Connectez-vous à l'administration de votre installation et cliquez sur l'onglet Créer ou mettre à jour le htaccess.

La fenêtre qui nous intéresse se trouve au bas de cette page

maj htaccess

 

 Les lignes que nous souhaitons ajouter sont présentes dans le fichier htaccess.txt que vous trouverez dans l'archive Joomla.

Si vous voulez éviter de modifier plusieurs fois la configuration du fichier que nous souhaitons mettre en place, consulter cet article : Gérer l'URL Rewritting avec Joomla!

Ci-dessous les lignes concernées que nous allons donc intégrer au htaccess en place

##
# Uncomment following line if your webserver's URL
# is not directly related to physical file paths.
# Update Your Joomla! Directory (just / for root).
##
# RewriteBase /
## Begin - Joomla! core SEF Section.
#
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
#
# If the requested path and file is not /index.php and the request
# has not already been internally rewritten to the index.php script
RewriteCond %{REQUEST_URI} !^/index\.php
# and the request is for something within the component folder,
# or for the site root, or for an extensionless URL, or the
# requested URL ends with one of the listed extensions
RewriteCond %{REQUEST_URI} /component/|(/[^.]*|\.(php|html?|feed|pdf|vcf|raw))$ [NC]
# and the requested path and file doesn't directly match a physical file
RewriteCond %{REQUEST_FILENAME} !-f
# and the requested path and file doesn't directly match a physical folder
RewriteCond %{REQUEST_FILENAME} !-d
# internally rewrite the request to the index.php script
RewriteRule .* index.php [L]
#
## End - Joomla! core SEF Section.

 Ajoutez par un copié/coller les lignes ci-dessus dans la fenêtre suivante et cliquez sur Créer mon fichier .htaccess

maj htaccess

A ce stade il ne vous reste plus qu'à valider la mise à jour du htaccess.

mise en place htaccess

Si tout c'est bien déroulé votre fichier htaccess a bien été modifié pour être compatible avec la réécriture des urls natives fournit par Joomla.

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