WordPress 安全性:保護您的網站的 16 個步驟
已發表: 2021-08-18在安全性方面,不存在特定於 WordPress 的安全類型。 所有網站或應用程序都存在所有安全問題。
不過,WordPress 安全問題引起了極大的興趣,因為它為大約 40% 的網絡提供支持,並且是開源的。 當一個人在 WordPress 核心或插件中發現漏洞時,其他使用它的網站就會變得容易受到攻擊,因為它們都使用相同的代碼。
另一方面,您可以使用大量插件來加強網站安全性。
在本專欄中,您將學習如何強化您的 WordPress 網站以抵禦不同類型的漏洞,儘管本文的範圍更廣,適用於所有類型的 Web 應用程序。
防範 WordPress 漏洞
最常見的漏洞類型是:
- 後門。
- 製藥黑客。
- 蠻力登錄嘗試。
- 惡意重定向。
- 跨站點腳本 (XSS)。
- 拒絕服務 (DDoS)。
這些是常見的漏洞類型,但這並不意味著它們僅限於這些。 當您考慮安全性時,一般來說,您應該以 360° 的方式思考。
入侵網站的方法沒有限制。 攻擊者可以使用多種技術來訪問您的站點。
例如,他們可以竊取您的 PC 並物理訪問您的計算機。 當從公共網絡登錄到您的網站時,他們還可以使用監視技術查看您的密碼。
讓我們深入研究如何加強我們的 WordPress 安裝,以使攻擊者的生活更加困難。
繼續閱讀以了解更多關於這 16 種加強 WordPress 網站安全性的方法:
- 使用 HTTPS。
- 始終使用強密碼。
- 使用密碼管理器來存儲您的密碼。
- 在登錄表單上啟用驗證碼。
- 防止暴力登錄嘗試。
- 使用雙重身份驗證。
- 保持最新的插件。
- 設置安全 HTTP 標頭。
- 為 WordPress 文件設置正確的文件權限。
- 從 WordPress 禁用文件編輯。
- 禁用所有不必要的功能。
- 隱藏 WordPress 版本。
- 安裝 WordPress 防火牆。
- 保留備份。
- 使用 SFTP。
- 監控用戶的活動。
1. 使用 HTTPS 保護您的網站
我們將從使用 HTTPS 保護網站開始並非偶然。
您所做的一切都流經網絡和線纜。 HTTP在瀏覽器和服務器之間以純文本形式交換數據。 因此,任何有權訪問服務器和瀏覽器之間網絡的人都可以查看您的未加密數據。
如果您不保護您的連接,您就有可能將敏感數據暴露給攻擊者。 使用 HTTPS,您的數據將被加密,即使攻擊者可以訪問您的網絡,他們也將無法讀取傳輸的數據。
因此,保護您的網站的第一步是啟用 HTTPS。 如果您還沒有遷移到 HTTPS,您可以使用本指南將您的 WordPress 遷移到 HTTPS。
可用於將 HTTP 遷移到 HTTPS 的工具和 WordPress 插件
- 更好的搜索替換。
- 數據庫搜索和替換腳本。
2. 始終使用強密碼
黑客訪問網站的最常見方式是通過弱密碼或 pwned 密碼。 這些使您容易受到暴力攻擊。
通過使用強密碼而不是下面列出的任何其他方式來增強您的安全性。
始終使用強密碼並定期檢查它們是否已被盜用。
增強密碼安全性的 WordPress 插件:
- 禁止 Pwned 密碼。
- 下載密碼策略管理器。
- 密碼 bcrypt。
3. 使用密碼管理器存儲您的密碼
當您從公共網絡登錄時,您無法確定誰在觀看您在筆記本電腦上輸入的內容或記錄您的密碼。
為了解決此問題,請使用密碼管理器輕鬆訪問您的密碼並將其存儲在安全的地方。
即使您的 PC 被訪問,他們也無法獲取您的密碼。 密碼管理器是基於瀏覽器的,而不是 WordPress 插件。
密碼管理器瀏覽器插件:
- 最後通行證。
- 1密碼。
- 北通。
4. 在登錄和註冊表中添加驗證碼
當您使用 HTTPS 保護您的網站並使用強密碼時,您已經讓黑客的生活變得非常艱難。
但是您可以通過將 CAPTCHA 添加到登錄表單來使其變得更加困難。

