保护 WordPress 网站的 16 步检查表

拥有强大的站点安全性的重要性再怎么强调也不为过.当您急于赶上最后期限时,妥善保护您的 WordPress 网站可能不是您的首要任务,因此我们整理了一份清单,以确保您不会错过任何重要事项.

在超过 20 亿个网站的海洋中,为什么许多人认为他们的网站没有被黑客入侵的风险是可以理解的.

如果您从未成为攻击的受害者,您可能不会像您应该的那样担心这种可能性.

然而,拥有正确的保护而不需要它总比没有并后悔要好.

我们整理了一份清单,其中包含您在保护网站时可能需要采取的 16 个步骤——这有望让您轻松管理安全.

1.选择安全托管
2.屏蔽您的登录 URL
3.使用密码管理器
4.启用两因素身份验证
5.使用登录超时
6.设置 WAF
7.使用插件增强安全性
8.使用插件自动执行任务
9.采取措施防止 DDoS 攻击
10.定期检查恶意帐户
11.保护您的 wp-config 文件
12.为您的网站获取 SSL 证书
13.防止盗链
14.防止垃圾评论
15.定期访问您的网站
16.考虑一个静态网站

选择安全托管

您可以采取本文中的所有其他步骤并进一步强化您的网站,但是,如果您使用的是廉价的共享主机,则就像拥有一个加固的、超强的钛合金前门 – 然后离开门垫下的钥匙.

Cartoon drawing of Devman obtaining a key from under a doormat.
永远不要让不受欢迎的访客变得容易(对不起,Devman! )

即使不考虑安全性,共享主机也有足够的缺点来说服大多数人避开——但这本身就是一个完整的话题.查看我们关于选择最适合您需求的主机类型的文章,深入了解共享主机的所有优缺点.

可能最大的缺点是缺乏安全性.其他人网站上的漏洞可能会导致服务器遭到破坏,您的网站也会受到攻击——这并非您自己的过错.

尽管托管公司确实尝试并采取一切预防措施来阻止此类恶意攻击的传播,但共享托管并不总是可行,因为这些站点托管在同一台服务器上.

如果您不想担心网站服务器中发生的事情,请选择 VPS 或专用主机.

WPMU DEV 的托管为您提供独立于任何其他站点(包括您与我们托管的其他站点)的专用内存、CPU 和 SSD 存储!

重要提示:

  • 选择一家以拥有强大的安全性而闻名的托管服务提供商.
  • 不要吝啬价格-在优质托管上多花一点钱比便宜又被黑要好.
  • 利用您的主机提供的功能,例如自动备份WAF阻止可疑 IP 地址的能力.立>

保护您的登录页面

很少有个人黑客尝试.您可能只为当地村庄的划船俱乐部运营一个小型网站,但这并不意味着它不会受到黑客攻击.

恶意机器人会在 Internet 上四处嗅探,寻找网站中的漏洞,但不会进行歧视.如果他们发现有一条路径经过您的 WordPress 登录页面,他们就会在您说"恶意软件!"之前感染您的文件.

您可以采取一些步骤来确保您的登录页面免受此类攻击.

屏蔽您的登录网址

第一种是使用诸如 Defender 之类的插件来隐藏您的登录 URL.

这使得机器人更难进行暴力攻击——如果他们找不到您的登录页面,他们就无处可尝试破解您的密码.

在 Defender 中激活非常容易.只需为您的登录 URL 选择一个新的 slug.

Screenshot of using the masking URL feature to change the URL to "hidden-login-URL"
确保您对新网址进行安全记录!

您还可以将尝试访问旧 wp-admin 链接的人重定向到您选择的页面.

Screenshot of the option to redirect traffic.
不是今天,机器人!

使用密码管理器

关于密码有两个主要规则:

  • 确保您的密码长度合适并且包含各种不同的字符.
  • 不要对多个帐户使用相同的密码.

遵守这两条规则几乎不可能记住所有密码,这就是为什么您可以从密码管理器中受益.

LastPass1Password 是市场上最好的两个密码管理器,可帮助您为所有帐户创建和存储复杂的密码.

您只需要记住一个强大且安全的主密码-其余的将由您来处理.

启用两步验证

您的密码可能看起来又长又复杂,但是,如果您的数据和狡猾的黑客之间只剩下 15 个字符的字符串,那么不幸的是,这并不总是足够的.

