Il y a 40 millions d’attaques par force brute sur les sites Web chaque jour, il est donc très probable que votre site soit victime d’une attaque. L’une des méthodes les plus simples pour protéger votre blog WordPress, est de cacher votre page de connexion.

Masquer la page de connexion permettra, empêchera aux différents pirates d’appliquer la force-brute sur votre blog WordPress pour tester plusieurs combinaisons de mot de passe.

Alors, pouvez-vous faire ? Vous pouvez créer une nouvelle page de connexion avec une nouvelle URL et de cacher votre connexion avec du code en quelques étapes simples, ce qui ajoutera une couche de défense supplémentaire à votre site.

Vous ne devez pas installer des plugins et cela prend seulement quelques minutes pour être mis en œuvre.

Sans plus tarder, nous allons commencer.

Baby Back, Back, Back It Up

Puisque vous avez besoin d’apporter des modifications à votre fichier .htaccess  pour cacher votre page connexion, il est important de créer une sauvegarde complète de votre site. Votre fichier .htaccess est important au point où une erreur toute petite soit-elle pourrait complètement rendre votre site indisponible. Il est donc préférable de prendre vos dispositions dès maintenant.

Si vous ne pensez pas que votre blog puisse être une victime d’une attaque, alors au moins, faites une sauvegarde de votre fichier .htaccess ainsi que le dossier du thème que vous utilisez.

Nous avons déjà publié beaucoup d’article sur la sauvegarde de blog WordPress. N’hésitez pas à y jeter un œil :

4 solutions pour faire des sauvegardes de multisites WordPress

Quelques conseils pour sécuriser votre blog WordPress

Comment sauvegarder une base de données WordPress

Appelez-moi, avec un slug différent

Peu importe l’option que vous choisissez, vous pouvez éditer les fichiers nécessaires directement avec votre client FTP, avec des clients comme FileZilla ou dans le cPanel, vous pourrez accéder aux fichiers de votre hébergement.

Modification du fichier .htaccess

Le code que vous devez ajouter devrait être inclus dans la partie supérieure de votre fichier .htaccess pour les installations uniques de WordPress ou après les lignes suivantes sur un réseau multisite :

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
 Voici le code que vous devez ajouter:
# BEGIN Hide login page
RewriteRule ^mylogin$ https://%{SERVER_NAME}/wp-login.php?key=123&redirect_to=https://%{SERVER_NAME}/wp-admin/index.php [L]

RewriteCond %{HTTP_REFERER} !^https://%{SERVER_NAME}/wp-admin
RewriteCond %{HTTP_REFERER} !^https://%{SERVER_NAME}/wp-login.php
RewriteCond %{HTTP_REFERER} !^https://%{SERVER_NAME}/login
RewriteCond %{QUERY_STRING} !^key=123
RewriteCond %{QUERY_STRING} !^action=logout
RewriteCond %{QUERY_STRING} !^action=lostpassword
RewriteCond %{REQUEST_METHOD} !POST
# END Hide login page
Assurez-vous de changer mylogin sur la deuxième ligne pour le slug que vous souhaitez utiliser pour votre page de connexion. Si vous ne changez pas, vous pouvez trouver votre page de connexion ainsi www.votresite.com/mylogin.
Il est recommandé de changer « le slug », car celle par défaut est accessible au public, ce qui signifie que les pirates y ont accès également. Si vous utilisez un slug personnalisé, alors il ne pourront pas y accéder, car le seul emplacement où ce slug est affiché, c’est sur ce fichier.
Veillez également à changer 123 sur les lignes deux et sept pour autre chose. C’est une clé secrète qui ne sera pas visible pour les pirates. Vous devriez choisir quelque chose qui n’est pas évident à deviner. Choisissez une valeur qui est composée de lettre et de chiffre.
Sauvegardez votre fichier .htaccess  et vérifiez que votre site est toujours disponible. Si vous obtenez une erreur interne 500, cela signifie que vous avez fait une erreur quelque part. Restaurez le fichier et essayez à nouveau.

2 – Votre fichier functions.php et htaccess

Avant de continuer à ajouter du code sur votre site, il est important de créer un thème enfant. Ceci vous permet d’éviter de perdre des modifications lorsque votre thème est mis à jour.

Vous pouvez lire notre tutoriel sur comment créer un thème enfant sur WordPress. Une fois que tout est bon, vous devez commencer par ajouter du code sur votre fichier htaccess pour des installations simples ou multisites.

RewriteEngine On 
RewriteBase / 
RewriteRule ^index\.php$ - [L]

Ce code vous permet de créer un slug personnalisé qui sera utilisé dans votre site.

RewriteBase / 
RewriteRule ^myprivatelogin$ wp-login.php

Vous pouvez remplacer « myprivatelogin » par le slug de votre choix différent de « wp-login.php« . Dans ce cas, la page de connexion se trouvera à cette adresse « www.site.com/myprivatelogin.php« .

Sauvegardez votre fichier et vérifiez que votre site fonctionne correctement. Si ce n’est pas le cas, vous devez restaurer le fichier htaccess et recommencer, en vous assurant d’avoir correctement copier les données.

Vous pouvez dès à présent commencer à utiliser la nouvelle page de connexion, mais vous pouvez encore plus loin en utilisant cette adresse de connexion partout sur votre site.

Ouvrez votre fichier functions.php de votre thème, disponible dans le répertoire des thèmes « wp-content/themes/votre-theme« . Vous pouvez ensuite ajouter le code suivant sur votre fichier.

add_filter('site_url', 'wplogin_filter', 10, 3);

function wplogin_filter( $url, $path, $orig_scheme ) {

      $old = array( "/(wp-login\.php)/");

      $new = array( "myprivatelogin");

      return preg_replace( $old, $new, $url, 1);

}

N’oubliez pas de modifier « myprivatelogin » sur la cinquième ligne avec le slug que vous avez utilisé sur votre fichier htaccess.

Lorsque tout est fait, sauvegardez votre fichier. Si vous avez toujours les informations méta par défaut sur WordPress., vous pouvez toujours cliquer sur ce lien pour accéder au nouveau lien de la page de connexion.

C’est tout pour ce tutoriel. J’espère que vous parviendrez à protéger la page de connexion de votre blog WordPress. N’hésitez pas à nous poser des questions ou à partager le tutoriel avec vos amis.