Voici mon dernier plugin pour WordPress qui passe en version 1.0 stable après plusieurs mois de bêta : Move Login, il est donc temps que je vous en parle un peu.
Ça fait quoi ?
Ce plugin va changer l’url de connexion/déconnexion de votre site WordPress.
Par exemple, https://www.screenfeed.fr/wp-login.php va devenir https://www.screenfeed.fr/login/, ou https://www.screenfeed.fr/wp-login.php?action=logout deviendra https://www.screenfeed.fr/logout/.
En parallèle, l’accès à https://www.screenfeed.fr/wp-login.php sera interdit (un message d’erreur sera affiché).
À noter pour les installations MultiSite que chaque site aura droit à sa propre page de connexion, avec des url différentes.
C’est un plugin que j’ai développé avec l’aide de l’ami Julio :) (ouais comme ça j’ai droit au label de qualité « Approved by SecuPress » ^^ ).
Et ça sert à quoi ?
On pourrait penser au premier abord que le but est de faire de jolies url faciles à retenir, mais il n’en est rien. Le but recherché est de bloquer l’accès à la page https://www.screenfeed.fr/wp-login.php afin de couper court aux tentatives de brute force de votre page de connexion.
Brute-quoi ? Wikipedia nous dit :
La méthode « Brute Force » est une approche exhaustive des problèmes : la solution est trouvée en testant tous les cas possibles jusqu’à la découverte de la solution.
En clair, on essaie toutes les combinaisons possibles de login/mot de passe jusqu’à trouver la bonne. Le but recherché étant bien sûr de pénétrer dans l’administration du site et d’y mettre un joli bordel.
Mais au final, on ne fait que déplacer le problème ailleurs ?
Oui mais non. Certes, on peut toujours tenter de « brute forcer » votre login à la nouvelle adresse, mais ce n’est pas un humain qui fait ces tentatives, mais un robot (comprendre : un script/logiciel présent sur un serveur ou un ordinateur). Et le robot est bête (en général). Sur un site WordPress, la page de connexion se situe à l’adresse https://www.screenfeed.fr/wp-login.php, il va donc tenter ses vils desseins à cette adresse, et pas ailleurs.
Configuration
Rien. On active le plugin, ça marche.
Si jamais le plugin ne peut pas écrire dans le fichier .htaccess
de votre site, il vous le fera savoir au moment de son activation. Il faudra alors se munir d’un logiciel ftp et ajouter les lignes nécessaires soi-même.
Où trouve t’on ces lignes ? Facile, le plugin vous l’indiquera aussi. Pour un site WordPress « normal » il faut se rendre dans la page de réglage des permaliens. Pour un site WordPress MultiSite, une nouvelle page est créée dans l’administration du réseau, sous l’onglet « Réglages » (le plugin n’est activable que sur le réseau).
Ha oui, il faut bien sûr que les permaliens soient activés sur le site (sur tous les blogs pour un MultiSite).
Le plugin prend en charge les serveurs IIS, mais ça n’a pas été testé.
Filtres et actions
Une action est introduite avec cette version 1.0, elle permet de modifier l’action à entreprendre lorsque quelqu’un tente d’accéder à wp-login.php
:
'sfml_wp_login_error'
(action) : d’origine le plugin va utiliser wp_die()
pour afficher le message d’erreur. Ce hook va vous permettre de personnaliser le message d’erreur, ou bien de renvoyer une erreur 404 au lieu de 500, ou encore de rediriger le « visiteur » vers une autre page de votre choix.
Exemple, redirection vers l’accueil du site :
123456
remove_action( 'sfml_wp_login_error', 'sfml_wp_login_error' );
add_action( 'sfml_wp_login_error', 'my_wp_login_error' );
function my_wp_login_error() {
wp_safe_redirect( home_url() );
exit;
}
Au secours !
Bloqué à l’extérieur ? Un truc qui foire ? Vous ne pouvez plus vous connecter ?
Il y a une solution. Avec un logiciel ftp, ajoutez la ligne suivante à votre fichier wp-config.php
(situé à la racine du site) : define('SFML_ALLOW_LOGIN_ACCESS', true);
Vous aurez alors accès à la page de connexion traditionnelle, le temps de trouver où se situe le problème.
Besoin d’aide ? Les commentaires sont ouverts, ainsi que le forum sur le site de WordPress.
Commentaires
Commentaire de Simpliweb.
Bonjour,
Merci pour ce petit Widget bien pratique. certains de mes sites reçoivent (par vagues) des tentatives « Admin ».
C’est juste bien chiant de se faire pourrir sa boite mail pro avec toutes ces tentatives de robots à la c…. !
Keep the good Work !
Commentaire de Geoffrey @ Geoffrey.Crofte.fr.
Hey Greg !
Comme j’ai fait un article récemment sur ton plugin, je me suis dit que le tester plus longuement ne me ferait pas de mal, au moins pour la crédibilité de mon article :p
Lorsque je reçois un mail pour me signaler un commentaire à approuver, j’ai toujours les URLs de type :
http://www.creativejuiz.fr/blog/wp-admin/comment.php?action=approve&c=21794
Cela ne me dérange pas plus que ça puisque je valide les commentaires via l’app iOS ou directement dans mon espace d’admin qui est fréquemment ouvert, et non en passant par ce lien. Mais je te le mentionne au cas où ;)
Bonne soirée à toi !
Commentaire de Grégory Viguier.
Hey, encore merci pour l’article :)
Je te laisse relire l’url que tu me donnes et y réfléchir 5 minutes :)
Commentaire de vince40.
Bonjour et merci pour ce plugin bien pratique je vois que la belle communauté des français engagés dans WP est bien représentée ici ! Ça met en confiance ;)
J’ai une question : si je rentre example.com/wp-admin j’obtiens : example.com/login?redirect_to=http%3A%2F%2Fexample.com%2Fwp-admin%2F&reauth=1 et je me retrouve donc sur la page de login ?
Est-ce normal ou j’ai loupé un truc (il est vrai qu’il est tard) J’ai vérifié le .htaccess nickel par rapport à ce qui est indiqué côté admin et pour l’url wp-login.php pas de soucis ça roule …
Merci bonne soirée et bon week-end si on se croise pas avant ;)
Commentaire de Grégory Viguier.
Salut.
Les deux mon Capitaine !
Oui c’est normal, c’est le comportement par défaut. Pour changer ce comportement il y a une option dans la page des réglages ;)
Commentaire de vince40.
Merci pour la réactivité … heu pourtant j’ai bien dormi mais j’avoue ne pas tout saisir mon général !
Quand je vais sur le panneau réglages je n’ai pas d’option ? enfin moi je vois rien !
Et pourquoi ne pas bloquer l’accès à l’url wp-admin si on peut se retrouver sur la page de login par ce biais ?
Commentaire de vince40.
Oups voilà je suis officellement un boulet pour la page d’option … déjà je suis sur un vieux post qui a évolué depuis … v1.1 = -1 pour moi
Puis hier j’avais oublié de te dire qu’il était impossible de télécharger Noop sur wordpress.com et ce matin je viens de ressayer c’est ok !
Et là miracle les options !
Par contre je maintiens ma question à propos de l’url wp-admin ?
Commentaire de Grégory Viguier.
Quel est le problème avec l’url wp-admin ?
– si c’est le fait d’être redirigé vers la page de login : déjà je ne vois pas où est le problème, le plugin ne cache pas la page de login, il change son url, c’est tout (ça ne sert à rien de la « cacher » dans le cas qui nous préoccupe). Et puis si vraiment tu veux empêcher cette redirection, il y a une option pour ça, avec 4 possibilités.
– si c’est parce que l’url de l’administration est toujours wp-admin : le plugin ne change pas cette url, ça n’est d’ailleurs mentionné nulle part qu’il fait ça, et ne le fera jamais.
Commentaire de vince40.
merci pour les précisions je pensais que les attaques ciblant wp-login.php pouvait tout aussi bien cibler wp-admin !
Voilà pourquoi je m’étonnais de çà.
En tout cas merci pour le travail et les réponses :)
Commentaire de tristan.
Merci pour ce plugin ;)
Il fonctionne au top
Commentaire de Jeff.
Bonjour,
Merci pour ce Plugin il vraiment et pour ce qui est de wp-admin, il suffit juste de choisir 1 des 4 options dans :
Zone d’administration.
Pas d’option pour paramétrer sois-même le choix des textes à afficher. Dommage
Mais bon il est vraiment top.