如何提高 WordPress 博客的安全性

已發表: 2022-02-26

WordPress 是 Internet 上最流行的自託管內容管理系統 (CMS),因此,與 Microsoft Windows 一樣,它也是最流行的攻擊目標。 該軟件是開源的,託管在 Github 上,黑客一直在尋找可以被利用來訪問其他 WordPress 站點的錯誤和漏洞。

WordPress 要確保 WordPress 安裝安全,您至少可以確保它始終運行最新版本的 WordPress.org 軟件,並且各種主題和插件也在更新。 以下是您可以採取的其他一些措施來提高 WordPress 博客的安全性:

#1。 使用您的 WordPress 帳戶登錄

當您安裝 WordPress 博客時,默認情況下第一個用戶稱為“管理員”。 您應該創建一個不同的用戶來管理您的 WordPress 博客,然後刪除“admin”用戶或將角色從“administrator”更改為“subscriber”。

您可以創建一個完全隨機(難以猜測)的用戶名,或者更好的替代方法是使用 Jetpack 啟用單點登錄並使用您的 WordPress.com 帳戶登錄您的自託管 WordPress 博客。

#2。 不要向全世界宣傳您的 WordPress 版本

WordPress 網站總是發布版本號,從而使人們更容易確定您是否運行的是過時的未打補丁的 WordPress 版本。

從頁面中刪除 WordPress 版本很容易,但您需要再進行一項更改。 從您的 WordPress 安裝目錄中刪除readme.html文件,因為它還會向全世界宣傳您的 WordPress 版本。

#3。 不要讓其他人“寫”到您的 WordPress 目錄

登錄到您的 WordPress Linux shell 並執行以下命令以獲取所有其他用戶可以在其中寫入文件的所有“打開”目錄的列表。

找 。 -type d -perm -o=w

您可能還想在 shell 中執行以下兩個命令來為所有 WordPress 文件和文件夾設置正確的權限(參考)。

查找 /your/wordpress/folder/ -type d -exec chmod 755 {} \; 查找 /your/wordpress/folder/ -type f -exec chmod 644 {} \;

對於目錄,755(rwxr-xr-x)表示只有所有者有寫權限,其他人有讀和執行權限。 對於文件,644(rw-r—r—)表示文件所有者擁有讀寫權限,而其他人只能讀取文件。

#4。 重命名您的 WordPress 表前綴

如果您使用默認選項安裝了 WordPress,則您的 WordPress 表的名稱類似於 wp posts 或 wp_users。 因此,將表 (wp) 的前綴更改為某個隨機值是一個好主意。 Change DB Prefix 插件可讓您通過單擊將表前綴重命名為任何其他字符串。

#5。 阻止用戶瀏覽您的 WordPress 目錄

這個很重要。 打開 WordPress 根目錄中的 .htaccess 文件,並在頂部添加以下行。

選項 - 索引

如果這些目錄中沒有默認的 index.html 或 index.php 文件,它將阻止外界看到您的目錄中可用的文件列表。

#6。 更新 WordPress 安全密鑰

轉到此處為您的 WordPress 博客生成六個安全密鑰。 打開 WordPress 目錄中的 wp-config.php 文件並用新的鍵覆蓋默認鍵。

這些隨機鹽使您存儲的 WordPress 密碼更加安全,另一個優點是,如果有人在您不知情的情況下登錄 WordPress,他們將立即註銷,因為他們的 cookie 現在將失效。

#7。 記錄 WordPress PHP 和數據庫錯誤

錯誤日誌有時可以提供關於哪些類型的無效數據庫查詢和文件請求正在影響您的 WordPress 安裝的強烈提示。 我更喜歡錯誤日誌監視器,因為它會定期通過電子郵件發送錯誤日誌,並將它們顯示為 WordPress 儀表板中的小部件。