驗證碼是保護您的登錄表單免受暴力攻擊的好方法。
在 WordPress 登錄時添加驗證碼的插件:
- 登錄沒有驗證碼 reCAPTCHA。
- 登錄安全驗證碼。
5. 防止暴力登錄嘗試
登錄 CAPTCHA 將在一定程度上保護您免受暴力嘗試,但並非完全如此。 通常,一旦解決了驗證碼令牌,它們的有效期為幾分鐘。
例如,Google reCaptcha 的有效期為 2 分鐘。 在此期間,攻擊者可以利用這兩分鐘嘗試對您的登錄表單進行暴力登錄嘗試。
為了解決這個問題,您應該通過 IP 地址阻止失敗的登錄嘗試。
防止暴力攻擊的 WordPress 插件:
- WP 限制登錄嘗試。
- 限制重新加載的登錄嘗試。
6. 設置兩因素 (2FA) 身份驗證
使用登錄表單上的安全密碼和驗證碼,您會受到更多保護,是的。
但是,如果黑客使用監視方法並記錄您在視頻中輸入的密碼以訪問您的網站怎麼辦?
如果他們知道您的密碼,則只有雙重身份驗證可以保護您的網站免受攻擊者的侵害。

用於設置 2FA 身份驗證的 WordPress 插件:
- 兩個因素。
- 谷歌身份驗證器。
- WordPress 兩因素身份驗證(2FA,MFA)。
7. 使 WordPress 核心和插件保持最新
WordPress 核心和插件經常出現漏洞,一旦發現並報告。 確保使用最新版本更新您的插件,以防止網站因文件中已知和報告的漏洞而被黑客入侵。
我不建議切換到自動更新,因為它可能會在您不知情的情況下破壞您的網站。
但我強烈建議您通過在 wp-config.php 中添加這行代碼來啟用 WordPress 核心的小更新,因為這些更新包括核心的安全補丁。
定義(“WP_AUTO_UPDATE_CORE”,“次要”);
8. 設置安全 HTTP 標頭
安全標頭通過限制在瀏覽網站時可以在瀏覽器和服務器之間執行的操作,帶來了額外的保護層。
安全標頭旨在防止點擊劫持和跨站點腳本 (XSS) 攻擊。
安全標頭是:
- 嚴格的運輸安全 (HSTS)。
- 內容安全策略。
- X 框架選項。
- X 內容類型選項。
- 獲取元數據標頭。
- 推薦人政策。
- 緩存控制。
- 清除站點數據。
- 功能政策。
我們不會深入每個安全標頭的解釋,但這裡有一些插件可以修復它們。
啟用安全標頭的 WordPress 插件:
- 用於提高網站安全性的 HTTP 標頭。
- GD 安全標頭。
9. 為 WordPress 文件設置正確的文件權限
文件權限是託管 WordPress 文件的操作系統上的規則; 這些規則設置瞭如何讀取、編輯和執行文件。 這種安全措施至關重要,尤其是當您在共享主機上託管網站時。
如果設置不正確,當共享主機上的一個網站被黑客入侵時,攻擊者可以訪問您網站上的文件並讀取其中的任何內容 - 特別是 wp-config.php - 並獲得對您網站的完全訪問權限。

- 所有文件應為 644。
- 所有文件夾都應該是 775。
- wp-config.php 應該是 600。
上述規則意味著您的託管用戶帳戶可以讀取和修改文件,網絡服務器 (WordPress) 可以修改、刪除和讀取文件和文件夾。
其他用戶無法讀取 wp-config.php 的內容。 如果為 wp-config.php 設置 600 會使您的網站崩潰,請將其更改為 640 或 644。
10.從WordPress禁用文件編輯
這是 WordPress 中的一個已知功能,您可以從管理後端編輯文件。
這真的沒有必要,因為開發人員使用 SFTP 並且很少使用它。

11.禁用所有不必要的功能
WordPress 帶有許多您可能根本不需要的功能。 例如,WordPress 中的 XML-RPC 端點是為與外部應用程序通信而創建的。 攻擊者可以使用此端點進行暴力登錄。
使用插件禁用 XML-RPC-API 禁用 XML-RPC。
WordPress 內置的另一個問題是提供一個 REST-API 端點來列出網站上的所有用戶。
如果您將“/wp-json/wp/v2/users”附加到任何 WordPress 安裝,您將看到用戶名和用戶 ID 列表作為 JSON 數據。
通過將這行代碼添加到 functions.php 中禁用用戶 REST-API
功能 disable_users_rest_json( $response, $user, $request ){
返回 '';
}add_filter('rest_prepare_user', 'disable_users_rest_json', 10, 3);12.隱藏WordPress版本
WordPress 會自動在頁面的 HTML 中註入帶有 WordPress 版本的評論。 它為攻擊者提供了您安裝的 WordPress 的版本作為附加信息。

