WordPress安全防護終極指南

對於任何WordPress網站所有者來說,安全都是一個極為重要的主題。谷歌搜尋每天將大約10000個網站列入惡意軟體黑名單,每週將大約50000個網站列入網路釣魚黑名單。

儘管WordPress核心非常安全,並且經過數百名開發人員的定期審查,但你仍然還有很多事情可以做。安全不僅僅是消除風險,也與降低風險有關。作為網站所有者,你可以採取各種措施,來確保網站免受安全漏洞的侵害。

網站遭到入侵可能會嚴重損害你的業務收入和品牌聲譽,駭客可以竊取使用者資訊、盜用金融資料、植入後臺程式碼,甚至將惡意軟體分發給你的使用者。更糟糕的是,你可能不得不向駭客支付勒索費用,只是為了重新獲得網站的訪問許可權。

保持WordPress更新

WordPress是一個定期維護和更新的開源軟體,預設情況下會自動安裝次要更新,對於主要版本,你需要手動操作。除此之外,你還可以獲得成千上萬的主題和外掛,大部分都由第三方開發人員維護,也定期釋出更新。

WP Admin Update Core

對於WordPress網站的安全性和穩定性來說,數量如此龐大的更新至關重要,你必須確保所有核心、外掛和主題都是最新的。

強密碼和使用者許可權

盜取密碼是駭客最喜歡使用的攻擊手段之一,你可以使用網站獨有的強密碼來解決這個難題,不僅適用於WordPress儀表板,還可用於FTP賬戶、資料庫、虛擬主機,以及自有網域的電子郵件地址。然而,強密碼很難被記住,導致很多初學者不喜歡使用。好訊息是,你根本不必親自記住這些繁雜的密碼,密碼管理器可以解決這個問題。

降低風險的另一種方法,除非絕對必要,否則不要授予任何人訪問WordPress管理員賬戶的許可權。如果你擁有龐大的團隊或來賓作者,在為他們新增賬戶之前,請確保自己瞭解WordPress中所有的角色功能。

虛擬主機的作用

你的虛擬主機在WordPress網站安全中起著重要作用,像BlueHostSiteGroundKinsta之類的優質託管服務商會採取額外措施來保護其伺服器免受常見威脅,他們通常採取以下措施來保護網站和資料:

  • 不斷監視網路中的可疑活動
  • 提供適當工具來防止大規模分散式拒絕服務攻擊(DDOS)
  • 使伺服器軟體和硬體保持最新狀態,以防止駭客利用舊版本中的已知漏洞
  • 部署災難恢復和事故計劃,從而在發生重大故障時保護你的資料

在共享託管計劃中,你與許多其他客戶共享伺服器資源,這會帶來跨站點汙染的風險,駭客可以使用鄰近站點來攻擊你的網站。WordPress專用託管服務可以為你提供更安全的平臺,託管商負責自動更新、自動備份、安全配置等任務,以全方位保護你的站點,我們建議使用KinstaWP Engine作為首選。

輕鬆實現WordPress安全

對於初學者而言,提高WordPress安全性可能是一個令人生畏的想法 —— 你並不孤單,我們已經幫助成千上萬的新手強化了他們的網站安全性。接下來,我們將展示如何透過點選按鈕來實現這個目標,無需任何編碼經驗。

1. 安裝備份解決方案

備份是抵禦任何網路攻擊的第一道防線,請記住,沒有任何事物能夠保證100%安全。如果政府、銀行的網站可以被駭客入侵,你的網站也可以。備份可以讓你快速恢復WordPress網站,以防萬一。

你可以使用很多WordPress備份外掛來確保資料安全,關於備份需要注意的是:定期將全站資料儲存到遠端位置(而不是主機託管賬戶),Amazon S3、One Drive、Dropbox等雲服務都是不錯的選擇。

根據網站的更新頻率,理想的設定是每天一次或即時備份,你可以使用UpdraftPlusVaultPress等外掛輕鬆完成這個操作,它們安全可靠且簡潔易用。

2. 最好的安全外掛

備份之後,接下來要做的是設定審查和監控系統,以便讓你跟蹤網站上發生的一切。這包括檔案完整性監控、失敗的登入嘗試、惡意軟體掃描等等,幸運的是,免費安全外掛Sucuri Security可以解決所有這些問題。

安裝並激活外掛後,你需要轉到WordPress儀表板中的Sucuri選單,首先生成一個免費的API金鑰,以便啟用日誌記錄審查、完整性檢查、電子郵件警報和其他重要功能。

WP Admin Sucuri Security

