Awwwards

WordPress Summum : Sécuriser, Rapide et SEO

By 28 novembre 2015Wordpress Ultimate
Wordpress Summum

WordPress Summum: Sécurisé

Comme vous le savez, notre rêve à tous c’est d’avoir une version de WordPress rapide, sécurisée et optimisée pour le référencement.Nous avons alors décidé de réunir tous ces critères d’optimisation dans une même configuration wordpress. Cette configuration optimisée de wordpress sera disponible à la fin de ces articles en téléchargement gratuit.

Nous allons maintenant vous présenter ce qu’est WordPress Summum.

  1. Optimiser la sécurité de WordPress
  2. Optimiser la rapidité de wordpress
  3. Optimiser le référencement de wordpress

La sécurité n’est jamais à prendre à la légère, se faire piraté son site peut arriver à n’importe lequel d’entre nous, il faut donc prévoir cela d’est l’installation afin limiter les dégâts.

Wordpress Summum

WordPress Summum – optimisé pour la sécurité

Sécuriser WordPress

1 – Sauvegarder WordPress régulièrement

Il faut sauvegarder votre site intégralement à intervalles régulières, nous vous conseillons 6 sauvegardes par jour (si votre site est alimenté en article plusieurs fois par jour).

2 – Mettre à jour votre WordPress

90 % des sites internet piraté sont des sites tournant sous d’anciennes versions de wordpress et n’ayant pas été mis à jour, depuis plusieurs mois ou années. N’oublions jamais que chaque mise à jour de wordpress apporte des corrections aux bug ou aux failles de sécurité du programme. Il en va de même pour les templates ou plugings.

3 – Un vrai mot de passe sécurisé

Votre compte administrateur doit avoir un mot de passe avec 12 caractères minimum, l’image ici-bas est un exemple de mot de passe sécurisé (nous utilisons en général des mots de passe à 24 caractères).
La composition de votre mot de passe doit être faite de cette manière : Lettre majuscule, minuscule, chiffres, symboles spéciaux. Afin d’éviter les attaques, des hackers testant les mots du dictionnaire. Alors oubliez tous les mots de passe incluant vos infos personnelles comme : nom, prénom, date de naissance etc …

Nous vous conseillons d’utiliser un générateur de mot de passe.

4 – Changement du préfixe de la base de données

Comme beaucoup de gens le savent, y compris les hackers, le préfixe de wordpress par défaut est wp_ , il est donc fortement conseillé de le changer d’est le début de l’installation afin de protéger votre base de données.

5 – Interdire la navigation dans les dossiers de votre installation wordpress

L’installation par défaut de wordpress, permet à n’importe qui d’accéder au contenu de vos dossiers par exemple : /wp-content  et de n’importe quel navigateur. La solution que nous vous proposons se trouve dans le plugin Askapache Password Protect, qui sera inclus dans WP Summum, ainsi que sa configuration complète.

6 – Ne jamais utiliser le compte Admin de wordpress

L’installation de wordpress par défaut vous propose de créer un compte intitulé admin, si vous ne le changez pas l’intitulé, les hackers n’auront plus qu’à trouver votre mot de passe.

7 – Renforcer la sécurité de votre fichier wp-config.php

Comme nous le savons, le fichier wp-config est un fichier stratégique, nous devons donc renforcer sa sécurité en génèrent de nouvelles clés secrètes.

Générer des clés secrètes pour wp-config.php

8 – cacher la version de wordpress utilisée

Pour connaitre la version de votre wordpress vous avez qu’à afficher le code source de votre page (ctrl+u), ou clique droit avec la sourie et afficher code source de la page, vous remarquerez qu’il y a une balise qui indique la version de votre wordpress.

( <meta name= »generator » content= »WordPress 3.0.5″ /> )

Pourquoi devons-nous la cacher ? Tout simplement, car si les hackers voient la version, ça leur facilitera la tache, ils n’auront plus qu’à connaitre les failles de votre version et le tour est joué. Une raison supplémentaire de suivre notre conseil précédant : mettez à jour régulièrement votre wordpress et les éléments qui le composent.

