10 manières de protéger votre WordPress – Partie 1
WordPress, le script de blog le plus utilisé, est aussi naturellement le plus sujet aux attaques. Rien de plus normal que de se renseigner sur sa sécurité.
Donc, après avoir accumulé quelques connaissances sur WordPress et sur sa sécurisation, il est normal que je vous fasse désormais partager moi aussi ce que je sais.
Dans cette première partie, nous allons d'abord voir le .htaccess, robots.txt, CHMOD...
1 - Mettre à jour
Avant tout, il faut mettre WordPress à jour ainsi que ses plugins et son thème.
2 - Avoir un mot de passe fort
N'hésitez pas à le changer périodiquement. Générateur de mot de passe online.
3 - Le .htaccess
A la racine de votre serveur, uploadez un fichier nommer .htaccess et notez ce qui suit.
# Empecher de lire ou accéder au fichier .htaccess
<files .htaccess>
order allow,deny
deny from all
</files>
# Empecher de lire ou accéder au fichier wp-config.php
<Files wp-config.php>
Order Allow,Deny
Deny from All
</Files>
# Au lieu de mettre un index.html dans chaque dossier que vous ne pas rendre visible mettez cette ligne
Options All -Indexes
# Désactive la signature du serveur
ServerSignature Off
# Empêche les attaques DDOS
LimitRequestBody 10240000
# Un hôte qui tente de se cacher dans une reverse DNS lookup
RewriteCond %{REMOTE_HOST} ^private$ [NC,OR]
# Un faux referrer souvent utilisé
RewriteCond %{HTTP_USER_AGENT} ^[^?]*iaea\.org [NC,OR]
# Le referrer "addresses.com" est utilisé par un email address extractor
RewriteCond %{HTTP_USER_AGENT} ^[^?]*addresses\.com [NC,OR]
# Bloque les navigateurs se dissimulants avec des lettres et chiffres aléatoires
RewriteCond %{HTTP_USER_AGENT} [0-9A-Za-z]{15,} [OR]
RewriteCond %{HTTP_USER_AGENT} ^[0-9A-Za-z]+$ [OR]
4 - Le robots.txt
Le robots.txt est utile pour éviter le duplicate content et éviter que les moteurs de recherche n'indexe des fichiers sensibles de WordPress comme wp-config.php, les dossiers wp-admin etc...
Placez le également à la racine du site.
Sitemap: http://www.nomdedomaine.tld/sitemap.xml
User-agent: *
Disallow: /wp-content/
Disallow: /wp-admin/
Disallow: /wp-includes/
Disallow: /wp-
Disallow: /feed
Disallow: /comments/feed
Disallow: /feed/$
Disallow: /*/feed/$
Disallow: /*/feed/rss/$
Disallow: /*/trackback/$
Disallow: /*/*/feed/$
Disallow: /*/*/feed/rss/$
Disallow: /*/*/trackback/$
Disallow: /*/*/*/feed/$
Disallow: /*/*/*/feed/rss/$
Disallow: /*/*/*/trackback/$
Disallow: /trackback/
Disallow: /cgi-bin/
Allow: /wp-sitemap.phpUser-agent: Googlebot
Disallow: /*.php$
Disallow: /*.js$
Disallow: /*.cgi$
Disallow: /*.xhtml$
Disallow: /*.php*
Disallow: */trackback*
Disallow: /*?*
Disallow: /wp-*
Disallow: /*.inc$
Disallow: /*.css$
Disallow: /*.txt$
Allow: /images/
Allow: /wp-sitemap.phpUser-agent: Googlebot-Image
Disallow:
Allow: /*
Ce fichier est à modifier selon la configuration de votre installation.
5 - Les CHMOD
Via votre votre client FTP, changer les CHMOD des différents dossiers et fichiers sur le serveur.
Mettez tous les fichiers en 604 et tous les dossiers en 705 s'ils nécessitent des droits d'écriture. Sinon les fichiers seront en 404 et les dossiers en 505.
Inutile de faire le 777 qui donne les droits à tout le monde.
Ex : Les fichiers wp-config.php et .htaccess ont des droits 404.
La suite ici, 10 manières de protéger votre WordPress - Partie 2



déjà 12 commentaires
7 juin, 2009
Merci bien pour ses infos précieuse .
Tu ma fait gagner bien du temp !
Bonne continuation .
KroKro
9 juin, 2009
C'est fait pour ca.
9 juillet, 2009
Merci, en effet ont ne connais jamais suffisamment le htaccess, je l'utilise souvent et découvre de nouvelles optios régulièrement sur des sites tel que le tiens.
Encore merci pour le partage des connaissance, à mon avis qui devrait être le fondement des Informaticiens.
20 juillet, 2009
Bonjour
je viens d'éditer mon fichier htacces et je n'avais pour l'instant que :
# BEGIN WordPress
RewriteEngine On
RewriteBase /wordpress/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /wordpress/index.php [L]
# END WordPress
+ ensuite ces deux lignes que j'avais rajouté par rapport à mes problèmes chez 1&1 :
AddType x-mapp-php5 .php
AddHandler x-mapp-php5 .php
N'y connaissant rien, est que je laisse ce qui était déja présent ? Est ceq u'il faut que toutes les instructions soient entre BEGIN et END WP que je viens de voir aujourd'hui ?
Merci olivier
20 juillet, 2009
Bonjour Olivier,
Oui il faut laisser les instructions déjà existantes.
Ensuite, ces instructions ne sont pas à l'intérieur de # BEGIN/END WordPress. Ca sert juste à indiquer que ces instructions proviennent de WordPress.
20 juillet, 2009
Merci pour la réponse. Sinon, du coup, autre question. En fait, mon fichier htacces se trouve dans le répertoire WP. Or mon index genéral (je sais pas si on peut dire ca) est au dessus. C'est mon site (qui n'est pas sous WP) mais qui est fait en html et css. faut il aussi un htacces pour lui ?
Olivier
21 juillet, 2009
Pas besoin du meme htaccess pour le site en html.
Vu qu'il se trouve à la racine, je conseille de mettre :
order allow,deny
deny from all
Options -Indexes
ServerSignature Off
LimitRequestBody 10240000
RewriteCond %{REMOTE_HOST} ^private$ [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^[^?]*iaea\.org [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^[^?]*addresses\.com [NC,OR]
RewriteCond %{HTTP_USER_AGENT} [0-9A-Za-z]{15,} [OR]
RewriteCond %{HTTP_USER_AGENT} ^[0-9A-Za-z]+$ [OR]
comme ca, ca le fait pour tout le serveur et pas seulement le dossier wordpress. Donc tu pourras enlever ces instructions dans le htaccess du dossier wordpress.
21 juillet, 2009
Y'aurait il d'autres choses à mettre dans ce fichier htacces pendant que j'y suis. Car je ne comprend pas très bien ce que j'y met mais si c'est pour mieux sécuriser, autant bien le faire.
en tout cas, j'ai hâte de voir la prochaine partie
22 juillet, 2009
C'est tout ce que j'ai mis pour ma part. Je pense qu'avec ca c'est déjà très bien.
La suite va arriver...
12 septembre, 2009
Bonjour.
Des que je met un .htaccess que cela soit dans mon repertoire WP ou "Pas besoin du meme htaccess pour le site en html.
Vu qu'il se trouve à la racine, je conseille de mettre"
J 'ai une erreur. ca plante le site!
Pouvez vous me filer un coup de main?
Merci. Steph
12 septembre, 2009
Peux tu montrer ton htaccess?
12 décembre, 2009
Article intéressant. J'ajoute que les utilisateurs de WordPress peuvent utiliser Platinum SEO ou All in One SEO, des plugins qui permettent de ne pas autoriser l'accès aux flux RSS, tags, archives, etc.
Concernant les fichiers wp-xxxxxx, ce n'est pas une obligation de les mentionner dans les fichiers robots.txt et .htaccess
Pour empêcher que le serveur Apache liste vos dossiers et sous répertoires, il faut ajouter ce code dans le .htaccess : Options -Indexes
(interdit le listage de tous les sous-répertoires)
Trackbacks