{"id":82440,"date":"2018-03-02T08:29:35","date_gmt":"2018-03-02T08:29:35","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/wps-limit-login\/"},"modified":"2025-06-24T07:45:17","modified_gmt":"2025-06-24T07:45:17","slug":"wps-limit-login","status":"publish","type":"plugin","link":"https:\/\/azb.wordpress.org\/plugins\/wps-limit-login\/","author":14072827,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"1.5.9.2","stable_tag":"1.5.9.2","tested":"6.8.5","requires":"4.2","requires_php":"","requires_plugins":null,"header_name":"WPS Limit Login","header_author":"WPServeur, NicolasKulka, wpformation","header_description":"Limit connection attempts by IP address","assets_banners_color":"7d8c75","last_updated":"2025-06-24 07:45:17","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/www.paypal.me\/donateWPServeur","header_plugin_uri":"","header_author_uri":"https:\/\/wpserveur.net","rating":4.9,"author_block_rating":0,"active_installs":100000,"downloads":939576,"num_ratings":83,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","changelog"],"tags":{"1.0":{"tag":"1.0","author":"NicolasKulka","date":"2018-03-05 10:25:18"},"1.1":{"tag":"1.1","author":"NicolasKulka","date":"2018-03-05 13:40:02"},"1.2":{"tag":"1.2","author":"NicolasKulka","date":"2018-03-06 10:22:17"},"1.3":{"tag":"1.3","author":"NicolasKulka","date":"2018-06-29 14:07:31"},"1.4":{"tag":"1.4","author":"NicolasKulka","date":"2018-07-16 14:13:26"},"1.4.1":{"tag":"1.4.1","author":"NicolasKulka","date":"2018-07-17 08:29:18"},"1.4.2":{"tag":"1.4.2","author":"NicolasKulka","date":"2018-07-17 13:08:02"},"1.4.3":{"tag":"1.4.3","author":"NicolasKulka","date":"2019-03-05 13:48:55"},"1.4.4":{"tag":"1.4.4","author":"NicolasKulka","date":"2019-04-01 08:27:14"},"1.4.5":{"tag":"1.4.5","author":"NicolasKulka","date":"2019-05-15 07:26:16"},"1.4.6":{"tag":"1.4.6","author":"NicolasKulka","date":"2019-07-17 14:29:33"},"1.4.6.1":{"tag":"1.4.6.1","author":"NicolasKulka","date":"2019-11-13 08:36:09"},"1.4.7":{"tag":"1.4.7","author":"NicolasKulka","date":"2020-03-09 14:21:13"},"1.4.8":{"tag":"1.4.8","author":"NicolasKulka","date":"2020-04-14 08:04:28"},"1.4.9":{"tag":"1.4.9","author":"NicolasKulka","date":"2020-10-15 09:15:10"},"1.5":{"tag":"1.5","author":"NicolasKulka","date":"2020-11-24 10:11:25"},"1.5.1":{"tag":"1.5.1","author":"NicolasKulka","date":"2021-02-15 17:20:10"},"1.5.2":{"tag":"1.5.2","author":"NicolasKulka","date":"2021-02-26 08:13:31"},"1.5.3":{"tag":"1.5.3","author":"NicolasKulka","date":"2021-03-04 12:21:22"},"1.5.4":{"tag":"1.5.4","author":"NicolasKulka","date":"2021-08-30 09:27:41"},"1.5.5":{"tag":"1.5.5","author":"NicolasKulka","date":"2022-03-21 10:21:06"},"1.5.6":{"tag":"1.5.6","author":"NicolasKulka","date":"2022-05-25 13:10:50"},"1.5.7":{"tag":"1.5.7","author":"NicolasKulka","date":"2023-08-24 07:52:19"},"1.5.8":{"tag":"1.5.8","author":"NicolasKulka","date":"2024-01-17 14:27:47"},"1.5.8.1":{"tag":"1.5.8.1","author":"NicolasKulka","date":"2024-01-17 15:11:42"},"1.5.9":{"tag":"1.5.9","author":"NicolasKulka","date":"2024-06-07 07:45:38"},"1.5.9.1":{"tag":"1.5.9.1","author":"NicolasKulka","date":"2024-06-07 08:03:51"},"1.5.9.2":{"tag":"1.5.9.2","author":"NicolasKulka","date":"2025-06-24 07:45:17"}},"upgrade_notice":[],"ratings":{"1":1,"2":0,"3":0,"4":3,"5":79},"assets_icons":{"icon-128x128.jpg":{"filename":"icon-128x128.jpg","revision":1832086,"resolution":"128x128","location":"assets","locale":""},"icon-256x256.jpg":{"filename":"icon-256x256.jpg","revision":1832086,"resolution":"256x256","location":"assets","locale":""}},"assets_banners":{"banner-1544x500.jpg":{"filename":"banner-1544x500.jpg","revision":1832086,"resolution":"1544x500","location":"assets","locale":""},"banner-772x250.jpg":{"filename":"banner-772x250.jpg","revision":1832086,"resolution":"772x250","location":"assets","locale":""}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0","1.1","1.2","1.3","1.4","1.4.1","1.4.2","1.4.3","1.4.4","1.4.5","1.4.6","1.4.6.1","1.4.7","1.4.8","1.4.9","1.5","1.5.1","1.5.2","1.5.3","1.5.4","1.5.5","1.5.6","1.5.7","1.5.8","1.5.8.1","1.5.9","1.5.9.1","1.5.9.2"],"block_files":[],"assets_screenshots":{"screenshot-1.jpg":{"filename":"screenshot-1.jpg","revision":1832199,"resolution":"1","location":"assets","locale":""},"screenshot-2.jpg":{"filename":"screenshot-2.jpg","revision":1832199,"resolution":"2","location":"assets","locale":""},"screenshot-3.jpg":{"filename":"screenshot-3.jpg","revision":1832199,"resolution":"3","location":"assets","locale":""},"screenshot-4.jpg":{"filename":"screenshot-4.jpg","revision":1832199,"resolution":"4","location":"assets","locale":""},"screenshot-5.jpg":{"filename":"screenshot-5.jpg","revision":1832199,"resolution":"5","location":"assets","locale":""}},"screenshots":{"1":"Configuration","2":"Whitelist","3":"Blacklist","4":"Log","5":"WP Login"},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[710,4552,602,600,153881],"plugin_category":[38,54],"plugin_contributors":[77915,192025,78216],"plugin_business_model":[],"class_list":["post-82440","plugin","type-plugin","status-publish","hentry","plugin_tags-authentication","plugin_tags-limit-login","plugin_tags-login","plugin_tags-security","plugin_tags-wps-limit-login","plugin_category-authentication","plugin_category-security-and-spam-protection","plugin_contributors-nicolaskulka","plugin_contributors-wpformation","plugin_contributors-wpserveur","plugin_committers-nicolaskulka","plugin_support_reps-nicolaskulka","plugin_support_reps-wpserveur"],"banners":{"banner":"https:\/\/ps.w.org\/wps-limit-login\/assets\/banner-772x250.jpg?rev=1832086","banner_2x":"https:\/\/ps.w.org\/wps-limit-login\/assets\/banner-1544x500.jpg?rev=1832086","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/wps-limit-login\/assets\/icon-128x128.jpg?rev=1832086","icon_2x":"https:\/\/ps.w.org\/wps-limit-login\/assets\/icon-256x256.jpg?rev=1832086","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/wps-limit-login\/assets\/screenshot-1.jpg?rev=1832199","caption":"Configuration"},{"src":"https:\/\/ps.w.org\/wps-limit-login\/assets\/screenshot-2.jpg?rev=1832199","caption":"Whitelist"},{"src":"https:\/\/ps.w.org\/wps-limit-login\/assets\/screenshot-3.jpg?rev=1832199","caption":"Blacklist"},{"src":"https:\/\/ps.w.org\/wps-limit-login\/assets\/screenshot-4.jpg?rev=1832199","caption":"Log"},{"src":"https:\/\/ps.w.org\/wps-limit-login\/assets\/screenshot-5.jpg?rev=1832199","caption":"WP Login"}],"raw_content":"<!--section=description-->\n<h4>Fran\u00e7ais<\/h4>\n\n<p>Limitez le nombre de tentatives de connexion possibles via la page de connexion et en utilisant les cookies auth.\nWordPress par d\u00e9faut permet des tentatives de connexion illimit\u00e9es soit via la page de connexion ou en envoyant des cookies sp\u00e9ciaux. Cela permet aux mots de passe (ou hashs) d'\u00eatre craqu\u00e9s via la force brute relativement facilement.\nWPS Limit login limite les tentatives de connexion et bloque l'envoi d'autres tentatives \u00e0 une adresse Internet apr\u00e8s l'atteinte d'une limite sp\u00e9cifi\u00e9e, ce qui rend une attaque par force brute difficile, voire impossible.<\/p>\n\n<p>Caract\u00e9ristiques:<\/p>\n\n<ul>\n<li>Limiter le nombre de nouvelles tentatives lors de la connexion (pour chaque IP). Ceci est enti\u00e8rement personnalisable.<\/li>\n<li>Limitez le nombre de tentatives de connexion en utilisant des cookies d'autorisation de la m\u00eame mani\u00e8re.<\/li>\n<li>Informe l'utilisateur sur les tentatives restantes ou le temps de verrouillage sur la page de connexion.<\/li>\n<li>Journalisation et notification par courriel facultative.<\/li>\n<li>G\u00e8re le serveur derri\u00e8re le proxy inverse (reverse proxy).<\/li>\n<li>Il est possible de mettre en liste blanche \/ liste noire les adresses IP.<\/li>\n<li>Compatibilit\u00e9 avec le pare-feu du site Web Sucuri.<\/li>\n<li>Protection de passerelle <strong>XMLRPC<\/strong>.<\/li>\n<li><strong>Woocommerce<\/strong> protection de la page de connexion.<\/li>\n<li><strong>Compatibilit\u00e9 multi-sites<\/strong> avec des param\u00e8tres MU suppl\u00e9mentaires.<\/li>\n<\/ul>\n\n<p>Pour en savoir plus lisez l'article suivant : <a href=\"https:\/\/wpformation.com\/wps-limit-login\/\">https:\/\/wpformation.com\/wps-limit-login<\/a><\/p>\n\n<p>Ce plugin vous est gentiment propos\u00e9 par <a href=\"https:\/\/www.wpserveur.net\/?refwps=14&amp;campaign=wpslimitlogin\">WPServeur<\/a> l'h\u00e9bergeur sp\u00e9cialis\u00e9 WordPress.<\/p>\n\n<p>D\u00e9couvrez \u00e9galement nos autres extensions gratuites :\n- <a href=\"https:\/\/fr.wordpress.org\/plugins\/wps-hide-login\/\">WPS Hide Login<\/a> pour changer votre URL de connexion en ce que vous voulez.\n- <a href=\"https:\/\/fr.wordpress.org\/plugins\/wps-bidouille\/\">WPS Bidouille<\/a> pour optimiser votre WordPress et faire le plein d'infos.\n- <a href=\"https:\/\/fr.wordpress.org\/plugins\/wps-cleaner\/\">WPS Cleaner<\/a> pour nettoyer votre site WordPress.<\/p>\n\n<p>Ce plugin est seulement maintenu, ce qui signifie que nous ne garantissons pas un support gratuit. Envisagez de signaler un probl\u00e8me et soyez patient.<\/p>\n\n<h4>English<\/h4>\n\n<p>Limit the number of login attempts that possible both through the normal login as well as using the auth cookies.\nWordPress by default allows unlimited login attempts either through the login page or by sending special cookies. This allows passwords (or hashes) to be cracked via brute-force relatively easily.\nWPS Limit login blocks an Internet address from making further attempts after a specified limit on retries has been reached, making a brute-force attack difficult or impossible.<\/p>\n\n<p>Features:<\/p>\n\n<ul>\n<li>Limit the number of retry attempts when logging in (per each IP). This is fully customizable.<\/li>\n<li>Limit the number of attempts to log in using authorization cookies in the same way.<\/li>\n<li>Informs the user about the remaining retries or lockout time on the login page.<\/li>\n<li>Optional logging and optional email notification.<\/li>\n<li>Handles server behind the reverse proxy.<\/li>\n<li>It is possible to whitelist\/blacklist IPs.<\/li>\n<li>Sucuri Website Firewall compatibility.<\/li>\n<li><strong>XMLRPC<\/strong> gateway protection.<\/li>\n<li><strong>Woocommerce<\/strong> login page protection.<\/li>\n<li><strong>Multi-site<\/strong> compatibility with extra MU settings.<\/li>\n<\/ul>\n\n<p>To learn more read the following article: <a href=\"https:\/\/wpformation.com\/wps-limit-login\/\">https:\/\/wpformation.com\/wps-limit-login<\/a><\/p>\n\n<p>This plugin is kindly proposed by <a href=\"https:\/\/www.wpserveur.net\/?refwps=14&amp;campaign=wpslimitlogin\">WPServeur<\/a> the specialized WordPress web host.<\/p>\n\n<p>D\u00e9couvrez \u00e9galement nos autres extensions gratuites :\n- <a href=\"https:\/\/wordpress.org\/plugins\/wps-hide-login\/\">WPS Hide Login<\/a> to change your login URL to whatever you want.\n- <a href=\"https:\/\/wordpress.org\/plugins\/wps-bidouille\/\">WPS Bidouille<\/a> to optimize your WordPress and get more info.\n- <a href=\"https:\/\/wordpress.org\/plugins\/wps-cleaner\/\">WPS Cleaner<\/a> to clean your WordPress site.<\/p>\n\n<p>This plugin is only maintained, which means we do not guarantee free support. Consider reporting a problem and be patient.<\/p>\n\n<!--section=installation-->\n<h4>Fran\u00e7ais<\/h4>\n\n<ol>\n<li>Aller dans Extensions \u203a Ajouter.<\/li>\n<li>Rechercher <em>WPS Limit Login<\/em>.<\/li>\n<li>Recherchez ce plugin, t\u00e9l\u00e9chargez-le et activez-le.<\/li>\n<\/ol>\n\n<h4>English<\/h4>\n\n<ol>\n<li>Go to Plugins \u203a Add New.<\/li>\n<li>Search for <em>WPS Limit Login<\/em>.<\/li>\n<li>Look for this plugin, download and activate it.<\/li>\n<\/ol>\n\n<!--section=changelog-->\n<h4>1.5.9.2<\/h4>\n\n<ul>\n<li>Tested up to 6.8<\/li>\n<\/ul>\n\n<h4>1.5.9.1<\/h4>\n\n<ul>\n<li>Fix Fatal Error<\/li>\n<\/ul>\n\n<h4>1.5.9<\/h4>\n\n<ul>\n<li>Tested up to 6.5<\/li>\n<li>Add pub WPBoutik<\/li>\n<\/ul>\n\n<h4>1.5.8.1<\/h4>\n\n<ul>\n<li>Fix : Fatal error: Uncaught TypeError: Typed property WPS\\WPS_Limit_Login\\Plugin::$allow_local_options must be an instance of WPS\\WPS_Limit_Login\\mixed, bool used<\/li>\n<\/ul>\n\n<h4>1.5.8<\/h4>\n\n<ul>\n<li>Tested up to 6.4<\/li>\n<li>Fix Deprecated with PHP 8.3<\/li>\n<\/ul>\n\n<h4>1.5.7<\/h4>\n\n<ul>\n<li>Tested up to 6.3<\/li>\n<\/ul>\n\n<h4>1.5.6<\/h4>\n\n<ul>\n<li>Tested up to 6.0<\/li>\n<\/ul>\n\n<h4>1.5.5<\/h4>\n\n<ul>\n<li>Tested up to 5.9<\/li>\n<\/ul>\n\n<h4>1.5.4<\/h4>\n\n<ul>\n<li>Tested up to 5.8<\/li>\n<\/ul>\n\n<h4>1.5.3<\/h4>\n\n<ul>\n<li>Tested up to 5.7<\/li>\n<\/ul>\n\n<h4>1.5.2<\/h4>\n\n<ul>\n<li>Fix : remove WP_Review<\/li>\n<\/ul>\n\n<h4>1.5.1<\/h4>\n\n<ul>\n<li>Fix fatal error with vendor wp-dismissible-notices-handler and wp-review-me<\/li>\n<\/ul>\n\n<h4>1.5<\/h4>\n\n<ul>\n<li>Tested up to 5.6<\/li>\n<li>Add compatibility with PHP8<\/li>\n<\/ul>\n\n<h4>1.4.9<\/h4>\n\n<ul>\n<li>Fix : range_ip<\/li>\n<li>Add : button for add your ip in whitelist<\/li>\n<\/ul>\n\n<h4>1.4.8<\/h4>\n\n<ul>\n<li>Fix : save option \"wps_limit_lockout_notify\"<\/li>\n<\/ul>\n\n<h4>1.4.7<\/h4>\n\n<ul>\n<li>Tested up to 5.4<\/li>\n<\/ul>\n\n<h4>1.4.6.1<\/h4>\n\n<ul>\n<li>Fix : Security vulnerabilities<\/li>\n<\/ul>\n\n<h4>1.4.6<\/h4>\n\n<ul>\n<li>Fix : Security vulnerabilities (Thanks @juliobox)<\/li>\n<\/ul>\n\n<h4>1.4.5<\/h4>\n\n<ul>\n<li>Fix : \"Fatal error: Uncaught Error: Class 'WPS\\WPS_Limit_Login\\IXR_Error' not found\"<\/li>\n<\/ul>\n\n<h4>1.4.4<\/h4>\n\n<ul>\n<li>Fix : \"Fatal error: Uncaught Error: Class \u2018WPS\\WPS_Limit_Login\\WP_Error\u2019 not found\"<\/li>\n<\/ul>\n\n<h4>1.4.3<\/h4>\n\n<ul>\n<li>Fix : Fatal error on log<\/li>\n<\/ul>\n\n<h4>1.4.2<\/h4>\n\n<ul>\n<li>Fix : Error with library for compat WordPress and PHP<\/li>\n<\/ul>\n\n<h4>1.4.1<\/h4>\n\n<ul>\n<li>Fix : Remove message review if PHP is too old<\/li>\n<\/ul>\n\n<h4>1.4<\/h4>\n\n<ul>\n<li>Enhancement code with composer, namespace and autoload<\/li>\n<li>Fix remove review message<\/li>\n<\/ul>\n\n<h4>1.3<\/h4>\n\n<ul>\n<li>Update readme<\/li>\n<li>Add: review message<\/li>\n<\/ul>\n\n<h4>1.2<\/h4>\n\n<ul>\n<li>Remove: redirect activate<\/li>\n<\/ul>\n\n<h4>1.1<\/h4>\n\n<ul>\n<li>Enhancement: Add widget dashboard<\/li>\n<\/ul>\n\n<h4>1.0<\/h4>\n\n<ul>\n<li>Initial version.<\/li>\n<\/ul>","raw_excerpt":"WPS Limit login limit connection attempts by IP address","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/azb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/82440","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/azb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/azb.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/azb.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=82440"}],"author":[{"embeddable":true,"href":"https:\/\/azb.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/nicolaskulka"}],"wp:attachment":[{"href":"https:\/\/azb.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=82440"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/azb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=82440"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/azb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=82440"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/azb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=82440"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/azb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=82440"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/azb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=82440"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}