WordPress網站安全的10個注意事項

傑哥
2021-02-19
WordPress網站安全

WordPress網站安全一直是重要課題。因為其使用率占所有網站的4成,很容易成為駭客和惡意軟體覬覦的對象。只要使用的核心或外掛有漏洞、或是主機、帳號密碼沒有好好管理,網站就可能被植入惡意或木馬程式。一旦網站被駭而不自知,不但有可能被Google列入黑名單,更嚴重的,將會無形中成為詐騙集團的幫兇。

最近的新聞,有詐騙集團製作假的網路銀行網站,發簡訊請用戶更新帳密,來騙取用戶的帳號密碼,各家銀行紛紛發訊息要客戶小心。傑哥也曾踫過,網站被駭之後,某些頁面變成了類似Paypal的釣魚網站,不知不覺地變成了詐騙集團的中繼站(好在沒有成功)。

因此,網站一旦完成上線,還需要遵循安全規範,將網站可能被攻擊的機會降到最低,同時可避免網站受到Google搜尋演算法的懲罰;若網站還包含了用戶資料(例如:會員網站),那麼也有可能威脅到用戶資料的安全。

因此,傑哥整理了10大方法與要點,幫助您提高WordPress網站的安全性:

WordPress網站備份

這個問題在網站備份的文章已經說過。在你的網站上線正式上線時,保留一個乾淨的網站備份是非常重要的。這樣可以保證即使在網站被駭之後,還是能夠恢復成乾淨而安全的網站,這一點是必須要做到的。

如果網站沒有辦法在一日內修復,那麼你的公司也會被客戶懷疑是不是發生了什麼問題?公司的可信度將會大大的降低。

使用WPvivid Backup Plugin備份還原網站,可以將網站恢復到之前凍結的狀態。還原之後,只要補強漏洞,就可以繼續經營網站。若是網站時常更新,那麼就需要做自動週期性備份,並且把備份放在異地的雲端硬碟中(例如Google雲端硬碟、AmazonS3、Dropbox等),才可保持最新的網站備份版本。

WordPress網站安全
WPvivid是WordPress網站備份的好幫手

選擇具有高安全性的主機

有些人會在WordPress上安裝安全性外掛,但這類安全性外掛,已經穿過主機而到了網站的層次。傑哥認為最好的防範方式,還是應從主機著手,從網站外部就開始抵擋不必要的駭客行為,對於網站的負擔來說會比較小。

所以,在選擇主機時,需要考慮到是否有防火牆和其他的安全機制。例如:若是自己使用VPS架站,使用Runcloud的服務,會有以下的安全機制:

  • 防火牆:預設只允許有用到的Port,僅允許流量由22 / tcp(SSH),80 / tcp(http),443 / tcp(https)這些端口進入。除非另有必要,不開放其他端口,以保持網站伺服器的單純性。
  • 網站用戶隔離:即使在一台伺服器上有多個網站,那麼每個網站應設定不同的擁有者,各個用戶與其網站必須存在沙盒中,並且彼此隔離。若一個網站被駭,其他的網站仍然安全,不會受到影響。
  • 防止DDOS攻擊:伺服器端需要有Fail2Ban這類的軟體進行駭客監視。如果發生SSH多次登錄失敗,那麼應該自動封鎖該登入的IP。此外,Fail2Ban還可監視並防止對網站進行暴力攻擊。

總之,租用主機時,除了考慮效能、對WordPress的支援性,主機的安全性,也是重要的考慮因素之一。

WordPress網站安全
Runcloud提供VPS所需的各種功能

加強最高管理者的帳號密碼

如果你的網站是WordPress做的,那麼很容易就猜到網站網址後面加上/wp-admin,這樣就可以進入後台登入頁面,而如果你又是使用預設的最高管理者名稱:admin,則駭客只要猜出密碼即可登入後台。

所以,第一個要做到的是,把最高權限的用戶名稱admin改掉,進入後台的使用者管理,然後創建一個新的最高權限的使用者,然後把admin刪除吧!

