9 個提升 WordPress 網站安全性的方法

标签: 熱門主題 編輯推薦 WordPress WP 安全套件 | 发表时间:2014-07-01 15:39 | 作者:Pseric
出处:http://free.com.tw

本文參考資料為 How to Improve the Security of your WordPress Blog, 已取得原作者 Amit Agarwal 授權。

大約一個月前,這個部落格被黑客入侵(編按:Amit Agarwal 的網站)。而其他托管於相同主機商的網站像是 ctrlq.org 和 hundredzeros.com 也深受其害,黑客成功從網路上拿下了這些網站。

托管網站的主機商表示這可能發生於某些使用舊版的 WordPress 網站,導致密碼不幸洩漏,這段時間雖然歷經一些艱難,但幸運的是被刪除的網站已經回復,且流量也回到正常。

9 個提升 WordPress 網站安全性的方法

以下是我所做的變更,用來提高我的 WordPress 網站安全性,縱使這樣的意外可能再次發生。

#1 使用你的 Email 作為登入帳號

當你安裝完一個 WordPress 網站時,預設的第一位用戶為 “admin”。你應該建立不同的使用者名稱來管理你的 WordPress 網站,並將預設使用者 “admin” 刪除,或是將它的權限從「系統管理員」降級為「讀者」。

你也可以建立一個完全亂數(難以被猜中)的使用者名稱,然後使用你的 Email 來登入 WordPress。外掛 WP-Email Login 可以加入此支援,使用你的 Email 取代帳號登入。

#2 不要向全世界展示你的 WordPress 版本

WordPress 網站會在原始碼顯示版本號,讓其他人能夠知道你正在執行舊的 WordPress。

要從網頁裡移除 WordPress 版本是很簡單的一件事,但你需要做一些額外的補強,從你的 WordPress 目錄將 readme.html 檔案刪除,因為它也會把你所使用的 WordPress 版本展示給全世界。

#3 別讓其他人擁有”寫入”你 WordPress 目錄的權限

登入你的 WordPress 網站 Linux 系統列,執行以下指令來取得所有「公開」、其他用戶皆能寫入的目錄清單。

find . -type d -perm -o=w

你也許可以執行以下兩行指令,來將你 WordPress 內的檔案和目錄設定為正確的權限( 參考資料)。

find /your/wordpress/folder/ -type d -exec chmod 755 {} \;
find /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 檔案,然後在最上方加入這行。

Options -Indexes

這能夠防止其他人在能建立檔案清單時看到你資料夾內的所有檔案。例如目錄下缺少預設的 index.php 或 index.html 時。

#6 更新 WordPress 安全密鑰

開啟此網頁來為你的 WordPress 網站產生八組安全密鑰。開啟 WordPress 目錄下的 wp-config.php 檔案,將預設的密鑰以產生的密鑰取而代之。

這些隨機的字串能使你儲存於 WordPress 的密碼更加安全,另一個好處是,當有人在你不知情的情抗下登入 WordPress,他們將會被立即登出,使他們的 cookies 失效。

#7 保留 WordPress PHP 和資料庫錯誤記錄

從錯誤記錄有時候可以發現針對你 WordPress 所發出的無效資料庫查詢或檔案查詢。我更喜歡外掛 Error Log Monitor,因為它能定期透過 Email 發送錯誤日誌到你的信箱,也能顯示於你的 WordPress 控制台。

