WordPress托管最佳实践 – 安全

安全 该页面的目标是通知管理WordPress站点的用户关于一般安全最佳实践的环境级别项目(如文件权限)以及应用程序级别项目(如设置适当的用户角色),以便他们拥有比在没有额外配置的情况下设置WordPress更安全的基础。 WordPress安全性最重要的事情是保持WordPress本身以及所有安装的插件和主题的最新状态。确保您正在使用主动接收更新的主题和插件也很重要。 WordPress非常致力于为WordPress网站管理员及其用户提供安全的体验。有关WordPress官方对安全的立场以及关于WordPress安全总体目标的一般性讨论的更多信息,请参见WordPress.org关于WordPress本身的章节。 本指南的以下部分将提供有关如何保持WordPress安全的说明。本指南从WordPress Codex的Hardening WordPress指南中大量借鉴。虽然WordPress Codex和本指南都涵盖了安全性,但本指南应被视为WordPress安全性的权威最佳实践文档。 托管提供商通常会采取措施默认提供不同程度的安全环境;然而,你的WordPress网站的安全性最终是你的责任。保持任何系统,不仅仅是WordPress,安全是一项持续的工作。良好的安全性需要认真规划和定期维护。 安全主要包括减少风险和恢复计划。大多数安全计划都将重点放在最大限度地降低未经授权访问的风险上,但风险永远无法成功降至零。只要存在一定风险,您必须计划恢复,以便在发生问题时您的网站不会完全丢失,并且您的网站可以快速恢复正常运行。 安全性也超过WordPress。这也是关于确保您的托管环境是安全的,并且您的个人在线实践和行为可以保证您的安全。良好的安全性取决于正在使用的技术和使用该技术的人员。过时或过时的技术可能存在可能使WordPress网站处于危险中的错误或漏洞。人们不良的在线做法也可能会让您的WordPress网站面临风险。务必确保您不仅保持您使用的最新技术和维护的技术,而且确保您在使用互联网和使用WordPress网站或托管服务时的安全性。 禁止多次登录尝试 针对互联网服务的最常见类型攻击之一是强力登录攻击。由于计算机的威力,这次攻击非常简单。在这次攻击中,恶意用户试图猜测你的WordPress网站的管理员用户名和密码。恶意用户不需要知道任何关于您的WordPress网站或您的登录信息来执行此攻击。使用电脑,你可以做出每秒数千次的猜测。恶意软件开发人员也编写了一些可以为您猜测的程序,而这些程序使用了复杂的技巧和技巧,可以使得外观精美的密码非常容易被猜出。 针对这种攻击的最佳保护是使用真正的强密码。使用密码管理器可以让密码更加简单。如果您想了解更多关于密码管理器的信息,[维基百科有一篇关于密码管理器的文章](https://en.wikipedia.org/wiki/Password_manager)。它还有一个[密码管理器列表](https://en.wikipedia.org/wiki/List_of_password_managers),如果你想找到一个使用。 还有一些步骤可以保护WordPress免遭多次登录尝试。这些步骤主要归结为添加一个额外的认证层,并限制登录到WordPress管理仪表板。额外的身份验证和限制登录层可以在服务器级或通过WordPress插件实现。 下面的一些建议是从WordPress Codex的野蛮力量攻击指南中借用的。 关于用户名的说明 一些WordPress安全指南建议为WordPress管理员帐户使用唯一的用户名。尽管用户愿意,WordPress的REST API允许任何人查看您的WordPress网站的许多用户。您可以通过将/ wp-json / wp / v2 / users放置在您的WordPress网站网址的末尾来查看。输出将被格式化以供程序使用,但它应该仍然有点可读性。 服务器级别 密码保护wp-login.php 对于经历了持续和频繁的暴力登录攻击的个别WordPress网站,使用HTTP基本认证向wp-login.php添加第二个密码可以帮助保护网站,同时减少攻击对托管服务器的影响。如果您正在托管自己的WordPress网站,您的托管服务提供商可能会为您提供这样的工具,特别是在他们使用流行的Web面板软件(如cPanel或Plesk)时。这种方法并不适用于拥有大量网站的WordPress主机。其他安全方法(如ModSecurity规则或其他Web应用程序防火墙)可能更适合于更大规模地防止此类攻击。 通过IP地址限制对wp-login.php的访问 如果密码保护wp-login.php不适合单个WordPress网站,则可以限制对Wordpress管理仪表板登录到特定IP地址的访问。这可以完全锁定并阻止未经授权的用户登录到WordPress管理仪表板,但是这种限制可能使访问WordPress管理仪表板不太方便合法用户使用。像使用HTTP基本认证保护wp-login.php的密码一样,这种保护通常不适合托管公司跨整个平台或服务器应用。它通常最好单独应用于WordPress网站,这些网站正在经历持续且频繁的暴力攻击,这些攻击无法通过其他方式轻松解决。 许多互联网服务提供商经常更改其客户的IP地址。如果您的ISP更改您的IP地址,则必须先手动更新授权IP地址的白名单,然后才能登录到WordPress管理仪表板。 ModSecurity和多次登录尝试 ModSecurity是一种流行的Web应用程序防火墙,用于动态阻止恶意请求。 ModSecurity监视访问者为任何网站所做的请求,并阻止符合关于什么是和什么不是合法活动的特定规则的请求。如果您从现有的托管服务提供商处购买了托管服务,您的托管服务提供商可能已经配置了ModSecurity,通常会使用他们自己定制的规则。在这种情况下,请联系您的托管服务提供商以获取更多关于他们如何使用ModSecurity来保护您的WordPress网站的信息。 对于托管公司,ModSecurity是保护服务器的非常强大的工具。但是,它比较复杂,配置起来可能很困难。鉴于ModSecurity监控所有网络流量,对ModSecurity规则的更改很容易导致合法的Web活动被ModSecurity阻止。在对ModSecurity进行任何修改时建议小心。希望使用ModSecurity或更改其配置的主机提供商应进一步研究ModSecurity或咨询ModSecurity专家。 验证码 验证码是帮助防止僵尸程序能够完成网站表单的测试,例如WordPress管理仪表板登录。验证码通常是一种测试,需要一定程度的人力输入才能提交表格。有几个插件可以用来将验证码添加到WordPress表单以及WordPress管理仪表板登录页面。这些工具还可以帮助防止暴力登录攻击,同时为WordPress用户提供更方便的登录体验。 插件 有几个插件可以防止用最少的配置对WordPress进行暴力登录攻击。插件可以在WordPress插件中找到。 您应该在安装之前查看一个插件,以确保它由开发人员主动维护,并与当前版本的WordPress保持同步。您还应该了解插件在安装WordPress时对WordPress所做的更改。 双因素认证 双因素身份验证(也称为2FA或两步身份验证)是一种登录方案,当用户尝试使用启用双因素身份验证的登录服务时,使用单独的第二种身份验证方式。确切的双因素身份验证设置因服务而异,但通常涉及在尝试登录服务时输入代码或与智能手机上的应用程序进行交互。 WordPress默认情况下没有双因素身份验证;不过,有几个插件为自主托管的WordPress网站提供双因素身份验证。 双因素身份验证非常有用,因为如果有人获得您的账户的密码,他们仍然无法在没有第二个身份验证表单的情况下登录。例如,Google对用户帐户进行双因素身份验证。启用双因素身份验证后,Google会要求您输入发送到智能手机的一次性唯一代码,或者在尝试在以前没有使用过的设备或计算机上登录到您的Google帐户后与智能手机进行互动用于登录。如果某人以某种方式获得了您的Google帐户的密码,那么未经授权的用户将无法访问您的帐户,因为未经授权的用户无法提供代码或进行必要的交互,因为这些信息与您的智能手机有关。当有人访问您的Google帐户时,您也会立即收到通知,因为您会收到一次性使用的唯一代码或与智能手机进行登录交互的提示。 双因素身份验证可以使登录服务变得不太方便,因为需要登录第二种身份验证形式(您的智能手机,以Google为例)。但对于关键服务,双因素身份验证极大地提高了您帐户的安全性。 文件系统 您的主机帐户文件系统的设置可能会对WordPress的安全性产生重大影响。设置适当的文件保留和所有权对于确保未经授权的用户无法访问或修改WordPress文件非常重要。 文件权限 这部分的文件权限完全集中在Linux服务器上的文件权限。如果您使用Windows服务器,请咨询您的托管服务提供商或Windows服务器管理员以获取帮助,以设置适当的权限。 Linux文件权限主要由三个组件组成 – 文件或文件夹的所有者拥有的权限,拥有该文件或文件夹的组的权限成员以及其他任何人访问或修改文件和文件夹的权限。这三个权限组件通常使用三个数字按照所有者的权限级别,组的权限级别以及所有人的权限级别来表示。技术上讲有第四个组件,但这超出了我们需要知道的保护WordPress的安全。这里不会讨论。 每个用户,组和其他人有三种访问权限。它们是读访问,写访问和执行访问。读访问让你读取文件或目录的内容。写入权限允许您修改文件或目录。并且执行访问让您像运行程序或脚本一样运行文件。 […]

Read More