要在 WordPress 中啟用錯誤日誌記錄,請將以下代碼添加到 wp-config.php 文件中,並記住將 /path/to/error.log 替換為日誌文件的實際路徑。 error.log 文件應放置在瀏覽器無法訪問的文件夾中(參考)。

定義('WP_DEBUG',真); if (WP_DEBUG) { 定義('WP_DEBUG_DISPLAY', false); @ini_set('log_errors', '開'); @ini_set('display_errors', '關閉'); @ini_set('error_log', '/path/to/error.log'); }

#9。 密碼保護管理員儀表板

使用密碼保護 WordPress 的 wp-admin 文件夾始終是一個好主意,因為該區域中的任何文件都不是為訪問您的公共 WordPress 網站的人準備的。 一旦受到保護,即使是授權用戶也必須輸入兩個密碼才能登錄到他們的 WordPress 管理儀表板。

10. 跟踪 WordPress 服務器上的登錄活動

您可以在 Linux 中使用“last -i”命令來獲取所有已登錄 WordPress 服務器的用戶及其 IP 地址的列表。 如果您在此列表中發現未知 IP 地址,那麼肯定是時候更改您的密碼了。

此外,以下命令將顯示按 IP 地址分組的較長時間的用戶登錄活動(將 USERNAME 替換為您的 shell 用戶名)。

最後-if /var/log/wtmp.1 | grep 用戶名 | awk '{打印 $3}' | 排序 | 唯一的-c

使用插件監控您的 WordPress

WordPress.org 存儲庫包含相當多的安全相關插件,它們將持續監控您的 WordPress 站點是否存在入侵和其他可疑活動。 以下是我推薦的基本內容。

  1. Exploit Scanner - 它將快速掃描您的所有 WordPress 文件和博客文章,並列出可能包含惡意代碼的文件。 垃圾郵件鏈接可能會使用 CSS 或 IFRAMES 隱藏在您的 WordPress 博客文章中,插件也會檢測到它們。
  2. WordFence Security - 這是一個非常強大的安全插件,你應該擁有。 它將您的 WordPress 核心文件與存儲庫中的原始文件進行比較,以便立即檢測到任何修改。 此外,該插件將在 'n' 次不成功的登錄嘗試後鎖定用戶。
  3. WP Notifier - 如果您不經常登錄 WordPress 管理儀表板,此插件適合您。 只要已安裝的主題、插件和核心 WordPress 有新的更新可用,它就會向您發送電子郵件警報。
  4. VIP Scanner - “官方”安全插件將掃描您的 WordPress 主題是否存在任何問題。 它還將檢測可能已註入您的 WordPress 模板的任何廣告代碼。
  5. Sucuri Security - 它監控您的 WordPress 以了解對核心文件的任何更改,在任何文件或帖子更新時發送電子郵件通知,並維護用戶登錄活動日誌,包括登錄失敗。

提示:您還可以使用以下 Linux 命令獲取最近 3 天內已修改的所有文件的列表。 將 mtime 更改為 mmin 以查看“n”分鐘前修改的文件。

找 。 -type f -mtime -3 | grep -v “/郵件目錄/” | grep -v “/日誌/”

保護您的 WordPress 登錄頁面

全世界都可以訪問您的 WordPress 登錄頁面,但如果您希望阻止非授權用戶登錄 WordPress,您有三個選擇。

  1. 使用 .htaccess 進行密碼保護 - 這涉及使用用戶名和密碼以及常規 WordPress 憑據來保護 WordPress 的 wp-admin 文件夾。
  2. Google Authenticator - 這個出色的插件為您的 WordPress 博客添加了兩步驗證,類似於您的 Google 帳戶。 您必須輸入密碼以及手機上生成的時間相關代碼。
  3. 無密碼登錄 - 使用 Clef 插件通過掃描二維碼登錄您的 WordPress 網站,您可以通過手機本身遠程結束會話。

另請參閱:必備的 WordPress 插件