双因素身份验证涉及将您的手机或其他设备链接到您的 WordPress 管理员,以便在不输入唯一代码的情况下无法登录.

Defender 使用 Google Authenticator、Microsoft Authenticator 和 Authy 来执行此操作.

只需为您的每个用户帐户设置它,每次有人通过用户名和密码屏幕时,他们都会被要求打开您的身份验证器并输入代码.

Screenshot of Defender's page asking you to input the authentication code.
无密码,无输入!

这使得黑客几乎不可能在无法访问您的用户名、密码和移动设备的情况下进入您的网站.

从正确的角度来看,我纯粹用于测试插件和主题的网站平均每天有 40 次被机器人尝试登录.这些机器人的唯一工作是尝试随机密码组合,以期进入您的网站.

只需要其中一种尝试即可成功,您可能会完全无法访问您的网站.

我可以在 Defender 的审核日志中看到这些尝试.

Screenshot showing a series of site login attempts over a period of around 8 hours.
更多失败的尝试,但机器人从不放弃!

尽管我的网站非常晦涩,也不打算面向公众,但它仍然受到恶意机器人的关注.

即使我的密码是安全的,如果我没有启用双因素身份验证,我也会更加担心.

重要提示:

  • 为每个帐户使用唯一的密码还可以帮助您在密码遭到泄露时确定攻击来源.
  • 设置备用电子邮件地址,以防您丢失移动设备而无法访问您的网站.
  • 如果您忘记了掩码登录 URL,可以从数据库中检索它.
  • 为了提高安全性,您可以使用 Branda 等插件从登录页面中删除密码重置链接.

登录保护

防御者有一些额外的工具可以将入侵者锁定在您的网站之外.

您可以设置登录保护,以确保黑客无法通过向您发送垃圾密码组合来强行侵入您的帐户.

选择您希望在特定时间范围内允许的最大登录尝试次数,并向超出限制的任何人显示自定义消息.

Screenshot of the login protection screen showing it set up to ban after 5 failed logins within 300 seconds?
您还可以选择是否设置临时锁定——或者永远禁止他们!

IP 地址可以直接从 Defender 的日志中被禁止.如果您看到同一 IP 反复尝试访问您的网站,只需点击"禁止 IP"即可.

Screenshot of a failed login attempt showing the IP address and date and time.
您还可以批量禁止 IP 地址.

请确保(我们的支持团队会感谢我这么说)您要禁止的不是您自己的 IP,因为您将完全将自己锁定在您的网站之外!

Defender 还提供了一些管理可疑 IP 地址的额外方法,我们将在这篇文章中详细介绍.

重要提示:

  • 将您自己的 IP 添加到许可名单中,这样您就不会意外被锁定.
  • 如果您注意到来自特定国家/地区的大量登录尝试,您可以使用 Defender 完全禁止来自该国家/地区的 IP 地址.
  • 不要为您的用户提供通用名称,例如管理员或管理员.机器人在尝试破解您的登录详细信息时经常会使用这些,因此如果您使用通用帐户名,它们就已经成功了一半!

设置 WAF

Web 应用程序防火墙 (WAF) 是一种特殊类型的防火墙,它设置定义的规则以帮助保护 Web 应用程序免受攻击.

所有传入请求和 Web 服务器的响应都由 WAF 检查.它可以监控、过滤和阻止不需要的流量,保护您的网站免受黑客和其他不良流量的侵害.

WAF 只是 Web 应用程序和客户端之间的中介.

通常,WAF 用于抵御传统解决方案无法提供保护的攻击,例如跨站点脚本和 SQL 注入,但它也可用于防止非法资源访问,例如会话劫持.

听起来不错?

查看我们关于 WAF 工作原理的完整概要,并了解如何利用我们出色的 WAF(包含在我们所有的托管计划中,无需额外费用).

使用插件强化您的站点安全

如果您希望真正有机会阻止针对您的网站的任何形式的攻击成功,最好的办法是使用一个好的全方位安全插件.

Defender 有大量的功能可以协同工作,使您的网站成为一个难以忍受的人破解.

我可以写一篇关于 Defender 帮助您保护网站的所有方式的完整文章,但是-我们已经这样做了.

只是为了让您体验一下,它的一些功能包括:

  • 双重身份验证
  • 登录屏蔽
  • 登录锁定
  • 404 检测
  • WordPress 安全防火墙
  • 能够禁用引用和 pingbacks
  • 核心和服务器更新建议
  • 禁用文件编辑器的选项
  • 能够隐藏错误报告
  • 更新安全密钥
  • 防止信息泄露
  • 阻止 PHP 执行

Defender 的大部分功能实际上都是免费的,所以前往 WordPress.org,点击下载,并开始阻止这些攻击.

使用插件自动执行任务

事实:计算机不会忘记事情.

无论是备份您的网站还是更新您的插件,没有什么比自动化流程更可靠的了.

这就是为什么您应该将这些任务留给专家-几个很棒的 WordPress 插件!

自动更新

黑客喜欢发现插件和主题中的漏洞,并将其用作渗透您网站的方法.

当开发人员意识到他们的产品中存在潜在的漏洞时,他们将创建一个补丁来修复该漏洞.

如果您在发布新补丁时忽视更新插件和主题,则可能会为黑客留下漏洞.

这就是为什么确保更新一经发布就立即应用很重要,这也是自动化的用武之地.

当您运行多个 WordPress 网站时,手动更新所有插件和主题可能会很耗时,这意味着有时这项任务可以搁置.

Automate 会自动检测您的网站何时运行过时的插件、主题或过时的 WordPress 版本,并自动更新您的网站以运行最新版本.

更好的是,它甚至可以在安装更新之前备份您的站点,以防万一出现导致问题的兼容性问题.

查看我们的文档,了解关于如何设置自动化的完整教程.

使用快照备份

当然,我们的计划是避免被黑客入侵.

但是,如果真的发生了最坏的情况,备份您的网站可以挽救这一天.

没有比使用像 Snapshot 这样可靠的备份插件更好的方法了(以我的拙见!).

只需选择您希望备份的频率和时间,一切就绪.

Screenshot of the backup schedules you can choose.
再也不用担心丢失备份!

这篇文章将向您详细介绍如何使用 Snapshot 设置和管理备份.

重要提示:

  • 除了定期更新您的插件和主题外,请务必留意新版本的 PHP 和 SQL,它们也应在发布后尽快更新.
  • 定期进行手动备份并将它们保存在本地总是好的-在站点安全方面,您永远不会太安全!

防范 DDoS 攻击

分布式拒绝服务 (DDoS) 攻击是指网站因流量泛滥而导致其服务中断.

它由计算机网络(有时是感染了恶意软件的不知情的公众成员的计算机)执行.攻击者使用这些设备形成"僵尸网络",他们可以指示攻击特定目标.

这些攻击的目的往往是要挟站主勒索赎金,过去也曾出现过一些广为人知的DDoS攻击案例.有些只是为了好玩和造成混乱而进行的,但无论攻击背后的原因是什么,成为受害者从来都不是理想的.

幸运的是,您可以采取一些措施来防止它发生在您的网站上.

这些包括:

  • 禁用 XML-RPC
  • 使用防火墙
  • 禁用引用和 pingback
  • 禁用 Rest API
  • 使用 CDN.

我们的DDoS 攻击预防指南中详细介绍了这些步骤.

定期检查恶意账户

当您经常使用 WordPress 并且习惯于在相同的几个屏幕之间切换时,某些东西很容易从网络中溜走.

这就是为什么您需要花时间手动检查其他人是否可以访问您的网站.

您应该定期检查恶意帐户.

这不仅适用于其他 WordPress 用户,还适用于 FTP 和 SSH 帐户.

如果您使用 WPMU DEV 托管,则可以在 The Hub 中获取此信息.

Screenshot of the SFTP user accounts.
快速检查以确保您识别所有活动帐户是所有你需要的.

保护您的 WP-Config 文件

您的 wp-config 拥有整个 WordPress 网站的密钥,是您最不希望黑客接触的东西.

确保它遥不可及的一种方法是将其移出您的网络根文件夹.

看看 WordPress 自己的建议 以此来决定它是否适合您.

如果您不想完全移动它,可以通过将以下代码添加到.htaccess 文件中来阻止对其进行访问.

<files wp-config.php>

order allow, deny

deny from all

</files>

重要提示:

  • 更进一步,阻止访问您的.htaccess!

为您的网站获取 SSL 证书

SSL 证书通过检查其证书的凭据来验证您到达的网站是否为预期目的地.

这有助于防止域欺骗和其他类似攻击.

涉及 SSL 证书的连接更值得信赖、更安全,并且会给客户留下更好的印象.

这是因为 SSL 证书将 HTTP 连接转换为 HTTPS 连接-添加的"S"字面上代表安全.

Screenshot showing the message you receive when you visit a page without an SSL certificate in Chrome.
您希望访问者看到的最后一件事就是这条消息!

您可以通过 Let's Encrypt 等可信提供商获取 SSL 证书.

重要提示:

防止盗链

如果有人盗链您的图片,他们使用的是指向您网站上原始图片的链接,这意味着他们的访问者正在从图片中受益,但您的服务器会选择该标签.

这不仅被认为是不道德的,而且会给您的服务器带来很大压力,导致您的网站出现问题,还可能导致额外费用.

有多种方法可以保护您的图片,最简单的方法之一是将代码片段添加到您的.htaccess 文件中.

此代码将确保只允许某些网站显示您的图片.您可以指定各个站点.

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?example.com [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?google.com [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?youtube.com [NC]
RewriteRule \.(jpg|jpeg|png|gif)$-[F] 

这是在 Apache 服务器上运行的站点所需的代码.

location ~.(gif|png|jpeg|jpg|svg)$ {
valid_referers none blocked ~.google.~.bing.~.yahoo.yourdomain.com *.yourdomain.com;
if ($invalid_referer) {
return 403;
}
}

如果您的网站在 NGINX 服务器上运行,请使用此代码.

重要提示:

  • 您还可以使用插件或带有热链接保护的 CDN 来保护您的图像.
  • 在主题的页脚中添加版权声明,以阻止人们试图窃取您的图片.

停止垃圾邮件

您博客上的垃圾评论不仅令人沮丧,还会带来安全风险.

许多垃圾评论包含恶意链接,希望诱使访问者提交他们的个人信息.

因此,尽管您可能不是此类攻击的预期目标,但您有责任保护网站访问者的安全.

如果您收到大量垃圾邮件,您有两种选择:完全关闭评论,或安装反垃圾邮件插件.

如果您选择后一个选项,Akismet 可能正是您所需要的.

您网站上留下的每条评论,以及您提交的表单都通过其全球垃圾邮件数据库运行,以防止恶意内容进入您的网站.

它是免费的——而且有效!

更好的是,reCaptcha 正在为 Defender 开发,并将保护原生 WordPress 功能例如您的登录页面和博客评论.

定期访问您的网站

有时最简单的解决方案也能创造奇迹.

如果您的网站遭到黑客入侵并且您的内容受到干扰,快速浏览一下您的网站应该会在几秒钟内告诉您.

访问您的网站并从客户的角度来看它不仅从安全角度来看是好的,而且从可访问性和美学角度来看也是如此.

所以请自己喝杯咖啡,坐下来,像常客一样浏览您的网站.

重要提示:

  • 不要忘记在登录、注销和隐身时查看您的网站!

考虑静态站点

如果您运营的网站几乎不需要用户输入,即主要用于共享信息,而不是电子商务商店或繁忙的博客,那么转换为静态网站可能会有所帮助.

为此,您需要创建文件的副本,并将它们打包成一个整洁的.ZIP 文件,以便存储在您的服务器上.

这意味着您的实际 WordPress 安装可以安全地隐藏起来,机器人和黑客无法接触到.

对于很多网站来说,这不是正确的路线,但可以随意查看诸如 Strattic 之类的服务或者 Simply Static 如果您想进一步研究它.

比抱歉更安全

我们知道实施这么多不同的步骤似乎是一项乏味的工作,但幸运的是,一旦您将其中的大部分从清单中剔除,他们就会自行处理.

插件在后台安静地运行并为您完成繁重的工作,因此一旦您为新站点设置了所有安全性,就不需要进行大量的手动输入.

当您需要担心网站的其他方面时,安全性可能会被推到次要位置,但是……事后诸葛亮是一件很棒的事情.

现在就花时间为您的网站实施正确的安全程序,希望您永远不必为您的网站被黑客入侵而感到沮丧,并希望您早点采取预防措施.

3

发表回复