例如,如果您使用的 WordPress 版本的核心被報告存在漏洞,則攻擊者知道他可以使用報告的技術來入侵您的網站。
使用這些插件隱藏 WordPress 版本元標記:
- 元生成器和版本信息刪除器。
- Dawsun 的 WP Generator Remover。
13.安裝WordPress防火牆
防火牆是在網站上運行並分析任何傳入 HTTP 請求的 Web 應用程序。 它應用複雜的邏輯來過濾掉可能構成威脅的請求。
可以在防火牆的內置規則之上設置其規則以阻止請求。 一種常見的攻擊類型是 SQL 注入。
假設您運行一個易受 SQL 注入攻擊的 WordPress 插件,但您對此一無所知。 如果您運行防火牆,即使攻擊者知道插件中的安全漏洞,他也無法破解該網站。
這是因為防火牆會阻止那些包含 SQL 注入的請求。
防火牆將阻止來自 IP 的這些請求,並防止連續的危險請求到來。 防火牆還能夠通過檢測來自單個 IP 的過多請求並阻止它們來防止 DDoS 攻擊。
還可以運行在向 Web 服務器發出請求之前運行的 DNS 級防火牆。 一個例子是 Cloudflare DNS 防火牆。
這種方法的優點是它對 DDoS 攻擊更加健壯。
在服務器上運行的應用程序級防火牆讓 HTTP 請求到達網絡服務器,然後阻止它。 這意味著服務器會花費一些 CPU/RAM 資源來阻止它們。
使用 DNS 級別的防火牆,它不會消耗服務器資源,因此對攻擊更具可持續性。
您可以使用的 WordPress 防火牆插件:
- Wordfence 安全。
- 蘇庫裡。
- 多合一 WP 安全和防火牆。
- 防彈安全。
- 盾安全。
注意:如果您決定安裝防火牆,它們可能具有登錄暴力保護或 2F 身份驗證等功能,您可以使用它們的功能而不是安裝上述插件。
14. 保留備份
如果您被黑客入侵,最好的恢復方法是從未受感染的最新版本恢復網站。
如果您不存儲網站備份,那麼清理網站可能是一項耗時的操作。 在某些情況下,可能無法恢復所有信息,因為惡意軟件刪除了所有數據。
為了避免這種情況,請定期備份您的網站數據庫和文件。
檢查您的託管支持是否提供每日備份功能並啟用它。 如果沒有,您可以使用這些插件來運行備份:
- 備份。
- 上升氣流加。
- 備份好友。
- 博客保險櫃。
15. 使用 SFTP
許多開發人員已經使用 SFTP 連接到 Web 服務器,但重要的是要提醒這一點,以防萬一你仍然不這樣做。
與 HTTPS 一樣,SFTP 使用加密在網絡上傳輸文件,即使可以訪問網絡,也無法以純文本形式讀取文件。
16.監控用戶的活動
我們已經討論了很多方法來保護您的網站免受未知黑客的攻擊。 但是,當您的一位有權訪問網站管理員的員工做一些陰暗的事情(例如在內容中添加鏈接)時呢?
上述方法都無法檢測到陰暗的員工。
這可以通過查看活動日誌來完成。 通過查看每個用戶的活動,您可能會發現其中一名員工編輯了他們不應該編輯的文章。
您還可以查看看起來可疑的活動並查看進行了哪些更改。
用於監控用戶活動的 WordPress 插件:
- 活動日誌。
- 用戶活動日誌。
- WP 活動日誌。
請注意,您可能希望限制這些插件保留的期限(或記錄數)。 如果太多,它會使您的數據庫過載,並可能影響網站性能和速度。
如果你被黑了怎麼辦?
即使有安全專家的所有建議並知道如何保護您的網站免受黑客攻擊,它們仍然會發生。
如果您的網站被黑客入侵,您需要執行以下步驟來恢復:
- 首先更改您的所有電子郵件和其他個人密碼,因為黑客可能首先訪問了您的電子郵件,從而能夠訪問您的網站。
- 將您的網站恢復到最新的已知非黑客備份。
- 重置所有網站用戶的密碼。
- 如果有可用更新,請更新所有插件。
結論
在安全方面考慮 360°。 向所有員工強調安全的重要性,以便他們了解如果他們不遵守安全規則,公司可能遭受的後果。
如果您被黑客入侵,請從備份中恢復您的網站,並儘快更改您網站和電子郵件的所有密碼。