要在 WordPress 啟用錯誤日誌功能,將以下程式碼加入你的 wp-config.php 檔案,記得要把 /path/to/error.log 替換為你的日誌文件實際路徑。error.log 應該放在無法直接從瀏覽器存取得到的目錄。( 參考資料

define('WP_DEBUG', true);
if (WP_DEBUG) {
 define('WP_DEBUG_DISPLAY', false);
 @ini_set('log_errors', 'On');
 @ini_set('display_errors', 'Off');
 @ini_set('error_log', '/path/to/error.log');
}

#8 以密碼保護 Admin 控制台

使用密碼來保護 wp-admin 目錄是一個不錯的方法,因為瀏覽你的公開 WordPress 網站並不需要用到這目錄下的任何檔案。一旦設定完成,即使是授權的用戶也需要輸入兩道密碼才能登入他們的 WordPress 控制台。

#9 追蹤你的 WordPress 伺服器登入動態

你可以在 Linux 下使用 “last -i” 指令來列出所有登入你 WordPress 伺服器的使用者,包括他們的 IP 位址。如果你發現清單內有未知的 IP 來源,那肯定要修改密碼了。

此外,下面的指令將顯示較長時間區間的登入動態,並使用 IP 位址分組(將 USERNAME 改為你的使用者名稱)。

last -if /var/log/wtmp.1 | grep USERNAME | awk '{print $3}' | sort | uniq -c

使用外掛來監控你的 WordPress 網站

WordPress.org 外掛庫包含不少好用的安全相關外掛,可以持續監控你的 WordPress 網站是否有被入侵,或是其他可疑活動。這些是我會建議使用,也較為基本的安全外掛。

  1. Exploit Scanner – 它會迅速掃描你的所有 WordPress 檔案和文章,並列出潛藏惡意程式碼的。例如垃圾鏈結可能會使用 CSS 或 IFRAME 方式隱藏在你的 WordPress 網誌文章裡,而這個外掛可以將它們找出來。
  2. WordFence Security – 這是一個非常強大、且應該使用的安全外掛。它會比對你 WordPress 的核心檔案和原始檔案間是否已被修改。而且,該外掛會鎖定嘗試登入你的網站卻失敗的使用者。
  3. WordPress Sentinel – 另一個實用的外掛,可以監控你的 WordPress 檔案,當有任何檔案被加入、刪除或修改時會發出警告。
  4. WP Notifier – 如果你不常登入你的 WordPress 控制台,那這外掛適合你。它會在你安裝的佈景主題、外掛和 WordPress 核心有新的更新時以 Email 通知你。
  5. VIP Scanner – “官方”安全外掛將掃描你的 WordPress 佈景主題有無任何問題,它也能檢測出有無任何的廣告程式碼被注入你的 WordPress 佈景主題裡。

小技巧:你也可以使用以下 Linux 指令來列出近三天被修改的檔案清單。將 mtime 改為 mmin 可以看到 “n” 分鐘前被修改的檔案清單。

find . -type f -mtime -3 | grep -v "/Maildir/" | grep -v "/logs/"

提高 WordPress 登入頁面安全性

你的 WordPress 登入頁面是每個人都可以存取的,但如果你想防止未授權的使用者登入 WordPress,你有以下三種選擇。

  1. 使用 .htaccess 加入密碼保護 – 在 WordPress 認證以外加入另一道帳號密碼來保護你的 wp-admin 目錄。
  2. Google Authenticator – 這出色的外掛能為你的 WordPress 加入兩步驟驗證功能。除了輸入正確的密碼外,還必須搭配手機應用程式來輸入隨機產生的驗證碼。
  3. Login Dongle – 這個外掛使用一個非常獨特的方法來保護你的 WordPress。它能產生一個書籤列(加上秘密問題),你可以將它加入瀏覽器。當你要登入 WordPress 時,輸入你的密碼並按下書籤列才能登入 WordPress – 登入頁面的按鈕將無法使用。

深入閱讀:

喜歡 免費資源網路社群的文章嗎?歡迎追蹤我們的 FacebookTwitterGoogle+,或是 透過 Email 訂閱更新

相关 [提升 wordpress 安全] 推荐:

9 個提升 WordPress 網站安全性的方法

- - 免費資源網路社群
How to Improve the Security of your WordPress Blog, 已取得原作者 Amit Agarwal 授權. 大約一個月前,這個部落格被黑客入侵(編按:Amit Agarwal 的網站). 而其他托管於相同主機商的網站像是 ctrlq.org 和 hundredzeros.com 也深受其害,黑客成功從網路上拿下了這些網站.

10余种提升WordPress博客加载速度的方法

- - 软矿
我们都知道一个网站的加载速度直接影响到搜索引擎爬虫对网站页面的抓取,也直接影响到网站用户体验. 网站加载速度过慢会造成搜索引擎无法抓取到页面内容而丢弃对该网站的一些页面的收录,同时可以丢失部分用户. 在月光博客读到SEOtime一篇较好的文章,小编转载过来以借花敬佛,愿对一些正在建站或者即将要建站的朋友有所帮助.

WordPress主题后门严重威胁网站安全

- - 阿里云产品博客
WordPress是国内站长非常喜欢采用的一款建站应用软件,由于其具有非常丰富的模版和插件,具有良好的可扩展性. 特别对于博客类网站,WordPress几乎成为建站首选. 在阿里云安全团队的日常运营中,我们发现,WordPress一直是黑客攻击的主要目标. 下图是阿里云云盾安全运营团队对第三方应用遭受攻击的统计(Source:第27期阿里云云盾安全运营报告,http://security.aliyun.com/doc/view/13762631.html):.

加固 WordPress 安全性的几个简单方法(服务器篇)

- - DiggLife
WordPress的安全性其实不错,但是如果服务器上不做一些基本的安全措施,Wordpress再安全也是白搭. 现在的VPS相比几年前便宜很多,很多人都买了自己的独立主机,如果不注意安全,面对满世界全天候的自动攻击脚本,网站被挂马,主机变毒瘤都是分分钟的事. 等中招之后再排查就异常困难了,因为可能有问题的点太多,逐一排查也不见得不会有漏网之鱼.

黑客能利用不安全的cookies劫持你的WordPress博客

- - Solidot
HTTPS Everywhere和Privacy Badger Firefox维护者Yan Zhu发现了WordPress的一个安全漏洞,该漏洞将允许黑客劫持你的WordPress博客. 她发现一个重要的cookies“wordpress_logged_in”在输入有效的用户名和密码后通过HTTP明文发送到WordPress的一个认证端点.

WordPress SEO 宝典

- luckerme - 我爱水煮鱼
最基本的搜索引擎优化(SEO)是很简单的,而 WordPress 程序本身的一些优势使得 SEO 变得更加容易,比如我爱水煮鱼有超过 70% 的流量来自搜索引擎,所以做好 SEO 就是流量的保证,这篇文章就给大家介绍下在 WordPress 博客中最基本的一些 SEO 要求,希望能够帮助到你. 简单来说 SEO 分为页面优化和链接建设两大部分,页面优化是基础,而链接建设则是重点,两者缺一不可.

WordPress 技巧

- - CSDN博客互联网推荐文章
WordPress字体设置方法详解.          WordPress开源程序功能越来越强大,未来我们不仅仅可以使用wordpress制作个人博客,还可以使用wordpress程序制作CMS内容管理系统. 很多 Wordpress主题SEO优化的非常好,而且还附带了一些adsense广告位置,让不懂SEO以及代码修改的朋友轻松解决博客优化以及广告位放置问题.

WordPress SEO 宝典

- - 人人都是产品经理
最基本的搜索引擎优化(SEO)是很简单的,而 WordPress 程序本身的一些优势使得 SEO 变得更加容易,比如我爱水煮鱼有超过 70% 的流量来自搜索引擎,所以做好 SEO 就是流量的保证,这篇文章就给大家介绍下在 WordPress 博客中最基本的一些 SEO 要求,希望能够帮助到你. 简单来说 SEO 分为页面优化和链接建设两大部分,页面优化是基础,而链接建设则是重点,两者缺一不可.

WordPress 相关日志插件:WordPress Related Posts

- - 我爱水煮鱼
我们知道 WordPress 使用的 MySQL 数据库默认是不支持中文分词,所以在中文情况下产生相关日志的最好方法就是通过 Tag,而. WordPress 2.3 版本开始 WordPress 内置了 Tag 的支持. 所以根据日志含有相同的 Tag 数越多,就认为日志相关性越强,所以我根据这一原理开发了 WordPress Related Posts 这个插件,最新版已经由 Zemanta 接手继续开发了.

WordPress如何赚钱?

- 幻幽 or A書 - 36氪
WordPress是一个免费的开源博客平台,那么它是如何赚钱的呢. 创始人Matt给出了以下7点盈利来源:. 比如说为Om Malik,Allthings D这样的大公司博客提供博客托管,他们就会收取每月500美元. 有时候你可能会在WordPress平台上的免费博客内看到Google广告,不过这取决于以下3个条件都存在——访客使用的不是火狐浏览器,他已经登出WordPress账户(如果他有的话),链接源不能是WordPress平台博客(比如一个从abc.wordpress.com到xyz.wordpress.com的人不会看到任何Google广告).