接下來,從設定選單中點選Hardening(強化)標籤,遍歷所有選項,然後點選右側的所有Apply Hardening按鈕。

WP Admin Sucuri Security Hardening

這些選項可以鎖定駭客在攻擊中使用的關鍵區域,付費升級的唯一加固功能是應用程式防火牆。強化部分設定完後,基本上可以滿足大多數網站的需求,不需要做其他的更改。

3. 啟用網路應用防火牆

保護網站並對WordPress安全充滿信心的最簡單方法是使用應用程式防火牆(WAF),它會在所有惡意流量到達站點之前將其阻止。

  • DNS級網站防火牆:透過雲伺服器路由你的網站流量,只將真正的有效流量傳送到你的網站託管伺服器
  • 應用程式級防火牆:在流量到達伺服器後、載入大多數WordPress指令碼之前檢查流量。與DNS防火牆相比,應用程式防火牆在減少伺服器負載方面不夠有效

我們使用Sucuri並將其評選為最好的WordPress應用程式防火牆,帶有惡意軟體清除和黑名單清除保證。基本上,如果你在其監控下被入侵,開發團隊保證(無論你有多少頁面)會修復你的網站。這是一個強大的承諾,因為修復被黑網站非常昂貴,安全專家通常每小時收取$250,而你能夠以每年$199的價格獲得整個Sucuri安全堆疊。

4. 將網站遷移至SSL/HTTPS

安全套接層(SSL)是對網站和使用者瀏覽器之間的資料傳輸進行加密的協議,這種加密使第三方很難嗅探和竊取資訊。啟用SSL之後,你的網站將使用HTTPS而不是HTTP,並且在瀏覽器的位址列旁邊還會顯示一個掛鎖標誌。

SSL證書通常由專業的數字證書認證機構頒發,價格為$80~$10000/年不等,由於成本增加,很多網站所有者選擇繼續使用不安全的HTTP協議。為了解決這個問題,一個名為Let's Encrypt的非營利組織決定提供免費的SSL證書,他們的專案很快得到Google、Facebook、Mozilla等公司的支援。

如今,在WordPress網站上使用SSL非常容易,很多網路託管公司都提供免費的SSL證書。

進一步提升WordPress安全性

到目前為止,如果已經做完上述所有事情,你的網站狀態就會很好。但是,與往常一樣,你可以採取更多措施以進一步加強WordPress安全性,其中有些步驟可能需要編碼知識。

1. 更改預設的admin使用者名稱

預設的WordPress後臺管理員使用者名稱是admin,由於使用者名稱佔到登入憑據的一半,因此駭客更對你的網站容易進行暴力破解。幸運的是,很多虛擬主機託管商改變了這一點,允許你在安裝WordPress時自定義使用者名稱。

然而,某些一鍵安裝程式仍然將預設的管理員使用者名稱設定為admin,你可以使用三種方法來進行曲線調整:

2. 停用檔案編輯

WordPress帶有內建的程式碼編輯器,可以讓你直接在儀表板中編輯主題和外掛檔案,但如果使用不當,這個功能可能會帶來安全隱患,我們建議你將其關閉。

WP Admin Theme Editor

你可以在wp-config.php檔案中新增以下程式碼來實現這個目的:

// 停用檔案編輯
define( 'DISALLOW_FILE_EDIT', true );

另外,你也可以使用上面提到的Sucuri外掛中的Hardening功能,只需點選一下就能完成這個操作。

3. 在某些WordPress目錄停用PHP檔案執行

加強WordPress安全性的另一種方法是在不需要的目錄(例如/wp-content/uploads/)中停用PHP檔案執行。你可以開啟文字編輯器(例如記事本)並貼上以下程式碼:

<Files *.php>
 deny from all
</Files>

接下來,將檔案另存為.htaccess,然後使用FTP客戶端上傳到網站的/wp-content/uploads/目錄。另外,Sucuri同樣可以讓你一鍵完成這項操作。

4. 限制登入嘗試

預設情況下,WordPress允許使用者進行多次登入嘗試,這使你的站點很容易遭到暴力破解攻擊。為了避免這個問題,你需要限制使用者的嘗試次數,如果使用Sucuri內建的應用程式防火牆,你將不需做任何操作,外掛會自動進行處理。

但是,如果你沒有防火牆,請安裝並激活Login LockDown外掛,然後訪問設定Login LockDown選單以進行設定:

WP Admin Options General Login LockDown

5. 新增雙重身份驗證

