Voici quelques idées et conseils pour améliorer la sécurité de son blog sous WordPress.
Au moment où un script qui tente de craquer les codes de l’admin de WordPress se balade (voir cet article de Bojan Zdrnja) dans la nature et alors que pas mal de mes installations ont été victimes d’attaques ces derniers mois, je crois que cet effort de sécurisation n’est pas du luxe.
Cet article s’inspire de cet autre publié sur blogsecurity.
Avertissement : il se peut que ces méthodes altèrent le fonctionnement de certains plugins et thème. Faites vos tests…
Ce petit guide va vous permettre de vous protéger de bien des attaques et en particulier les attaques en force brute, le recensement de vos plugins, l’affichage de vos répertoires, le dévoilement d’information sensibles et les failles des inclusion de fichiers. Il existe aussi d’autres méthodes de renforcement de la sécurité. Ce guide n’est pas complet.
Note importante : faites un backup de votre base de données et de votre répertoire FTP avant de modifier quoi que ce soit.
Étape 1 : limiter l’accès à wp-content et wp-includes
En utilisant les directives <files> de htaccess nous pouvons restreindre l’accès au fichiers autres que les images, les CSS et le Javascript. Ajoutez les lignes suivantes à votre fichier .htaccess :
Order Allow,Deny Deny from all <Files ~ "\.(css|jpe?g|png|gif|js)$"> Allow from all </Files>
Si vous voulez autoriser certains plugins (Democracy dans l’exemple ci dessous) vous pouvez ajouter ce type de lignes au fichier .htaccess à mettre dans le répertoire wp-content :
<Files "democracy.php"> Allow from all </Files>
Mettez cela dans un fichier .htaccess que vous devrez créer dans vos répertoire wp-content et wp-includes.
Etape 2 : Restreindre l’accès à wp-admin
Maintenant, pour restreindre l’accès au répertoire wp-admin, vous avez 2 possibilités. Soit une protection par IP (nécessite que vous soyez toujours derrière cette IP fixe) soit une protection par mot de passe
Protection par IP :
order deny,allow allow from a.b.c.d # Ceci est votre IP statique deny from all
Le code ci dessus empêche tous les navigateurs d’accéder à n’importe quel fichier dans ces répertoires sauf s’il a l’IP « a.b.c.d » que vous devrez changer avec votre propre adresse IP.
Protéger avec un mot de passe :
Je ne vais pas en parler ici, pour protéger l’accès avec un mot de passe , vous pouvez faire une recherche dans Google du genre ‘WordPress htpasswd » ou consulter ce livre blanc pour sécuriser WordPress (en Anglais).
Tags : securite