再來,就是密碼的問題,密碼千萬不要使用統編、電話…或是123456這樣簡單的數字,一下就會被破解的,必須使用較複雜的密碼,包含英文大寫、小寫、數字和!@#$%等符號。

許多人會說,這麼多密碼,要怎麼記憶呢!?就是怕忘記才設定簡單的密碼呀!傑哥在此推薦一款免費的密碼管理軟體:KeePassXC。我已經使用它多年,它是一套跨平台的密碼管理軟體,無論你是使用Windows或是Mac都可以使用。想像一下,把所有的密碼存在一個自己的資料庫中,這個資料庫沒有密碼誰也打不開,打開之後,才可以看到存在資料庫中的各個密碼。並且可以使用快捷鍵來協助你快速輸入帳密。

自訂後台的登入路徑

傑哥在WordPress必裝的10個推薦外掛有講到,更改後台的登入路徑,使駭客無法進入後台的登入畫面,這樣讓駭客連猜密碼的機會都沒有。

如前所述,大家都知道WordPress預設的後台路徑是/wp-admin/,所以駭客也會根據這個後台路徑來進行惡意破解。所以,你需要安裝WPS Hide Login這類的外掛,來幫助您更改後台登入的URL,這樣駭客就無法猜測你的後台路徑,從而大大減低了被駭客攻擊的機會。

到目前為止,我們不僅使駭客難以猜測帳號、密碼,而且隱藏了登入頁面的路徑。所以,我們已經大大提高WordPress的安全性,並使猜測密碼的暴力攻擊幾乎變得不可能。

WordPress網站安全
WPS Hide Login可以更改WordPress後台登入路徑

不要使用來路不明的佈景或外掛

傑哥在此呼籲:不要使用來路不明的佈景或外掛,一定要使用官方網站或開發商提供的正版套件。一來是對著作權的尊重;二來是因為來路不明的外掛,常常會被埋入一些木馬或惡意程式在裡面。

若使用這些來路不明的軟體,就等於是糟蹋了自己的網站,而無形中協助散佈惡意程式。後續帶來的麻煩可能更勝於你省的這些小錢。

所以再次強調,大家必須使用付費軟體。該付費付費,該升級升級,這些錢都應視為網站的基本開銷。

若是貪便宜使用了來路不明的軟體,會使你的網站變得很不安全。

保護您的wp-config.php文件

在WordPress網站中有一個非常重要的設定檔,檔名是wp-config.php。這個檔案預設是存在於網站的根目錄中,裡面記載了網站與資料庫連線的資料,以及密鑰和其他敏感資訊。

加強讀寫權限

既然wp-config.php如此重要,那麼我們應檢查並確保對此檔案設定了正確的權限。通常在預設的情況下,WordPress網站根目錄中的檔案權限為644,擁有者可以讀取、寫入;而群組和所有人可以讀取文件。

根據WordPress的說明文件,wp-config.php文件的權限應設置為440或400,以防止伺服器上的其他用戶讀取它。您可以使用SFTP工具,或主機的檔案管理介面來更改這項設定。(或請專業人員執行更改)

WordPress網站安全

使用網頁伺服器指令防止觀看

如果網站是Apache Web Server時,可以在.htaccess檔案中,加上以下指令:

<files wp-config.php>

order allow,deny

deny from all

</files>

若網站的Web伺服器是Nginx,則可將以下指令增加到設定文件中:

location ~* wp-config.php { deny all; }

以上這些更動,若沒有把握,請先備份你的原始設定。或是請專業人員協助處理。

禁用XML-RPC功能

WordPress之前有XML-RPC的規範,是為了標準化不同系統之間的溝通。(例如其他部落格平台或客戶端的程式)。以前Windows Live Writer離線編輯器,可以讓用戶離線編輯,編輯好再上傳發佈,就是使用XML-RPC的技術。

但現代,XML-RPC已被REST API取代。

