Proteger son site WordPress avec htaccess

Ce contenu a 11 ans. Merci de lire cette page en gardant son âge en tête. De plus, les liens comme les captures peuvent être obsolètes.

Le fichier .htaccess est un fichier à la racine de votre site qui inclus des règles qui seront appliquées par le serveur pour délivrer les réponses. (Tout les hébergeurs ne le permettent pas non plus…)

Ainsi, si au départ votre fichier htaccess est vide, dès que vous modifier dans Réglages->Permaliens votre choix de permaliens, le fichier .htaccess est créé pour que l’url de réponse soit modifié par le serveur avant affichage à l’utilisateur et donc réécrite.

Voilà pour faire simple.

Le fichier htaccess sert aussi à donner des permissions d’accès, ainsi à protéger des fichiers, répertoires, interdire des ips, des moteurs de recherches… et j’en passe.

C’est un outil très puissant, mais… trop gros il fera planter lamentablement votre site car trop lourd pour le serveur à traiter. Et bien évidement, si des règles sont antagonistes, le site ne fonctionnera pas mieux.

En cas de soucis, j’ai tendance à renommer le fichier en premier lieu afin de vérifier que le site fonctionne correctement et que le problème ne provient pas de là, parfois par le biais d’un plugin de cache ou optimisation qui l’aurait modifié.

Bref, voici quelques astuces pour protéger votre site par le biais du htaccess et du plugin All In One WP Security & Firewall

All in one WP security & firewall est un plugin complet et gratuit qui s’appuie sur différentes méthodes de protection que l’on peut bien évidement faire manuellement, ce qui est bien mieux.

2013-08-24_164225

L’accueil vous informe du degré de protection de votre site à l’aide du plugin et d’un total de points. Attention, trop de protection peut aussi nuire à l’utilisation et au fonctionnement de votre site, vous vous en rendrez vite compte.

2013-08-24_164255

Dans General Settings, LE bouton essentiel en cas de problème ou de doute, DISABLE ALL SECURITY FEATURES. Ainsi vous désactiverez en un seul clic toutes les protections offertes par le plugin.

2013-08-24_164317

HTACCESS File vous permettra de sauvegarder ou uploader votre fichier HTACCESS ainsi que d’en consulter le contenu.

2013-08-24_164337

WP-CONFIG File vous permet d’uploader votre fichier wp-config. Car en cas d’attaque, si celui ci est modifié ou altéré, il est bien pratique de pouvoir rapidement le remettre en place. Vous pourrez aussi le sauvegarder… fonction réapparu depuis la version 2.3

2013-08-24_164409

WP META File est une protection qui retire des pages générées par WordPress les meta faisant références à la version de WordPress utilisée. Pourquoi? C’est tout simple, si quelqu’un connait la version de WordPress utilisée, il peut aussi en connaitre les faiblesses si vous ne le tenez pas à jour. Donc cela augmente les risques de piratage de votre site.

2013-08-24_164440

WP Username permet de renommer le compte Admin (Faut PAS créer un compte nommer admin, et le compte ID1 doit être effacé ou avec des droits limités.)

Donc, mon conseil, vous créé votre site avec un nom de compte bateau (ID1), ensuite une fois loggé, vous créé un compte pour vous en tant qu’Auteur (ID2), puis un compte Administrateur (ID3) (sans utiliser Admin, Administrateur, … comme nom). Vous utiliserez ce compte UNIQUEMENT pour administrer votre site, JAMAIS pour écrire un article!

Vous vous loggez sous ce compte puis vous basculer le compte ID1 en Lecteur.

2013-08-24_164524

Display name vous permet de remplir le nom / prénom et de ne pas conserver le nom de loggin.

Quand vous créez un compte, le loggin est affiché pour les commentaires, articles… MAUVAISE IDEE! Il faut vite remplir Prenom et Nom par ce que vous voulez, ainsi ce sont eux qui seront affichés.

Petite information, même en tant qu’utilisateur d’un autre site sous WordPress (ou autre) je vous le conseil vivement.

2013-08-24_164546

Là, une petite page toute simple pour voir le degré de sécurité de votre mot de passe.

2013-08-24_164611

Login Lockdown, la capture n’est pas complète 😉 . Cela vous permet de choisir les tentatives de connexion des utilisateurs, temps de blocage, et blacklistage après x tentatives.

2013-08-24_164633