N’oubliez pas de supprimer tous les fichiers Readme qui se trouve dans votre installation.

Nous allons comme précédemment régler ces problèmes avec le plugin Askapache Password Protect.

9 – Interdire l’accès au fichier wp-config.php

Pour empêcher la récupération des identifiants du wp-config.php nous devons le protéger par le biais de notre fichier .htaccess.

<FilesMatch ^wp-config.php$>
 deny from all
 </FilesMatch>

10 – Nous allons rendre les attaques BRUTE-FORCE impossibles

Qu’est ce qu’une attaque brute force ?

 

Maintenant nous avons compris le souci, pour se protéger de cela nous allons utiliser Login LockDown

11 – S’immuniser des failles pouvant exister dans les fichiers de notre installation wordpress

Nous allons utiliser WP Security Scan qui est formidable dans ce rôle, il vérifie tous nos fichiers en cas de faille de sécurité.

12 – Les fameuses erreurs de connexions

Comme vous le savez, wordpress est très gentil et ne pourra donc pas travailler comme Agent Secret, pourquoi ça ?

Tout simplement parce qu’il parle trop 🙂 Ce que je veux vous expliquer par cela, c’est que lorsque nous commettons une erreur de connexion à notre compte, wordpress nous indique d’où vient cette erreur (s’il elle vient de l’identifiant ou du mot de passe). Ce qui est plutôt pratique me direz vous, cependant wordpress donne aussi cette information aux hackers lorsqu’ils essaient de craquer votre compte… Moins pratique pour le coup !

Nous allons faire taire notre cher wordpress en lui demandant de ne pas donner cette information, pour ce faire il faut rajouter ce petit code dans notre fichier functions.php, qui se trouve dans le dossier du template utilisé.

add_filter(‘login_errors’,create_function(‘$a’, « return null; »));

Nous rajoutons aussi User Locker pour bloquer une personne qui essayerait de se connecter à plusieurs reprises sans y parvenir.

13 – le fichier .htaccess comment l’améliorer

Le fichier .htaccess, à une grande influence sur votre site internet, c’est l’un des fichiers principaux, dont il faut prendre soin! Nous allons vous donner quelques bonnes astuces, à rajouter dans votre fichier et comme vous l’avez compris, elles seront inclues dans la version finale de WordPress Summum

Avant de commencer, comme toujours, faite une sauvegarde de votre fichier actuel, vaux mieux prévenir que guérir 🙂 . Pas de panique, c’est juste une façon d’être pro dans votre démarche de travail, alors effectuez toujours une sauvegarde avant, quelconque changement sur votre site.

Vous êtes en forme est impatient ? Alors on commence.

Par défaut votre fichier .htaccess contient le code suivant

# BEGIN WordPress

RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

# END WordPress

A partir de maintenant, voici les nouveaux code à rajouter dans votre ficher .htaccess

