WordPress 本质上并没大家认为的那么危险,而且开发者也在努力工作,以确保危险漏洞能被快速修复。但不幸的是,WordPress 的成功使其成为众矢之的:如果你能攻破一个 WordPress 安装,那么可能会有数以百万计的网站向你 “开放”。而且即使 WordPress 是安全的,也并不是所有的主题和插件都会有同样级别的开发重视程度。
有些人攻击 WordPress 是为了挑战或造成恶意的损害,这些行为都很容易被发现。最糟糕的罪魁祸首是那种潜入内容的行为,它们会将钓鱼网站深入到文件夹结构,或使用你的服务器发送垃圾邮件。一旦你安装的 WordPress 被破解,可能需要删除所有内容并从头重新安装。
庆幸的是,有很多简单的方案来提升安全性。下面提到的安全修复方案都不会超过几分钟。
1. 切换到 HTTPS
HTTPS 可阻止第三方侦听或修改客户端和服务器之间通信的 中间人攻击 。理想情况下,应该在安装 WordPress 前激活 HTTPS,如果在安装后再添加,可能需要更新 WordPress 设置。
HTTPS 还可以提升网站的 Goggle PageRank。诸如 SiteGround 这类网站托管服务提供商会提供免费的 SSL 证书。
2. 限制 MySQL 连接地址
确保你的 MySQL 数据库拒绝来自外部的人员和系统连接到本地服务器的行为。大多数受管理的 Web 主机默认情况下都会执行此操作,但那些使用专用服务器的主机可以将下面的代码添加到 MySQL my.cnf 配置文件的 [mysqld]
部分:
bind-address = 127.0.0.1
3. 使用强大的数据库凭据
在安装 WordPress 之前创建 MySQL 数据库时,建议使用强大的、随机生成的数据库用户 ID 和密码。在安装 WordPress 过程中使用一次凭据连接到数据库 — 你不需要记住它们。你还应该使用一个不同于默认值 wp_ 的表前缀。
用户 ID 和密码可以在安装后更改,但请记住相应地更新 WordPress 的 wp-config.php 配置文件。
4. 使用强大的管理员帐户凭据
同样地,在安装过程中创建的管理员账户也应使用强大的 ID 和密码。任何使用 ‘admin’ 作为 ID,‘password’ 作为密码的人都活该被黑客入侵。还应考虑到为日常编辑任务这些行为创建更少权限的账户。
5. 移动或保护 wp-config.php 配置文件
wp-config.php 包含了数据库访问凭据和其他一些对入侵系统有助的有用信息。大多数人都将其保留在主要的 WordPress 文件夹中,但可以将其移动到上层的文件夹。大多数情况下,该文件夹位于 Web 服务器根目录之外,而且无法通过 HTTP 请求进行访问。
或者,也可以通过配置 Web 服务器(如 Apache .htaccess 文件)来保护它:
order allow,deny
deny from all
6. 尽可能授予用户最低权限角色
用户是任何系统最弱的一点 — 特别是当他们可以选择使用自己的弱口令并将其传给任何问他们索要的人时。WordPress 提供了 一系列的角色和功能 。大多数情况下,用户应该是:
- 编辑: 可以发布和管理自己和其他人的帖子的人
- 作者: 可以发布和管理自己的帖子的人
- 贡献者: 可以编写和管理自己的帖子但不能发布的人
这些角色都不能授权配置 WordPress 或安装插件的权限。
7. 限制 IP 地址访问
如果你有几个具有静态 IP 地址的编辑器,则可以通过向 wp-admin 文件夹添加另一个 .htaccess 文件来限制访问:
order deny, allow
allow from 1.2.3.4 # user 1 IP
allow from 5.6.7.8 # user 2 IP, etc
deny from all
8. 隐藏 WordPress 版本号
某些版本的 WordPress 存在已知的漏洞。任何人也都可以轻松发现你正在使用的版本,因为它显示在每个页面的 HTML <head>
标签里面。通过在主题的 functions.php 文件中添加下面的代码来删除该信息:
remove_action('wp_head', 'wp_generator');
9. 理智选择第三方插件和主题
WordPress 的插件和主题拥有着用户梦寐以求的功能。但一个不好的插件会影响性能、泄露隐私数据或授予使用者另一种访问方式。除非绝对必要,否则最好避免安装代码。而且在进行在线安装时,还要注意验证插件的真实性并在本地服务器上进行测试。
10. 定期更新 WordPress 和插件
WordPress 会自动更新,但主要版本需要一键激活过程。当然,在备份数据库和文件之后再更新。同样地,记得定期检查主题和插件的更新。
风险规避应该在更新在线系统之前检测副本测试服务器上的更新。也就是说,WordPress 更新过程和向后兼容性很少引起问题。
还有其他快速和简单的 WordPress 安全性小贴士吗?在评论区和我们分享吧~
编译自:sitepoint
文章末尾固定信息