WordPress作为一个受欢迎的开源Blog源码,同时就意味着黑客们也可以查看到代码并找出能够利用来攻击的漏洞,Hack 任何一个正在使用WordPress 搭建的站点。值得庆幸的是,WordPress 可以让我们通过安装或制作插件来扩展自身不足的功能,当然也包括提高其安全性能。
最近就有一个德国IP在暴力破解我的一个英文站,MakeUseOf.com 曾列出了18个可以让您的 WordPress 博客更加安全的插件和技巧,选取了其中一些方法加强了站点的安全保护,同时这里记录一下以备不时之需!
登录保护
1. CHAP Secure Login
这款插件能使用 CHAP 协议对您的密码进行加密,且无需设置,一旦激活即可使用。
2. Stealth Login
Stealth Login 可以让您自定义一个登录后台的页面来取代默认的 wp-login.php 页面,这样即使您的密码泄露了,黑客也未必能进入您的系统,因为他们还需要找到正确的登录页面地址。这款插件可用以防止恶意的爬虫机器人强制进入您的 wp-login.php 文件。
3. Login Lockdown
Login Lockdown 对于防止暴力解密的攻击十分凑效。它能够记录下每一次错误登入的 IP 地址和时间标记,如果探测到一个 IP 段在一时间段内登录失败的次数超过了某一数目,就会自动锁定其登录功能,并禁止此 IP 段的使用者登入系统。
4. AskApache Password Protect
这款插件可以添加额外的 HTTP 验证方式,为您的博客提供双重保护。您可以为您的博客的密码登录保护设置使用 HTTP Basic 验证方式,或者更加安全的 HTTP Digest验证方式。
需要注意的是,这款插件是否能够使用取决于您的服务器的性能,如果不能通过 AskApache 的配置测试,请联系您的服务商看他们能否在服务器方面做出更改。
5. Semisecure Login Reimagined
这款插件提供了一个以“RSA加密算法”来加密密码的 “semisecure” 登录环境。
数据库保护
6. WP-DB-Backup
或许对于一些人来说,备份数据库是一项比较麻烦的技术性工作。利用WP-DB-Backup 就可以解决这一问题,您只需要设置多长时间进行一次数据库备份,它就会自动执行,并将备份文件发送到您的邮箱中,无需您苦恼了。
这款插件可备份各个不同数据表前缀的数据库,这样一旦出了问题,就能通过备份文件快速导入进行数据库恢复。
7. WP-DBManager
相信不少 WPers 对这款插件都比较熟悉了,可以说它就是 WordPress 控制台中的 phpMyAdmin,您可以轻松地在后台直接管理数据库。使用的功能还不少,例如:优化/修复/备份/恢复 数据库,如果您有一定的技术基础,还可以在插件的设置页面运行 SQL 查询。
不足的地方是,如果有黑客登入了您的博客,这个插件就会为他们对您的数据库进行大肆破坏大开方便之门了。
8. 修改数据表前缀
WordPress 默认的数据表前缀是 “wp”,您可以使用 WP-Security-Scan 插件将前缀改为其它难以猜测到的字段。关于这个插件下面会详细介绍。
9. 保护您的 wp-config.php 文件
您的 wp-config.php 文件包含了所有数据库登入凭证,因此无论在任何环境下您都应该将其隐藏起来。您可以在 .htaccess 文件中加入以下语句来防止其它人浏览到 wp-config.php 文件:
<Files wp-config.php>
order allow,deny
deny from all
</Files>
后台管理页面保护
10. Admin SSL
这个插件能强制所有需要输入密码才能访问的页面使用 SSL 安全协定,这样全部信息就会进行加密传送了。
不过您需要有 SSL 证书才能使用这款插件,如果您不想花钱来购买一个私密 SSL 证书,可以询问您的服务器提供商能否分享其 SSL 证书。
11. 更改登录用户名
当您一安装好 WordPress 后,就应该立刻使用自己的用户名和密码创建另一个有管理员权限的用户,并将 “admin” 用户删除。
防止其他人查看您的内部文件结构
12. 隐藏 WP 版本号信息
大多 WordPress 主题文件中的 head 标签下,都会有一行用来显示您正在使用的 WordPress 版本号信息的代码。将您的 WordPress 版本号显示出来就意味着告诉黑客们可以利用什么漏洞来攻击自己的站点。
从 WP 2.6.5 版本开始,WordPress 就将版本信息嵌入到 wp_header 中,从而使得移除版本号信息更加困难了。您可以使用 WP-Security-Scan 插件来进行移除。
13. 隐藏 wp-content 文件
wp-content 文件夹中存储了所有的主题和插件文件,因此需要禁止其他人对其进行浏览。您可以通过两种途径实现隐藏:一是将一个空白的 index 文件上传到 wp-content 文件夹的根目录;二是在 wp-content 文件夹的根目录处创建一个 .htaccess 文件,并在里面添加上以下语句:
Options All -Indexes
14. 防止搜索引擎索引 WP 文件
通过搜索引擎对您的博客建立索引的确可以带来不少的流量,但如果让搜索引擎的索引将所有内部文件结构暴露出来就不是一件好事啦。您可以在 robot.txt 文件里添加以下语句来防止搜索引擎索引您的 WP 文件:
Disallow: /wp-*
安全维护
15. WP Security Scan
这个插件在上文中被提及多次,是时候介绍一下了。WP-Security-Scan 会对您的 WordPress 进行扫描,查找出安全隐患,并为您提供修正的建议。修正行为包括改变数据表前缀、隐藏 WordPress 版本号、测试您的密码强度等。
使用这个插件来为博客进行安全扫描和检查,能使博客的安全性大大地提高。
16. 定期更改密码
您不但需要定期更改密码,还要确保所使用的密码有足够的强度。如果您觉得经常创建高强度密码比较困难,可以找一下创建既易记又安全的密码的教程、软件或在线应用,例如本站曾介绍过的 Password Chart。
17. 升级 WordPress 和所有插件到最新版本
这个无需多说了,新的版本一般都会修复关键的安全问题和漏洞,将它们都升级到最新版本就是提高安全性最好的方法。
连接保护
18. SFTP
对于独立 bloggers 来说,将文件上传到服务器是最普通不过的事情,但不安全的 FTP 连接也有可能让您的站点受到攻击,因此您应该选择使用 SFTP (Secure FTP)。它会创建一个 SSH 连接,将所有文件以加密的方式上传到服务器。
如果您对创建 SFTP 连接存在疑问或需要帮助,可参考这个指引。
以上这些足够让您创建一个高安全度的 WordPress 博客了,如果你有其他更好的方法欢迎予以补充!