雙重身份驗證技術要求使用者使用兩步驗證方法進行登入,第一步是使用者名稱和密碼,第二步要求你使用單獨的裝置或應用進行驗證。大多數頂級線上網站,例如Google、Facebook、Twitter都可以為你的賬戶啟用這項功能,你的WordPress網站也能夠實現這一點。

首先,安裝並激活Two Factor Authentication外掛,然後點選WordPress儀表板中的Two Factor Auth選單:

WP Admin Two Factor Auth User

接下來,在智慧手機上安裝並開啟身份驗證應用程式,其中有幾種可用的選項,例如:

  • 谷歌身份驗證器
  • Authy
  • LastPass身份驗證器

在這篇文章中,我們使用谷歌身份驗證器作為示例,開啟手機上的應用程式,然後點選右下角的 按鈕:

Google Authenticator

應用程式將會詢問你是否要掃描條形碼或輸入秘鑰,選擇掃描條形碼選項,然後將手機的相機對準外掛設定頁面上顯示的二維碼。掃描成功後,你的身份驗證應用程式就會新增一項。下次登入網站時,你需要首先輸入密碼,然後輸入身份驗證器上的驗證碼:

WP Login Two Factor Auth

6. 更改WordPress資料庫字首

預設情況下,WordPress使用wp_作為資料庫中的表格字首,如果你的WordPress站點使用預設的表字首,駭客將很容易猜測出所有表名。為了提高安全性,你可以使用MySQL客戶端來更改資料庫的表字首。

請注意:如果操作失誤,你的網站很可能無法開啟。只有在對自己的編碼技能感到自信的情況下,你才可以進行這項操作。

7. 停用目錄索引和瀏覽

駭客可以使用目錄瀏覽來發現你是否存在已知漏洞的檔案,然後利用這些檔案獲得訪問許可權。其他人還可以使用目錄瀏覽來檢視靜態檔案、影像副本、目錄結構等資訊。因此,我們強烈建議你關閉目錄索引和瀏覽的功能。

Directory Browsing

使用FTPcPanel的檔案管理器連線到自己的網站,在根目錄找到.htaccess檔案,然後在檔案末尾新增以下行:

Options -Indexes

8. 停用XML-RPC

自從WordPress 3.5版本開始,預設會啟用XML-RPC,以便將WordPress網站與網頁和移動應用程式連線起來,但由於其功能強大,很容易成為暴力破解的目標。例如,傳統上,如果駭客想要在你的網站上嘗試500個不同的密碼,他們將不得不進行500次單獨的登入嘗試,但使用XML-RPC,駭客只需傳送一次請求,就可以把所有密碼組合試一遍。

3種停用XML-RPC的方法:

1. 將以下程式碼貼上到.htaccess檔案中:

<Files xmlrpc.php>
 order deny,allow
 deny from all
</Files>

2. 將以下php程式碼貼上到全域性設定:

add_filter('xmlrpc_enabled', '__return_false');

3. 安裝ClearfyDisable XML-RPC外掛。

9. 自動登出已登入的空閒使用者

有時候,已登入使用者可能從螢幕前離開,這會帶來安全風險,其他人可以劫持他們的會話、更改密碼或重設賬戶。很多銀行和金融站點都會自動登出沒有活動的使用者,你也可以在WordPress網站上實現類似功能。

只需安裝並激活Inactive Logout外掛,然後訪問設定Inactive Logout選單以配置外掛:

WP Admin Options General Inactive Logout

10. 在登入頁面新增安全問題

在登入頁面新增安全問題,使得其他人更難獲得未經授權的訪問。上述身份驗證外掛Two Factor Authentication帶有類似功能,可以幫助你實現這一點。

WP Login With Security Question

我想要...


程式設計師怎樣成為一名自由職業者

成為一名自由程式設計師是一個相當有利可圖的前景,尤其是對於渴望自由和主宰自己 ...

Make Money With Photography

怎樣透過攝影賺錢

如果你正在尋找賺錢的方法,首先應該考慮自己的特長、愛好,以及喜歡做的事情 ...

怎樣在TikTok上賺錢

自從成立以來,TikTok一直是廣受歡迎的社交媒體平臺,人們被輕鬆、簡短 ...

Make Money Online As A Computer Programmer

程式設計師怎樣在網上賺錢

讓我們面對現實,軟體工程師的工資相當高,與大多數其他職業相比,更容易過上 ...

Make Money Blogging

怎樣透過個人部落格網站賺錢

幾年前,我們意識到很多開設網站的博主們正在賺錢,有些甚至賺到了鉅額數字。 ...

Start A Successful Blog

怎樣搭建個人部落格網站

部落格是一個可以定期釋出和分享內容的線上平臺,就像一本數字日記或線上日記, ...