蠻力攻擊是通過試錯法嘗試解鎖受密碼保護的網頁的方法。劫機者使用複雜的機器人來猜測登入、註冊和其他頁面表單上的使用者名稱和密碼,並試圖接管該網站。機器人不斷嘗試猜測憑據並在您的伺服器上施加大量負載。
因此,即使您不是從安全形度考慮,也必須阻止這些機器人/使用者以減少託管伺服器上的負載。在本文中,讓我們討論如何防止WordPress中的暴力攻擊。
停止WordPress中的蠻力攻擊
有不同的方法可以保護您的登入頁面並阻止WordPress中的暴力攻擊。但是,您需要一個外掛來啟用這些功能,在本文中,我們將主要使用Jetpack和All In One WP Security and Firewall外掛進行說明。
有時您的託管公司可能會為此提供專用外掛。例如,您可以在使用SiteGround託管時使用SiteGround安全外掛。
1. 使用Jetpack外掛進行暴力預防
Jetpack提供了許多模組,“Security”是阻止暴力攻擊的模組之一。
- 轉到管理面板中的“Jetpack > Settings”選單。
- 當您在“Security”部分時,向下滾動並啟用“Protect”模組。
在Jetpack中啟用蠻力攻擊保護
- 啟用後,Jetpack將自動保護您的站點,而登入表單上沒有任何可見的驗證碼。
- 此外,您可以單擊“Protect”選項並新增IP地址列表以允許訪問您的登入頁面。該外掛僅允許列出的IP地址訪問您的WordPress登入頁面,所有其他IP將被阻止登入到管理儀表盤。
Jetpack中的白名單IP
2. 使用All in One WP Security & Firewall外掛進行暴力預防
Jetpack的暴力預防非常簡單,沒有太多其他選擇。All in One WP Security & Firewall外掛是流行且免費的安全外掛之一,有助於有效保護您的WordPress網站。從您的WordPress儀表盤安裝並啟用外掛。它將在管理儀表盤的側邊欄上建立一個新選單“WP Security”。
搜尋All in One WP Security & Firewall外掛
該外掛以積分衡量您網站的安全性,啟用各個安全選項將增加積分。為了防止暴力破解,請導航到“WP Security > Brute Force”部分以檢視多個選項,如下所示:
蠻力攻擊預防選項
在使用任何安全設定進行處理之前,請確保具備以下條件:
- 使用站點檔案和資料庫備份整個站點。該外掛將建立資料庫表並修改.htaccess等站點檔案。
- 確保您可以通過FTP訪問您的託管伺服器。當您被鎖定在管理儀表盤之外並且無法登入時,這是恢復檔案所必需的。
- 僅當該選項適用且您需要時才啟用。
我們將在以下部分解釋此外掛可用的其他選項。
3.重新命名登入頁面
通過將字尾“/wp-admin/”或“/wp-login.php?action=login”新增到您的站點,可以輕鬆訪問WordPress登入頁面。由於任何人都可以使用其中一個URL訪問您的站點,因此暴力預防的第一步是重新命名登入頁面。選中“啟用重新命名登入功能”框並提供難以猜測的所需字串。
重新命名WordPress登入頁面
例如,如果您想將登入頁面 URL 更改為“yoursite.com/login/”,則在文字框中輸入“login”一詞。
- 重新命名登入頁面將使您登出,您需要使用新 URL 再次登入。
- 此功能將影響所有使用者,因此如果您有使用者註冊或需要註冊才能在您的網站上發表評論,請不要啟用。
- 此功能將影響使用預設登入頁面的任何其他外掛的功能。
4. 基於Cookie的暴力預防
防止暴力攻擊的下一個選項是基於瀏覽器上可用的cookie。啟用覈取方塊“Enable Brute Force Attack Prevention”並在下一個“Secret Word”文字框中提供密碼。
WordPress的基於Cookie的暴力登入預防
例如,如果您想將密碼詞新增為“test”,那麼登入URL將為“http://yoursite.com/?test=1”。您可以將“/?secret-word=1”新增到您的站點URL以訪問登入頁面。此外,您可以設定“Re-direct URL”以將未經授權的使用者重定向到該頁面。通常,您可以將其設定為localhost IP 地址“http://127.0.0.1”,以防止伺服器負載。如果您有受密碼保護的頁面,則啟用覈取方塊“My Site Has Posts Or Pages Which Are Password Protected”。
如果您有一個使用Ajax的主題或外掛,則啟用覈取方塊“My Site Has a Theme or Plugins Which Use AJAX”。通常大多數主題和外掛都使用Ajax,因此您應該啟用此選項並測試您的站點是否正確載入。
- 此方法類似於重新命名登入頁面,因此上述所有警告也適用於此方法。
- 由於“rename login page”和“cookie based brute force prevention”方法都會更改登入頁面URL,因此您可以在您的站點上一次使用其中一種方法。
5.登入驗證碼
由於前兩個選項會影響多使用者環境,例如具有登入、註冊和電子商務功能的網站,因此僅啟用驗證碼是您可以用來阻止暴力攻擊的最簡單方法之一。在本節下,您有三個選項可以在表單上啟用數學驗證碼:
- 在預設的WordPress登入頁面上新增驗證碼。
- 在使用WordPress函式“wp_login_form()”的網站上使用的所有表單上啟用驗證碼。
- 在丟失密碼請求表單上啟用驗證碼。
All in One WP Security外掛中的登入驗證碼設定
6.登入白名單
與Jetpack的白名單管理類似,All in One WP Security & Firewall外掛也提供“Login Whitelist”選項。這將只允許列出的IP地址訪問您的WordPress登入頁面,而所有其他IP地址將被攔截。
使用All in One WP Security外掛設定登入IP白名單
7.Honeypot保護
最後一個選項是啟用“Enable Honeypot On Login Page”。這將在登入表單上設定一個新欄位,該欄位對人類使用者不可見,僅對機器人可見。由於機器人用於填寫登入表單上的所有欄位,如果隱藏欄位被填寫,外掛將停止訪問。因此有助於有效地停止機器人。
WordPress登入頁面的Honeypot設定
8. 限制登入嘗試
限制登入嘗試是防止WordPress暴力攻擊的主要解決方案。All In One WP Security外掛還具有限制登入嘗試次數的選項。但是,如果您不想使用繁重的外掛,則可以使用專門的外掛來限制登入嘗試。例如,您可以使用限制登入嘗試重新載入外掛來配置任何人都可以嘗試登入的允許嘗試次數。如果達到限制,外掛將攔截IP地址並通知管理員。通過這種方式,您可以允許合法使用者登入,同時在幾次嘗試後阻止自動機器人。
小結
All in One WP Security & Firewall外掛提供了保護您的WordPress網站的詳盡方法。儘管這看起來很有吸引力,但請確保測試每個功能並僅在您的站點需要時使用。重新命名登入頁面、基於cookie的選項和IP白名單可用於沒有使用者註冊的單個使用者站點。其餘選項,如啟用登入驗證碼和Honeypot,可以在所有型別的網站上使用,沒有任何問題。您還可以一起使用“Jetpack”和“All in One WP Security & Firewall”外掛來阻止對您網站的暴力攻擊。
評論留言