Failed Login Records permet de voir les tentatives échouées de connexion.

2013-08-24_164709

Force Logout oblige les utilisateurs à se reconnecter après x minutes de connexion. Protection pour votre site, mais aussi pour vos utilisateurs si ils laissent une session ouverte depuis un poste public.

2013-08-24_164741

Account activity permet de voir l’activité de vos membres. Pas de les flicquer, juste de connaitre leurs dernières connexions.

2013-08-24_164826

DB Prefix. Votre base commence par WP_? MAUVAISE IDEE!!! Alors générer un entête aléatoire, ou créez le votre, un clic, et votre base est automatiquement modifiée ainsi que  la configuration du site pour fonctionner correctement.

2013-08-24_164856

DB Backup génère des sauvegardes de votre site.

2013-08-24_164925

File Permissions permet de vérifier si vos fichiers et dossiers WordPress ont les bonnes permissions sur le serveur et le cas échéant d’attribuer celles qui conviennent.

2013-08-24_164957

PHP File Editing, va bloquer la possibilité de modifier les fichiers PHP depuis WordPress ou autre. Bien évidement, par le FTP cela reste possible. Ceci modifie le fichier .htaccess.

2013-08-24_165035

WP File Access. Lors de l’installation de WordPress, certains fichiers sont installés, et réinstallés lors des mises à jour WordPress, et qui sont une possible porte d’entrée ou d’information pour accéder à votre site. Alors, autant les bloquer pour empêcher leurs lectures. Ceci modifie le fichier .htaccess.

2013-08-24_165051

HOST System Logs permet de lire les fichiers Log d’alerte de votre site. (Perso, aucun résultat…)

2013-08-24_165117

Whois Lookup Information permet d’obtenir des informations sur un IP.

2013-08-24_165140

BanUsers, permet de banir une IP, bouquet d’IPs, ou des robots (moteurs de recherche, de pub, spam…)  de votre site. Ceci modifie le fichier .htaccess.

Pour ma part, j’utilise la liste du site Perishable. Le site propose la liste à intégrer directement au fichier htaccess, voici la liste à copier/coller.

103.3.223.91
109.199.242.214
109.255.36.134
111.73.46.4
112.198.77.40
114.33.237.*
118.98.223.*
123.30.50.*
142.4.215.*
151.27.123.198
151.28.208.*
157.*.*.*
157.55.36.*
173.54.107.*
176.194.133.*
178.119.213.35
184.168.116.128
184.169.163.*
186.222.83.11
188.165.*.*
188.223.209.72
188.49.63.110
198.57.208.*
199.229.249.187
200.63.102.*
201.10.113.*
202.43.169.*
204.45.133.74
208.27.69.9
208.50.101.*
209.140.28.124
212.227.18.17
213.100.101.109
213.125.223.202
213.184.242.*
216.38.8.177
221.132.34.*
27.153.229.*
27.159.223.*
27.54.93.*
37.221.160.158
37.59.47.*
37.77.162.130
41.210.123.*
46.120.100.248
60.234.45.151
64.124.203.72
64.124.98.10
64.125.188.25
64.14.78.96
65.111.165.*
65.55.24.237
69.162.68.*
69.169.94.*
69.175.78.*
69.41.14.215
69.94.34.*
71.245.243.98
71.6.203.27
72.47.196.*
74.63.250.*
77.222.61.*
78.234.5.2
79.142.67.*
8.28.16.*
80.192.66.108
81.144.138.34
81.149.190.176
81.157.96.215
82.169.246.22
82.170.182.160
84.127.22.*
84.25.70.100
85.246.12.149
85.59.38.177
86.156.146.50
86.19.152.228
86.83.234.160
89.185.228.*
89.221.250.*
91.102.118.*
91.121.*.*
91.236.116.119
93.185.106.*
94.23.*.*
95.87.220.*
98.150.108.228

Pour les agents, par contre il y a la règle de Perishable mais ATTENTION… une mauvaise configuration, une mauvaise liste peuvent faire chuter vos visites car bloquant l’accès à votre site.

Liste simplifiée à priori sans problème avec les navigateurs et pour les utilisateurs

binlar
casper
checkprivacy
cmsworldmap
comodo
curious
diavol
doco
dotbot
feedfinder
flicky
ia_archiver
jakarta
kmccrew
libwww
nutch
planetwork
purebot
pycurl
skygrid
sucker
turnit
vikspid
zmeu
zune

