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
Pré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
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.
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
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
A ce stade il ne vous reste plus qu'à valider la mise à jour du 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.

Ce(tte) œuvre est mise à disposition selon les termes de la Licence Creative Commons Attribution - Pas d'Utilisation Commerciale - Pas de Modification 4.0 International.