# Nous allons désactiver l'affichage du contenu de nos répertoires
Options All -Indexes
# Nous allons empêcher le listage des répertoires
IndexIgnore *
# Nous allons masquer les informations du serveur
ServerSignature Off
# Nous allons activer le suivi des liens symboliques
Options +FollowSymLinks
# Nous allons mettre à jours le fuseau horaire
SetEnv TZ Europe/Paris
# Nous allons protéger le fichier wp-config.php
<files wp-config.php>
order allow,deny
deny from all
</files>
# Nous allons protéger les fichiers .htaccess et .htpasswds
<Files ~ "^.*.([Hh][Tt][AaPp])">
order allow,deny
deny from all
satisfy all
</Files>
# Nous allons désactiver le hotlinking de vos images
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www.)?monsite.com [NC]
RewriteRule .(jpg|jpeg|png|gif)$ http://fakeimg.pl/400x200/?text=Pas%20touche%20aux%20images%20! [NC,R,L]
# Nous llons bannir une adresse IP spécifique
<Limit GET POST>
order allow,deny
deny from 000.000.000.000
allow from all
</Limit>
# Bloquer l'utilisation de certains scripts
RewriteEngine On
RewriteBase /
RewriteRule ^wp-admin/includes/ - [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]
# Protection contre les injections de fichiers
RewriteCond %{REQUEST_METHOD} GET
RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=http:// [OR]
RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=(..//?)+ [OR]
RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=/([a-z0-9_.]//?)+ [NC]
RewriteRule .* - [F]
# Protections diverses (XSS, clickjacking et MIME-Type sniffing)
<ifModule mod_headers.c>
Header set X-XSS-Protection "1; mode=block"
Header always append X-Frame-Options SAMEORIGIN
Header set X-Content-Type-Options: "nosniff”
</ifModule>

Voici les principaux conseils, mais n’oubliez pas que, avec .htaccess nous pouvons faire beaucoup plus encore.

Vous devez aussi rajouter d’autres fichiers .htaccess dans les répertoires sensibles, comme wp-admin, wp-content, wp-includes, wp-uploads …

.htaccess du répertoire WP-ADMIN et nous allons limiter l’accès à se répertoire

<Limit GET POST PUT>
order deny,allow
deny from all
# IP d'Alex
allow from xxx.xxx.xxx.xxx
# IP de Nico
allow from xxx.xxx.xxx.xxx
# IP d'un autre point d'accès
allow from xxx.xxx.xxx.xxx
</Limit>

Nous allons aussi ajouter une deuxième identification à notre partie administration, nous commençons par créer un fichier .htpasswd, puis sur ce site internet vous allez créer le nom d’utilisateur et le passe, qui seront alors crypter pour votre fichier .htpasswd.
Maintenant, retournons à notre fichier .htaccess et insérons ce code qui va fonctionner avec notre fameux .htpasswd.

# Seconde authentification pour l'administration
<Files admin-ajax.php>
Order allow,deny
Allow from all
Satisfy any 
</Files>
AuthName "Connexion à l'administration"
AuthType Basic
AuthUserFile "/chemin/complet/vers/le/fichier/.htpasswd"
<limit GET POST>
Require valid-user
</limit>

.htaccess du répertoire WP-INCLUDES

# Bloque les accès directs aux fichiers PHP
<Files wp-tinymce.php>
allow from all
</Files>
<FilesMatch ".(?i:php)$">
  <IfModule !mod_authz_core.c>
    Order allow,deny
    Deny from all
  </IfModule>
  <IfModule mod_authz_core.c>
    Require all denied
  </IfModule>
</FilesMatch>
<Files wp-tinymce.php>
  Allow from all
</Files>
<Files ms-files.php>
  Allow from all
</Files>

.htaccess du répertoire WP-CONTENT

# Bloque les accès directs aux fichiers PHP
<FilesMatch ".(?i:php)$">
  <IfModule !mod_authz_core.c>
    Order allow,deny
    Deny from all
  </IfModule>
  <IfModule mod_authz_core.c>
    Require all denied
  </IfModule>
</FilesMatch>

.htaccess du répertoire UPLOADS qui se trouve dans WP-CONTENT

# Bloque les accès directs aux fichiers PHP
<FilesMatch ".(?i:php)$">
  <IfModule !mod_authz_core.c>
    Order allow,deny
    Deny from all
  </IfModule>
  <IfModule mod_authz_core.c>
    Require all denied
  </IfModule>
</FilesMatch>

Maintenant que l’optimisation de la sécurité de votre wordpress est faite nous allons passer à l’optimisation de sa rapidité dans notre deuxième article.

  1. WP Summum : Optimiser la sécurité de WordPress Vous y êtes déjà
  2. WP Summum : Optimiser la rapidité de wordpress
  3. WP Summum : Optimiser le référencement de wordpress

Toutes les astuces et plugin présentés, dans cet article, seront inclus et déjà configurés dans : WordPress Summum.

WordPress Summum sera disponible en téléchargement gratuit à la fin de ces articles.

Leave a Reply

838b260c53ae68956296a872f0079ca9WWWWWWWWWWWWWW