2013-08-24_165157

Basic Firewall Rules désactive la signature du serveur, bloque l’accès au htaccess,limite l’upload à 10Mo et protège l’accès à wp-config.

WordPress Pingback Vulnerability Protection, protège contre certains DOS (Denied of services), problème interne de routeur et de réseaux.

 Ceci modifie le fichier .htaccess.

2013-08-24_165237

Ceci modifie le fichier .htaccess.

Listing of directory contents bloque l’accès direct à vos répertoires et sous répertoires.

Trace and track protège des attaque par cookies. C’est vrai que moi, un gros paquet de cookies au chocolat… je peux craquer… 😉 je ne dis pas ce que je fais si ils sont aux noisettes.

Proxy Comment Posting, permet de bloquer les commentaires postés par le biais de proxy.

Bad query strings bloque les mauvaises requettes faites à votre site.

Advanced Charactere String Filter

Vous remarquerez que je n’ai pas activé ces deux derniers. Pourquoi? Car nombreux plugins ne fonctionnent plus après. D’ailleurs, vous pourrez voir dans l’aide qu’il est fortement recommandé de faire une sauvegarde du htaccess avant d’activer l’une de ces deux options.

2013-08-24_165304

Ceci modifie le fichier .htaccess.

5G Blakclist Firewall Rules applique la liste de protection 5G du site Perishable.

2013-08-24_165343

Brute Force Prevention Firewall permet de protéger votre admin des attaques Brute Force (tentative de multiples essais automatique), en renvoyant ces attauqes vers le site de votre choix et en créant une URL spécifique pour que vous accédiez à l’administration du site à l’aide d’un Super Cookies géant aux noisettes… j’ai un doute pour les noisettes.

2013-08-24_165359

Se protéger des Spams…

2013-08-24_165416

Là, vous pouvez vérifier le nombre de commentaire postés par une même IP. (attention si vous avez des utilisateurs en entreprise, ils auront tous l’IP de l’entreprise alors qu’ils peuvent être des utilisateurs effectivement différents)

Vous saisissez le nombre de commentaires maximum par IP, et vous voyez les utilisateurs ayant utilisez cette IP pour commenter. Ainsi vous pourrez localiser et bloquer d’éventuels Spammeurs.

2013-08-25_112415

Depuis la version 2.3, vous pouvez faire scanner vos répertoires et fichiers afin de vérifier les fichiers modifiés depuis le précédent Scan. Vous pouvez y ajouter les exceptions à ne pas scanner.

2013-08-24_165456ET… l’interface ultime et toute simple pour mettre votre site en maintenance et afficher un message à vos visiteurs.

Voilà. Bien évidement, htaccess permet encore bien des choses que nous verrons plus tard, mais déjà là… vous avez de quoi vous occuper.

cguizelin

Né d'une mère caféinomane et d'un père colateur, j'ai eu un intérêt trop tôt pour l'informatique (ZX81) et tout ce qui permet de communiquer, créer, rêver... Curieux de tout, tech comme la vie quotidienne et l'actualité.

8 réponses

  1. Jp dit :

    indispencable perso je gère ca avec pspad

  2. Bah tu vois…les commentaires plantaient à cause de l’activation de l’antispam… lol
    Trop de protection tue un site!

  3. Jp dit :

    bon lol je reprends donc en m’appliquant cette fois ^^ (dommage qu’on puisse pas modifier ou supprimer un commentaire à mon niveau 😉 Je disais donc : Indispensable ! perso je le gère avec notepad ou pspad l’htaccess n’a besoin que de quelques lignes pour gérer les pages d’erreur 404 et autres ainsi que quelques petits trucs indispensables pour tout webmestre que se respecte d’une terrible utilité et efficacité !

  4. En tant qu’auteur, dans l’admin commentaires, tu ne peux pas modifier ou supprimer?

  5. Jp dit :

    a priori non 🙁

  6. Ayé, j’ai compris pourquoi… normalement c’est bon…

  7. Benoit dit :

    Salut, l’un d’entre vous a t’il pris le temps de tranduire tout ou partie de ce plugin en français ?

  8. Non, du tout… pour ma part pas nécessaire… quoique parfois il y a des subtilités qui m’échappent.

    De plus je pense que l’auteur a codé en dur le texte et pas traduisible avec un .pot

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *