Meilleurs extraits .htaccess pour améliorer la sécurité de WordPress

La sécurité WordPress est l’un des facteurs les plus fragilisés parmi les blogueurs débutants. Dans une installation WordPress non supervisée, il existe un certain nombre de vulnérabilités potentielles qui sont laissées sans surveillance. La plupart des didacticiels d’installation de WordPress expliquent un moyen rapide et facile de déployer WordPress en quelques minutes. Mais ils oublient quelques facteurs de sécurité importants. Par exemple, la navigation dans les répertoires et l’utilisation du nom d’utilisateur «admin» sont considérées comme de graves failles de sécurité. Aujourd’hui, nous allons examiner 10 extraits de code .htaccess qui aideront à améliorer la sécurité de votre blog WordPress. Avant de commencer, examinons rapidement le fichier htaccess.


Qu’est-ce que le fichier .htaccess?

Un fichier htaccess est un fichier de configuration facultatif que le serveur Web Apache doit interpréter, pour chaque répertoire. Vous pouvez stocker divers paramètres dans ce fichier tels que: protéger par mot de passe un répertoire, bloquer les adresses IP, bloquer un fichier ou un dossier d’accès public, etc. Traditionnellement, le fichier .htaccess est présent dans le répertoire d’installation de base de WordPress. Il stocke la structure de permalien par défaut.

POINTE: Avant de commencer le didacticiel, assurez-vous de sauvegarder le fichier .htaccess actuel (le cas échéant) dans un service de stockage cloud comme Dropbox. Il s’agit de revenir au dernier fichier .htaccess de travail connu, si un certain extrait de code casse votre site. Commençons.

1. Bloquer les Bad Bots

mauvais bots

L’une des meilleures utilisations du fichier .htaccess est sa capacité à empêcher plusieurs adresses IP d’accéder à votre site. Cela est utile lors du blocage de spammeurs connus et d’autres origines d’accès suspect ou malveillant. Le code est:

# Bloquer une ou plusieurs adresses IP.
# Remplacez IP_ADDRESS_ * par l'IP que vous souhaitez bloquer


autoriser, refuser
refuser à IP_ADDRESS_1
refuser à IP_ADDRESS_2
permettre à tous

Où IP_ADDRESS_1 est la première IP que vous souhaitez empêcher d’accéder à votre site. Vous pouvez ajouter autant d’adresses IP que vous le souhaitez. Quels que soient les agents utilisateurs (navigateurs) que ces adresses IP utilisent, ils ne pourront pas accéder à un seul fichier à partir de votre serveur. Le serveur Web refusera automatiquement tout accès.

2. Désactiver la navigation dans l’annuaire

wordpress htaccess pirater désactiver la navigation dans les répertoires

C’est l’une des failles de sécurité les plus minées d’un site WordPress. Par défaut, le serveur Web Apache active la navigation dans les répertoires. Cela signifie que tous les fichiers et dossiers à l’intérieur du répertoire racine (parfois appelé répertoire personnel) du serveur Web peuvent être enrôlés et accessibles par un visiteur. Vous ne voulez pas cela parce que vous ne voulez pas que les gens parcourent vos téléchargements multimédias ou vos fichiers de thème ou de plugin.

Si je choisis au hasard 10 sites Web personnels ou professionnels exécutant WordPress, la navigation dans les répertoires ne sera pas désactivée pour 6 à 8 d’entre eux. Ceci permet n’importe qui pour renifler facilement autour de la wp-content / uploads dossier ou tout autre répertoire qui n’a pas la valeur par défaut index.php fichier. En fait, la capture d’écran que vous voyez provient d’un des sites de mon client, avant que je recommande la correction. Extrait de code pour désactiver la navigation dans les répertoires:

# Désactiver la navigation dans les répertoires
Options Tous -Indexes

3. Autoriser uniquement les fichiers sélectionnés à partir de wp-content

shutterstock_108312266

Comme vous le savez, contenu wp dossier contient le plus de vos thèmes, plugins et tous les téléchargements de médias. Vous ne voulez certainement pas que les gens y accèdent sans restrictions. En plus de désactiver la navigation dans les répertoires, vous pouvez également refuser l’accès à tous les types de fichiers, en enregistrer quelques-uns. En substance, vous pouvez débloquer sélectivement des fichiers comme JPG, PDF, DOCX, CSS, JS, etc. et refuser le reste. Pour ce faire, collez cet extrait de code dans votre fichier .htaccess:

# Désactivez l'accès à tous les types de fichiers à l'exception des suivants
Ordonner refuser, autoriser
Refuser de tout

Autoriser de tous