如果網站上啟用了XML-RPC,則可能會被利用來向網站發送大量的pingback、發起DDoS攻擊,這可能會使伺服器超載而使網站掛點。

若未運用到XML-RPC,最簡單的方法是將它關閉。

而關閉XML-RPC的方法,可以是使用REST XML-RPC Data Checker plugin外掛,然後按XML-RPC 標籤,勾選將其完全關閉,這樣,就可以斷絕其他人利用XML-RPC來發送pingback。

WordPress網站安全

使用SSL(HTTP到HTTPS)

SSL是Internet上標準的安全協議,這項該協議在用戶端和伺服器之間建立了加密連線。如果你的網址開頭是http:// 這表示未安裝安全憑證;若開頭是https:// 才表示目前的網站有加密。

所以,透過啟用SSL憑證,可以使駭客更難以在伺服器和用戶端之間傳輸數據時竊取資料。

同時,Google也非常重視SSL憑證。若網站沒有SSL憑證,則在Chrome瀏覽器中會顯示為「不安全」。而不安全的網站,會使SEO的排名下降。

因此,現代的網站一定要加裝SSL安全憑證。

通常主機商會提供免費Let’sEncrypt  SSL憑證,需要請專業人員安裝,以提高網站傳輸資料時的安全性。

WordPress網站安全
圖片來源:https://pixabay.com/

使用最新的PHP版本

PHP是WordPress的網頁程式語言,目前最新版已經到了第8版,但是據統計,還有許多WordPress網站是使用PHP 5.6版。由於PHP版本,通常在發佈後的兩年內,還會進行錯誤和安全問題的修補。

而目前不再支援(2021年2月)PHP 7.2以下的版本。所以7.2以下的版本,較容易遭到安全漏洞的攻擊(愈舊的版本愈危險)。根據官方 WordPress Stats的統計,仍有1/4左右的WordPress網站的PHP版本,是在7.0以下。

若您不知道正在使用哪個版本的PHP?可以使用Pingdom檢查你的網站,或是諮詢你的網站工作人員。

使用最新版本的佈景佈景主題與外掛

除了核心更新之外,佈景主題與外掛,也是會有漏洞的,保持最新版本是加強WordPress安全性的重要方法。

許多外掛和佈景主題是需要付費才可以更新的,這也導致有些網站主人不願意付費,或者不知如何更新,長期下來,導致網站錯誤或是安全性的問題。

實務中,許多網站錯誤是因為舊的外掛版本與新的核心不相容。雖然WordPress本身是免費的,但是許多附加功能、開發商的套件是需要付費的,應該視這些付費為必要成本,以維護網站的更新。

在網站設計時,也必須了解哪些外掛需要付年費?價格多少?維護責任歸屬?維護方案是否包含更新…等等,有了這些維護協議之後,對於網站後續的經營才有保障。

WordPress網站安全
套件的更新,與WordPress網站安全有很大的影響

定期更新WordPress核心版本

WordPress是一個OpenSource的軟體,因為有非常多人使用,所以容易成為駭客的攻擊目標;但是另一方面,正由於它是OpenSource,也會有網友一直舉報它的錯誤和安全漏洞,WordPress的開發團隊也會一直進行修補。

因此,您需要將WordPress升級到最新版本,以修補已知的漏洞。個人的經驗是,升級前,需要做審慎的評估,是否所有的外掛都可支援更新後的核心版本?且升級之前一定要做整站備份。

結論

以上所說10點增進WordPress網站安全的方法,都是需要一一去執行的工作。所以,優良的網站不但需要美觀的設計,更需要本身結構的安全,還要顧及SEO優化。由此可見,你遇到的網站建置人員細心與否,真的是要看緣份啊!

如您所見,隨著網站的不斷發展,不要一直想去增加外掛,也同時要考慮到未來的維護性。這此就是傑哥會提到我的網站精神是「簡潔的網站」。若能保持簡潔,並遵守基本的安全規範,就可以避免掉潛在的網路威脅,發出網站應有的效果。

留下第一則留言

訂閱電子報