{"id":160,"date":"2026-11-02T09:00:00","date_gmt":"2026-11-02T08:00:00","guid":{"rendered":"https:\/\/www.cisilino.com\/?p=160"},"modified":"2026-11-02T09:00:04","modified_gmt":"2026-11-02T08:00:04","slug":"wordpress-brute-force-login","status":"publish","type":"post","link":"https:\/\/www.cisilino.com\/en\/2026\/11\/02\/wordpress-brute-force-login\/","title":{"rendered":"WordPress brute force attacks: how to stop them at the login"},"content":{"rendered":"<p>This is how it goes: the site is slow at night and nobody knows why. In the logs there are hundreds of requests to <code>wp-login.php<\/code> from a handful of addresses, with usernames like <em>admin<\/em> or the domain name. It is a <strong>WordPress brute force<\/strong> attack: no flaw to exploit, just attempts until a password gives way.<\/p>\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.cisilino.com\/wp-content\/uploads\/2026\/10\/brute-force-attack-wordpress-login.webp\" alt=\"WordPress brute force attack: many thin lines converge on a yellow circle closed by a bar\" width=\"1200\" height=\"630\"\/><\/figure>\n<h2>What the plugin does against a WordPress brute force attack<\/h2>\n<p>Every failed login is recorded: IP, username tried, outcome, time. Never the password. When an IP goes over the threshold you have set, the plugin blocks what looks like a WordPress brute force attack by adding a rule to <code>.htaccess<\/code>. It is compatible with Apache 2.4 and 2.2. From then on that address&#8217;s requests stop at the web server. WordPress is not even loaded, so the site can breathe again.<\/p>\n<p>One detail that matters: the counter is an atomic operation on the database. Sending a hundred attempts at the same instant does not let anyone get past the threshold.<\/p>\n<h2>Where to see what happened<\/h2>\n<p>In <em>Settings \u203a Cisilino Site Defense Network<\/em> you will find the blocked IPs tab, where every WordPress brute force attack ends up. It has a filter and the list of the last 50 detections. If a customer locked themselves out, &#8220;Unblock&#8221; on the row and that&#8217;s it.<\/p>\n<h2>When there are many IPs<\/h2>\n<p>Blocking by IP has a known limit: if the WordPress brute force attack comes from hundreds of different addresses, each one has to cross the threshold first. With the Cisilino network, an IP already seen failing on another of your client&#8217;s sites is blocked before it even arrives. In any case, use non-obvious usernames and long passwords. The plugin removes the noise, but it does not make a weak password strong. The OWASP page on <a href=\"https:\/\/owasp.org\/www-community\/controls\/Blocking_Brute_Force_Attacks\" target=\"_blank\" rel=\"noopener\">blocking brute force attacks<\/a> is a neutral reference for the general principles.<\/p>\n<p>On nginx hosting the plugin records the attempts but cannot write the rule at server level.<\/p>\n<h2>Frequently asked questions<\/h2>\n<h3>How do you stop a WordPress brute force attack?<\/h3>\n<p>By counting failed logins per IP and blocking whoever goes over a threshold. The plugin does it by writing a rule in .htaccess, so the request stops before WordPress.<\/p>\n<h3>Does the plugin store the passwords that were tried?<\/h3>\n<p>No. It records the IP, the username tried, the outcome and the time, never the password.<\/p>\n<h3>Can I unblock an IP that was blocked by mistake?<\/h3>\n<p>Yes, from the blocked IPs list with the Unblock button on each row.<\/p>\n<h2>Read more<\/h2>\n<ul>\n<li><a href=\"https:\/\/www.cisilino.com\/?p=85\">WordPress IP whitelist: manual unblocking and timed bans<\/a><\/li>\n<li><a href=\"https:\/\/www.cisilino.com\/?p=103\">Shared IP blocking across WordPress sites with the panel<\/a><\/li>\n<li><a href=\"https:\/\/www.cisilino.com\/en\/2026\/10\/29\/cisilino-site-defense-network-security-plugin\/\">Cisilino Site Defense Network: the WordPress security plugin<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>A brute force attack on wp-login.php can go on all night. How the plugin blocks IPs in .htaccess before WordPress even loads.<\/p>\n","protected":false},"author":1,"featured_media":596,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"wpai_generated_summary":"","footnotes":""},"categories":[98],"tags":[160,156,204,284],"class_list":["post-160","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-csdn-en","tag-brute-force-en","tag-ip-blocking","tag-wordpress-login","tag-wp-login-php-en"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"A WordPress brute force attack on wp-login.php can go on all night. See how the plugin blocks IPs in .htaccess before WordPress even loads.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"matteocisilino\"\/>\n\t<meta name=\"google-site-verification\" content=\"_A-1f0dO30IDVHfP9muflI8kHQs-H4YOi8WLUkYzuLE\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/www.cisilino.com\/en\/2026\/11\/02\/wordpress-brute-force-login\/\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_GB\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Matteo Cisilino - Guide su WordPress, server e sicurezza\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"WordPress brute force attacks: how to stop them at login\" \/>\n\t\t<meta property=\"og:description\" content=\"A WordPress brute force attack on wp-login.php can go on all night. See how the plugin blocks IPs in .htaccess before WordPress even loads.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/www.cisilino.com\/en\/2026\/11\/02\/wordpress-brute-force-login\/\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/www.cisilino.com\/wp-content\/uploads\/2026\/10\/brute-force-attack-wordpress-login.webp\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/www.cisilino.com\/wp-content\/uploads\/2026\/10\/brute-force-attack-wordpress-login.webp\" \/>\n\t\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t\t<meta property=\"og:image:height\" content=\"630\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-11-02T08:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-11-02T08:00:04+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:title\" content=\"WordPress brute force attacks: how to stop them at login\" \/>\n\t\t<meta name=\"twitter:description\" content=\"A WordPress brute force attack on wp-login.php can go on all night. See how the plugin blocks IPs in .htaccess before WordPress even loads.\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/www.cisilino.com\/wp-content\/uploads\/2026\/10\/brute-force-attack-wordpress-login.webp\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BlogPosting\",\"@id\":\"https:\\\/\\\/www.cisilino.com\\\/en\\\/2026\\\/11\\\/02\\\/wordpress-brute-force-login\\\/#blogposting\",\"name\":\"WordPress brute force attacks: how to stop them at login\",\"headline\":\"WordPress brute force attacks: how to stop them at the login\",\"author\":{\"@id\":\"https:\\\/\\\/www.cisilino.com\\\/en\\\/author\\\/matteocisilino\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/www.cisilino.com\\\/en\\\/#organization\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/www.cisilino.com\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/brute-force-attack-wordpress-login.webp\",\"width\":1200,\"height\":630,\"caption\":\"WordPress brute force attack: many thin lines converge on a yellow circle closed by a bar\"},\"datePublished\":\"2026-11-02T09:00:00+01:00\",\"dateModified\":\"2026-11-02T09:00:04+01:00\",\"inLanguage\":\"en-GB\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.cisilino.com\\\/en\\\/2026\\\/11\\\/02\\\/wordpress-brute-force-login\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.cisilino.com\\\/en\\\/2026\\\/11\\\/02\\\/wordpress-brute-force-login\\\/#webpage\"},\"articleSection\":\"csdn, brute force, IP blocking, WordPress login, wp-login.php\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.cisilino.com\\\/en\\\/2026\\\/11\\\/02\\\/wordpress-brute-force-login\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.cisilino.com\\\/en\\\/#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.cisilino.com\\\/en\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.cisilino.com\\\/en\\\/category\\\/csdn-en\\\/#listItem\",\"name\":\"csdn\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.cisilino.com\\\/en\\\/category\\\/csdn-en\\\/#listItem\",\"position\":2,\"name\":\"csdn\",\"item\":\"https:\\\/\\\/www.cisilino.com\\\/en\\\/category\\\/csdn-en\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.cisilino.com\\\/en\\\/2026\\\/11\\\/02\\\/wordpress-brute-force-login\\\/#listItem\",\"name\":\"WordPress brute force attacks: how to stop them at the login\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.cisilino.com\\\/en\\\/#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.cisilino.com\\\/en\\\/2026\\\/11\\\/02\\\/wordpress-brute-force-login\\\/#listItem\",\"position\":3,\"name\":\"WordPress brute force attacks: how to stop them at the login\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.cisilino.com\\\/en\\\/category\\\/csdn-en\\\/#listItem\",\"name\":\"csdn\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.cisilino.com\\\/en\\\/#organization\",\"name\":\"Matteo Cisilino\",\"description\":\"Guide su WordPress, server e sicurezza\",\"url\":\"https:\\\/\\\/www.cisilino.com\\\/en\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/www.cisilino.com\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/logo-cisilino-512.png\",\"@id\":\"https:\\\/\\\/www.cisilino.com\\\/en\\\/2026\\\/11\\\/02\\\/wordpress-brute-force-login\\\/#organizationLogo\",\"width\":512,\"height\":512,\"caption\":\"Logo: un cerchio a sinistra che si divide in cerchi pi\\u00f9 piccoli\"},\"image\":{\"@id\":\"https:\\\/\\\/www.cisilino.com\\\/en\\\/2026\\\/11\\\/02\\\/wordpress-brute-force-login\\\/#organizationLogo\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.cisilino.com\\\/en\\\/author\\\/matteocisilino\\\/#author\",\"url\":\"https:\\\/\\\/www.cisilino.com\\\/en\\\/author\\\/matteocisilino\\\/\",\"name\":\"matteocisilino\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/www.cisilino.com\\\/en\\\/2026\\\/11\\\/02\\\/wordpress-brute-force-login\\\/#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/639872265f0661e8aee8924ba9d756b00ea816f8286fab99a5116c729d49618f?s=96&d=mm&r=g\",\"width\":96,\"height\":96,\"caption\":\"matteocisilino\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.cisilino.com\\\/en\\\/2026\\\/11\\\/02\\\/wordpress-brute-force-login\\\/#webpage\",\"url\":\"https:\\\/\\\/www.cisilino.com\\\/en\\\/2026\\\/11\\\/02\\\/wordpress-brute-force-login\\\/\",\"name\":\"WordPress brute force attacks: how to stop them at login\",\"description\":\"A WordPress brute force attack on wp-login.php can go on all night. See how the plugin blocks IPs in .htaccess before WordPress even loads.\",\"inLanguage\":\"en-GB\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.cisilino.com\\\/en\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.cisilino.com\\\/en\\\/2026\\\/11\\\/02\\\/wordpress-brute-force-login\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/www.cisilino.com\\\/en\\\/author\\\/matteocisilino\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/www.cisilino.com\\\/en\\\/author\\\/matteocisilino\\\/#author\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/www.cisilino.com\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/brute-force-attack-wordpress-login.webp\",\"@id\":\"https:\\\/\\\/www.cisilino.com\\\/en\\\/2026\\\/11\\\/02\\\/wordpress-brute-force-login\\\/#mainImage\",\"width\":1200,\"height\":630,\"caption\":\"WordPress brute force attack: many thin lines converge on a yellow circle closed by a bar\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.cisilino.com\\\/en\\\/2026\\\/11\\\/02\\\/wordpress-brute-force-login\\\/#mainImage\"},\"datePublished\":\"2026-11-02T09:00:00+01:00\",\"dateModified\":\"2026-11-02T09:00:04+01:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.cisilino.com\\\/en\\\/#website\",\"url\":\"https:\\\/\\\/www.cisilino.com\\\/en\\\/\",\"name\":\"Matteo Cisilino\",\"description\":\"Guide su WordPress, server e sicurezza\",\"inLanguage\":\"en-GB\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.cisilino.com\\\/en\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"WordPress brute force attacks: how to stop them at login","description":"A WordPress brute force attack on wp-login.php can go on all night. See how the plugin blocks IPs in .htaccess before WordPress even loads.","canonical_url":"https:\/\/www.cisilino.com\/en\/2026\/11\/02\/wordpress-brute-force-login\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"google-site-verification":"_A-1f0dO30IDVHfP9muflI8kHQs-H4YOi8WLUkYzuLE","miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BlogPosting","@id":"https:\/\/www.cisilino.com\/en\/2026\/11\/02\/wordpress-brute-force-login\/#blogposting","name":"WordPress brute force attacks: how to stop them at login","headline":"WordPress brute force attacks: how to stop them at the login","author":{"@id":"https:\/\/www.cisilino.com\/en\/author\/matteocisilino\/#author"},"publisher":{"@id":"https:\/\/www.cisilino.com\/en\/#organization"},"image":{"@type":"ImageObject","url":"https:\/\/www.cisilino.com\/wp-content\/uploads\/2026\/10\/brute-force-attack-wordpress-login.webp","width":1200,"height":630,"caption":"WordPress brute force attack: many thin lines converge on a yellow circle closed by a bar"},"datePublished":"2026-11-02T09:00:00+01:00","dateModified":"2026-11-02T09:00:04+01:00","inLanguage":"en-GB","mainEntityOfPage":{"@id":"https:\/\/www.cisilino.com\/en\/2026\/11\/02\/wordpress-brute-force-login\/#webpage"},"isPartOf":{"@id":"https:\/\/www.cisilino.com\/en\/2026\/11\/02\/wordpress-brute-force-login\/#webpage"},"articleSection":"csdn, brute force, IP blocking, WordPress login, wp-login.php"},{"@type":"BreadcrumbList","@id":"https:\/\/www.cisilino.com\/en\/2026\/11\/02\/wordpress-brute-force-login\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/www.cisilino.com\/en\/#listItem","position":1,"name":"Home","item":"https:\/\/www.cisilino.com\/en\/","nextItem":{"@type":"ListItem","@id":"https:\/\/www.cisilino.com\/en\/category\/csdn-en\/#listItem","name":"csdn"}},{"@type":"ListItem","@id":"https:\/\/www.cisilino.com\/en\/category\/csdn-en\/#listItem","position":2,"name":"csdn","item":"https:\/\/www.cisilino.com\/en\/category\/csdn-en\/","nextItem":{"@type":"ListItem","@id":"https:\/\/www.cisilino.com\/en\/2026\/11\/02\/wordpress-brute-force-login\/#listItem","name":"WordPress brute force attacks: how to stop them at the login"},"previousItem":{"@type":"ListItem","@id":"https:\/\/www.cisilino.com\/en\/#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/www.cisilino.com\/en\/2026\/11\/02\/wordpress-brute-force-login\/#listItem","position":3,"name":"WordPress brute force attacks: how to stop them at the login","previousItem":{"@type":"ListItem","@id":"https:\/\/www.cisilino.com\/en\/category\/csdn-en\/#listItem","name":"csdn"}}]},{"@type":"Organization","@id":"https:\/\/www.cisilino.com\/en\/#organization","name":"Matteo Cisilino","description":"Guide su WordPress, server e sicurezza","url":"https:\/\/www.cisilino.com\/en\/","logo":{"@type":"ImageObject","url":"https:\/\/www.cisilino.com\/wp-content\/uploads\/2026\/10\/logo-cisilino-512.png","@id":"https:\/\/www.cisilino.com\/en\/2026\/11\/02\/wordpress-brute-force-login\/#organizationLogo","width":512,"height":512,"caption":"Logo: un cerchio a sinistra che si divide in cerchi pi\u00f9 piccoli"},"image":{"@id":"https:\/\/www.cisilino.com\/en\/2026\/11\/02\/wordpress-brute-force-login\/#organizationLogo"}},{"@type":"Person","@id":"https:\/\/www.cisilino.com\/en\/author\/matteocisilino\/#author","url":"https:\/\/www.cisilino.com\/en\/author\/matteocisilino\/","name":"matteocisilino","image":{"@type":"ImageObject","@id":"https:\/\/www.cisilino.com\/en\/2026\/11\/02\/wordpress-brute-force-login\/#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/639872265f0661e8aee8924ba9d756b00ea816f8286fab99a5116c729d49618f?s=96&d=mm&r=g","width":96,"height":96,"caption":"matteocisilino"}},{"@type":"WebPage","@id":"https:\/\/www.cisilino.com\/en\/2026\/11\/02\/wordpress-brute-force-login\/#webpage","url":"https:\/\/www.cisilino.com\/en\/2026\/11\/02\/wordpress-brute-force-login\/","name":"WordPress brute force attacks: how to stop them at login","description":"A WordPress brute force attack on wp-login.php can go on all night. See how the plugin blocks IPs in .htaccess before WordPress even loads.","inLanguage":"en-GB","isPartOf":{"@id":"https:\/\/www.cisilino.com\/en\/#website"},"breadcrumb":{"@id":"https:\/\/www.cisilino.com\/en\/2026\/11\/02\/wordpress-brute-force-login\/#breadcrumblist"},"author":{"@id":"https:\/\/www.cisilino.com\/en\/author\/matteocisilino\/#author"},"creator":{"@id":"https:\/\/www.cisilino.com\/en\/author\/matteocisilino\/#author"},"image":{"@type":"ImageObject","url":"https:\/\/www.cisilino.com\/wp-content\/uploads\/2026\/10\/brute-force-attack-wordpress-login.webp","@id":"https:\/\/www.cisilino.com\/en\/2026\/11\/02\/wordpress-brute-force-login\/#mainImage","width":1200,"height":630,"caption":"WordPress brute force attack: many thin lines converge on a yellow circle closed by a bar"},"primaryImageOfPage":{"@id":"https:\/\/www.cisilino.com\/en\/2026\/11\/02\/wordpress-brute-force-login\/#mainImage"},"datePublished":"2026-11-02T09:00:00+01:00","dateModified":"2026-11-02T09:00:04+01:00"},{"@type":"WebSite","@id":"https:\/\/www.cisilino.com\/en\/#website","url":"https:\/\/www.cisilino.com\/en\/","name":"Matteo Cisilino","description":"Guide su WordPress, server e sicurezza","inLanguage":"en-GB","publisher":{"@id":"https:\/\/www.cisilino.com\/en\/#organization"}}]},"og:locale":"en_GB","og:site_name":"Matteo Cisilino - Guide su WordPress, server e sicurezza","og:type":"article","og:title":"WordPress brute force attacks: how to stop them at login","og:description":"A WordPress brute force attack on wp-login.php can go on all night. See how the plugin blocks IPs in .htaccess before WordPress even loads.","og:url":"https:\/\/www.cisilino.com\/en\/2026\/11\/02\/wordpress-brute-force-login\/","og:image":"https:\/\/www.cisilino.com\/wp-content\/uploads\/2026\/10\/brute-force-attack-wordpress-login.webp","og:image:secure_url":"https:\/\/www.cisilino.com\/wp-content\/uploads\/2026\/10\/brute-force-attack-wordpress-login.webp","og:image:width":1200,"og:image:height":630,"article:published_time":"2026-11-02T08:00:00+00:00","article:modified_time":"2026-11-02T08:00:04+00:00","twitter:card":"summary_large_image","twitter:title":"WordPress brute force attacks: how to stop them at login","twitter:description":"A WordPress brute force attack on wp-login.php can go on all night. See how the plugin blocks IPs in .htaccess before WordPress even loads.","twitter:image":"https:\/\/www.cisilino.com\/wp-content\/uploads\/2026\/10\/brute-force-attack-wordpress-login.webp"},"aioseo_meta_data":{"post_id":"160","title":"WordPress brute force attacks: how to stop them at login","description":"A WordPress brute force attack on wp-login.php can go on all night. See how the plugin blocks IPs in .htaccess before WordPress even loads.","keywords":null,"keyphrases":{"focus":{"keyphrase":"wordpress brute force"}},"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_custom_url":null,"og_image_custom_fields":null,"og_image_url":null,"og_image_width":null,"og_image_height":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_image_url":null,"twitter_title":null,"twitter_description":null,"schema_type":"default","schema_type_options":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"limit_modified_date":false,"ai":null,"breadcrumb_settings":null,"seo_analyzer_scan_date":null,"created":"2026-10-29 09:16:32","updated":"2026-10-29 19:00:03","focus_keyword":"wordpress brute force","additional_keywords":null,"truseo_locale":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.cisilino.com\/en\/\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.cisilino.com\/en\/category\/csdn-en\/\" title=\"csdn\">csdn<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tWordPress brute force attacks: how to stop them at the login\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/www.cisilino.com\/en\/"},{"label":"csdn","link":"https:\/\/www.cisilino.com\/en\/category\/csdn-en\/"},{"label":"WordPress brute force attacks: how to stop them at the login","link":"https:\/\/www.cisilino.com\/en\/2026\/11\/02\/wordpress-brute-force-login\/"}],"_links":{"self":[{"href":"https:\/\/www.cisilino.com\/en\/wp-json\/wp\/v2\/posts\/160","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.cisilino.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.cisilino.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.cisilino.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.cisilino.com\/en\/wp-json\/wp\/v2\/comments?post=160"}],"version-history":[{"count":7,"href":"https:\/\/www.cisilino.com\/en\/wp-json\/wp\/v2\/posts\/160\/revisions"}],"predecessor-version":[{"id":1264,"href":"https:\/\/www.cisilino.com\/en\/wp-json\/wp\/v2\/posts\/160\/revisions\/1264"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.cisilino.com\/en\/wp-json\/wp\/v2\/media\/596"}],"wp:attachment":[{"href":"https:\/\/www.cisilino.com\/en\/wp-json\/wp\/v2\/media?parent=160"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.cisilino.com\/en\/wp-json\/wp\/v2\/categories?post=160"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.cisilino.com\/en\/wp-json\/wp\/v2\/tags?post=160"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}