Vous devez créer un nouveau fichier .htaccess avec le code et le coller dans le contenu wp dossier. Ne placez pas cela dans le répertoire d’installation de base, sinon cela ne fonctionnera pas. Vous pouvez également ajouter n’importe quel type de fichier à la liste en ajoutant un «|» après «rar». La liste ci-dessus contient les fichiers nécessaires – XML, CSS et JavaScript, les formats courants d’images et de documents et enfin les formats d’archives les plus utilisés.

4. Restreindre tout accès à wp-includes

shutterstock_135573032

le dossier wp-includes contient uniquement les fichiers qui sont strictement nécessaires pour exécuter la version principale de WordPress – un sans plugins ni thèmes. N’oubliez pas que le thème par défaut réside toujours dans le contenu / thème wp annuaire. Ainsi, aucun visiteur (y compris vous) ne devrait avoir besoin d’accéder au contenu du wp-include dossier. Vous pouvez désactiver l’accès à l’aide de l’extrait de code suivant:

# Bloquer le dossier et les fichiers wp-includes

RewriteEngine On
RewriteBase /
RewriteRule ^ wp-admin / inclut / - [F, L]
RewriteRule! ^ Wp-includes / - [S = 3]
RewriteRule ^ wp-includes / [^ /] + \. Php $ - [F, L]
RewriteRule ^ wp-includes / js / tinymce / langs /.+ \. Php - [F, L]
RewriteRule ^ wp-includes / theme-compat / - [F, L]

5. Autoriser uniquement les adresses IP sélectionnées à accéder à wp-admin

shutterstock_140373169

le wp-admin dossier contient les fichiers requis pour exécuter le tableau de bord WordPress. Dans la plupart des cas, vos visiteurs n’ont pas besoin d’accéder au tableau de bord WordPress, sauf s’ils souhaitent créer un compte. Une bonne mesure de sécurité consiste à n’autoriser que quelques adresses IP sélectionnées à accéder au wp-admin dossier. Vous pouvez autoriser les adresses IP des personnes qui ont besoin d’accéder au tableau de bord WordPress – éditeurs, contributeurs et autres administrateurs. Cet extrait de code permet uniquement aux adresses IP fixes d’accéder au wp-admin dossier et refuse l’accès au reste du monde.

# Limiter les connexions et l'administrateur par IP

ordre refuser, autoriser
nier de tout
permettre à partir de 302.143.54.102
autoriser depuis IP_ADDRESS_2

Assurez-vous de créer un nouveau fichier .htaccess et de le coller dans le dossier wp-admin et non dans le répertoire d’installation de base. S’il s’agit de ce dernier, personne d’autre que vous ne pourra parcourir votre site – pas même les moteurs de recherche! Vous ne voulez certainement pas cela. Quelques inconvénients de cette mesure sont les suivants:

  • Si votre site autorise ou promeut Enregistrement d’un nouvel utilisateur, il serait presque impossible de garder une trace du nombre d’utilisateurs. Par exemple sur WPExplorer, si vous voulez télécharger nos super thèmes gratuits, vous devez vous inscrire.
  • Gens avec adresses IP dynamiques (la plupart des utilisateurs ADSL à large bande utilisant des protocoles PPP ou PPPoE) ont leurs adresses IP changées, chaque fois qu’ils se déconnectent et se connectent à leur FAI. Il serait certainement impossible de garder une trace de toutes ces adresses IP et de les ajouter au fichier htaccess.
  • Le haut débit mobile: Que vous soyez en 3G ou 4G, votre adresse IP dépend de la tour cellulaire actuelle à laquelle vous êtes connecté. Supposons que vous voyagez – votre adresse IP changera constamment à chaque kilomètre parcouru depuis l’origine. Encore une fois, garder une trace du fichier htaccess est presque impossible.
  • Hotspots Wi-Fi publics: L’utilisation d’informations d’identification lorsqu’il est connecté à Internet à l’aide d’un point d’accès Wi-Fi public est un gros non, car un enfant avec un petit logiciel peut extraire chaque caractère que vous tapez. Sans oublier que chaque point d’accès Wi-Fi aura une adresse IP unique.

Heureusement, tous ces inconvénients (sauf le premier) peuvent être corrigés en utilisant un VPN. Si vous configurez votre VPN pour qu’il se connecte en utilisant une seule adresse IP, vous pouvez simplement l’ajouter à votre fichier htaccess et tous vos problèmes seront résolus.

6. Protégez wp-config.php et .htaccess de tout le monde

wordpress-ecommerce-security-shopping-tips

le wp-config.php Le fichier contient les informations d’identification d’accès les plus sensibles de votre site WordPress. Il contient le nom de la base de données et les informations d’identification d’accès et diverses autres données critiques, entre autres paramètres. Vous ne souhaitez en aucun cas que d’autres personnes consultent ce fichier. Et bien sûr, vous voulez désactiver l’accès public à la source de toute cette sécurité – le .htaccess fichier lui-même. Vous pouvez désactiver l’accès à wp-config.php avec ce code suivant:

# Refuser l'accès au fichier wp-config.php

autoriser, refuser
nier de tout

Pour refuser l’accès à tous les fichiers htaccess (rappelez-vous que certains peuvent résider dans le dossier wp-admin et d’autres dossiers), utilisez cet extrait de code:

# Refuser l'accès à tous les fichiers .htaccess

autoriser, refuser
nier de tout
satisfaire tous

7. Refuser le raccourci d’image

liaison d'images

L’un des hacks de fichiers .htaccess les plus cool, celui-ci envoie des grattoirs de contenu en cours d’exécution avec leur queue entre leurs jambes. Lorsque quelqu’un utilise l’image de votre site, votre bande passante est consommée et la plupart du temps, vous n’en êtes même pas crédité. Cet extrait de code élimine ce problème et envoie cette image lorsqu’un lien dynamique est détecté.

# Empêche le script de liaison d'images. Remplacez la dernière URL par le lien d'image que vous souhaitez.
RewriteEngine sur
RewriteCond% {HTTP_REFERER}! ^ $
RewriteCond% {HTTP_REFERER}! ^ Http (s)?: // (www \.)? Yourwebsite.com [NC]
RewriteCond% {HTTP_REFERER}! ^ Http (s)?: // (www \.)? Yourotherwebsite.com [NC]
RewriteRule \. (Jpg | jpeg | png | gif) $ http://i.imgur.com/MlQAH71.jpg [NC, R, L]

8. Activer la mise en cache du navigateur

liste des navigateurs web

Également connu sous le nom de mise en cache côté client, ce hack .htaccess permet d’activer les options de mise en cache du navigateur recommandées pour votre site WordPress. Vous pouvez également l’utiliser dans d’autres projets – sites HTML, etc..

# Configuration de la mise en cache du navigateur

ExpireActif le
ExpiresByType image / jpg "accès 1 an"
ExpiresByType image / jpeg "accès 1 an"
ExpiresByType image / gif "accès 1 an"
ExpiresByType image / png "accès 1 an"
ExpiresByType text / css "access 1 month"
ExpiresByType application / pdf "accès 1 mois"
ExpiresByType text / x-javascript "accès 1 mois"
ExpiresByType application / x-shockwave-flash "accès 1 mois"
ExpiresByType image / x-icon "accès 1 an"
ExpiresDefault "accès 2 jours"

9. Rediriger vers une page de maintenance

shutterstock_93288208

Lorsque vous migrez des hébergeurs Web ou effectuez une tâche de maintenance, il est toujours recommandé de créer un fichier HTML statique «en panne pour maintenance» pour informer vos visiteurs que le site Web est en cours de mise à niveau ou de maintenance. Créez simplement un fichier maintenance.html (ou tout autre nom de fichier) et téléchargez-le dans le répertoire d’installation WordPress de base. Collez l’extrait de code suivant dans votre fichier .htaccess. Une fois l’opération terminée, assurez-vous de supprimer ou de commenter ces lignes pour revenir à l’opération globale. Vous pouvez commenter en ajoutant un «#» au début de chaque ligne.

# Redirige tout le trafic vers le fichier maintenance.html
RewriteEngine sur
RewriteCond% {REQUEST_URI}! /Maintenance.html$
RewriteCond% {REMOTE_ADDR}! ^ 123 \ .123 \ .123 \ .123
RewriteRule $ /maintenance.html [R = 302, L] 

10. Pages d’erreur personnalisées

Modèle 404

Vous pouvez également le fichier .htaccess pour configurer des pages d’erreur personnalisées conviviales pour les erreurs telles que 403, 404 et 500. Une fois que vous avez préparé votre page d’erreur – disons error.html, téléchargez-la dans votre répertoire d’installation WordPress de base. Ajoutez ensuite l’extrait de code suivant à votre fichier .htaccess pour activer la page d’erreur personnalisée:

# Page d'erreur personnalisée pour les erreurs 403, 404 et 500
ErrorDocument 404 /error.html
ErrorDocument 403 /error.html
ErrorDocument 500 /error.html

Conclusion:

Aujourd’hui, nous avons appris certains des hacks htaccess les plus cool pour renforcer votre site WordPress. Je vous suggère d’essayer chaque module un par un tout en effectuant une sauvegarde du fichier .htaccess avant et après le test de chaque module. En effet, le fichier .htaccess est très critique. Un caractère «#» manquant ou mal placé «“Pourrait détruire l’intégrité de votre site. Si vous accédez fréquemment à votre tableau de bord WordPress en déplacement, il est recommandé de ne pas activer d’IP sélectives sur votre wp-admin dossier.

À vous de voir – quelle est votre opinion sur ce message? Pensez-vous que cela vaut la peine de modifier le fichier htaccess? Connaissez-vous un meilleur conseil de sécurité? Nous aimerions recevoir de vos nouvelles.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me