分类: 学习

  • 什么是MySQL默认端口?

    什么是MySQL默认端口?-1

    如果您想直接连接到您的MySQL数据库或将另一个应用程序连接到您的数据库,您需要知道MySQL端口以及一些其他信息。

    MySQL的默认端口是3306,所以大多数情况下你应该可以使用“3306”作为端口。在这篇简短的文章中,我们将分享更多有关如何查找MySQL端口并连接到数据库的信息。我们还将回答一些有关MySQL和端口3306的常见问题解答。

    1. MySQL端口常见问题解答
    2. 如何使用SQL查找MySQL端口
    3. 如何连接到MySQL数据库

    MySQL端口常见问题解答

    让我们首先解决一些有关MySQL端口的最常见问题。

    MySQL使用什么端口?

    MySQL默认使用端口3306。

    3306端口有什么用?

    端口3306是用于MySQL协议的默认端口。您将使用它来连接MySQL客户端和实用程序,例如mysqldump。

    MySQL端口3306是TCP还是 UDP?

    MySQL默认端口3306是TCP (传输控制协议)。

    是否存在MySQL端口漏洞?打开3306端口安全吗?

    在一般情况下,你应该不打开端口3306,因为它可以让你的服务器容易受到攻击。

    如果您需要远程连接到您的数据库,还有比打开端口3306更安全的选项,例如使用SSH隧道。

    如果您必须打开端口3306,请确保限制哪些IP地址可以访问它,以便不受信任的主机无法访问它。

    如何使用SQL查找MySQL端口

    尽管MySQL默认端口是3306,但这并不总是意味着您的MySQL服务将始终使用该端口。如果要验证端口或查看MySQL是否使用不同的端口,可以使用简短的SQL查询找到MySQL端口。

    您可以使用phpMyAdmin运行此查询,在phpMyAdmin中,在左侧选择您的数据库,然后转到SQL选项卡。

    运行SQL 查询框中,输入以下内容:

    SHOW VARIABLES WHERE Variable_name = ‘port’;
    SHOW VARIABLES WHERE Variable_name = ‘port’;
    SHOW VARIABLES WHERE Variable_name = 'port';

    然后点击Go(执行)

    什么是MySQL默认端口?-1

    如何在phpMyAdmin中查找MySQL端口

    在下一页上,您应该会在“Value”列中看到端口号。同样,默认情况下MySQL端口是 3306,如下面的屏幕截图所示:

    什么是MySQL默认端口?-1

    运行查询后的MySQL端口号

    如何连接到MySQL数据库

    您可以使用phpMyAdmin访问您的数据库。

    如果您更喜欢使用其他工具,例如TablePlusHeidiSQLSequel ProMySQL Workbench等直接数据库访问。

    远程连接到MySQL数据库的最安全方法是使用SSH隧道。您可以使用这种安全方法连接到您的数据库。

    要使用这些工具连接到MySQL数据库,您通常需要:

    • MySQL主机
    • 数据库用户名、密码和名称
    • MySQL端口
    • SSH凭据
  • TLS与SSL有什么区别?你应该使用哪一个?

    TLS与SSL有什么区别?你应该使用哪一个?

    TLS和SSL都是帮助您在Internet上安全地验证和传输数据的协议。但是TLS与SSL之间有什么区别?这是您需要担心的事情吗?

    在本文中,您将了解TLS与SSL之间的主要区别,以及这两种协议如何连接到HTTPS。您还将了解为什么作为最终用户,您可能不需要过多担心TLS与SSL,或者您使用的是“SSL证书”还是“TLS证书”。

    TLS和SSL之间有什么区别?

    TLS是传输层安全的缩写,SSL是安全套接字层的缩写,都是加密数据和在Internet上移动数据时验证连接的加密协议。

    例如,如果您在网站上处理信用卡付款,TLS和SSL可以帮助您安全地处理该数据,以便恶意行为者无法获得这些数据。

    那么TLS与 SSL之间有什么区别呢?

    好吧,TLS 实际上只是SSL的更新版本。它修复了早期SSL协议中的一些安全漏洞。

    在您详细了解细节之前,了解SSL和TLS的基本历史非常重要。

    SSL 2.0于1995年2月首次发布(由于安全缺陷,SSL 1.0从未公开发布)。尽管SSL 2.0已公开发布,但它也包含安全漏洞,并在1996年迅速被SSL 3.0取代。

    然后,在1999 年,TLS (1.0) 的第一个版本作为对SSL 3.0的升级发布。从那以后,又发布了三个TLS版本,最新版本是2018年8月的TLS 1.3。

    此时,两个公共SSL版本都已弃用,并且存在已知的安全漏洞(稍后会详细介绍)。

    以下是SSL和TLS版本的完整历史:

    • SSL 1.0 – 由于安全问题从未公开发布。
    • SSL 2.0 – 1995年发布。2011年弃用。存在已知的安全问题。
    • SSL 3.0 – 1996年发布。2015年弃用。存在已知的安全问题。
    • TLS 1.0 – 1999年作为SSL 3.0的升级发布。计划在2020年弃用。
    • TLS 1.1 – 2006年发布。计划在2020年弃用。
    • TLS 1.2 – 2008年发布。
    • TLS 1.3 – 2018年发布。

    TLS和SSL如何保护数据?

    以下是SSL和TLS工作原理的高级流程。

    当您在Web服务器上安装SSL/TLS证书通常简称为“SSL 证书”)时,它包含一个公钥和一个私钥,用于验证您的服务器并让您的服务器加密和解密数据。

    当访问者访问您的站点时,他们的Web浏览器将查找您站点的SSL/TLS证书。然后,浏览器将执行“握手”以检查您的证书的有效性并验证您的服务器。如果SSL证书无效,您的用户可能会遇到“您的连接不是私密连接”错误,这可能会导致他们离开您的网站。

    一旦访问者的浏览器确定您的证书有效并对您的服务器进行身份验证,它实际上会在它和您的服务器之间创建一个加密链接,以安全地传输数据。

    这也是HTTPS的用武之地(HTTPS代表“HTTP over SSL/TLS”)。

    HTTP和更新的HTTP/2是应用程序协议,在通过Internet传输信息方面发挥着重要作用。

    使用普通HTTP,该信息容易受到攻击。但是,当您通过SSL或TLS (HTTPS)使用HTTP时,您会在传输过程中对该数据进行加密和身份验证,从而确保其安全。

    这就是为什么您可以通过HTTPS而不是通过HTTP安全地处理信用卡详细信息的原因,也是Google Chrome如此努力地推动采用HTTPS的原因。

    如果不推荐使用SSL,为什么将其称为SSL证书?

    在上面,您了解到TLS是SSL的最新版本,并且SSL的两个公开版本都已弃用多年,并且包含已知的安全漏洞。

    您可能想知道:为什么将其称为SSL证书而不是TLS证书?毕竟,TLS是现代的安全协议。

    不,大多数人仍然将它们称为SSL证书的原因基本上是品牌问题。大多数主要的证书提供商仍然将证书称为SSL证书,这就是命名约定仍然存在的原因。

    实际上,您看到的所有“SSL证书”实际上都是SSL/TLS 证书

    也就是说,您可以将SSL和TLS协议与您的证书一起使用。

    没有SSL证书或TLS证书之类的东西,您无需担心将SSL证书替换为TLS证书。

    您应该使用TLS还是SSL?TLS会取代SSL吗?

    是的,TLS正在取代SSL。是的,您应该使用TLS而不是SSL。

    正如您在上面了解到的,SSL的两个公开版本都已弃用,这在很大程度上是因为它们中存在已知的安全漏洞。因此,SSL在2019年及以后并不是完全安全的协议。

    TLS是更现代的SSL版本,是安全的。此外,最新版本的TLS还提供了性能优势和其他改进。

    TLS不仅更安全、更高效,而且大多数现代 Web浏览器不再支持SSL 2.0和SSL 3.0。例如,谷歌浏览器早在2014年就停止支持SSL 3.0 ,大多数主流浏览器都计划在2020年停止支持TLS 1.0和TLS 1.1。

    事实上,谷歌开始在Chrome中显示ERR_SSL_OBSOLETE_VERSION警告通知。

    那么如何确保您使用的是最新版本的TLS而不是较旧的、不安全的SSL协议?

    首先,请记住您的证书与您的服务器使用的协议不同。你不会需要您的证书更改为使用TLS。尽管它可能被标记为“SSL证书”,但您的证书已经同时支持SSL和TLS协议。

    相反,您可以控制您的网站在服务器级别使用的协议。

    您可以使用SSL Labs工具检查为您的站点启用了哪些协议。

    如何测试您的服务器使用哪些SSL/TLS协议

    如何测试您的服务器使用哪些SSL/TLS协议

    如果您发现您的服务器仍然支持已弃用的SSL协议,您可以联系主机支持部门寻求帮助或按照以下说明在两个最流行的Web服务器(Apache和Nginx)上禁用SSL :

    为什么启用多个TLS协议?

    如果TLS 1.3是最现代、性能最好的协议,为什么还要麻烦启用稍旧的TLS 1.2协议?

    换句话说:启用多个协议有什么好处?

    正如您在上面了解到的,SSL/TLS握手有两个部分:

    1. 您的网络服务器
    2. 客户端(通常是访问者的网络浏览器)

    为了使握手工作,两者都需要支持相同的协议。

    因此,拥有多个协议的主要好处是兼容性。

    例如,虽然Chrome和Firefox在2018年发布后几乎立即添加了对TLS 1.3的支持,但苹果和微软花了更长的时间来添加TLS 1.3支持。

    即使在2019年,以下浏览器仍然缺乏TLS 1.3支持

    • Internet Explorer
    • Opera Mini
    • Android Browser
    • Opera Mobile
    • UC Browser for Android
    • Samsung Internet
    • Baidu Browser

    TLS 1.3网络浏览器支持

    TLS 1.3网络浏览器支持

    但是,虽然TLS 1.3仍未完全采用,但所有主要浏览器在2019年都支持TLS 1.2

    TLS 1.2网络浏览器支持

    TLS 1.2网络浏览器支持

    通过在您的服务器上同时启用TLS 1.3和TLS 1.2,您无论如何都可以确保兼容性,同时仍然可以为支持它的浏览器(如Chrome和Firefox)获得TLS 1.3的好处。

    如果您想检查您的网络浏览器使用的是哪个SSL/TLS版本,您可以使用How’s My SSL工具

    如何测试浏览器使用的SSL/TLS协议

    如何测试浏览器使用的SSL/TLS协议

    小结

    总而言之,TLS和SSL都是对Internet上的数据传输进行身份验证和加密的协议。

    两者紧密相连,而TLS实际上只是更现代、更安全的SSL版本。

    尽管SSL仍然是Internet上的主导术语,但大多数人在说SSL 时真正指的是TLS,因为SSL的两个公共版本都不安全,并且早已被弃用。

    要同时使用SSL和TLS协议,您需要在服务器上安装一个证书(这是在WooCommerce上安装SSL证书的方法)。同样,虽然大多数人都称这些为“SSL证书”,这些证书支持双方的SSL和TLS协议。

    你没有必要担心“转”你的SSL证书为TLS证书。如果您已经安装了“SSL证书”,您可以确信它也支持TLS。

    使用最新版本的TLS很重要,因为SSL不再安全,但您的证书并不能确定您的服务器使用的协议。相反,一旦您拥有证书,您就可以选择在服务器级别使用哪些协议。

  • 如何手动及自动备份MySQL数据库

    如何备份MySQL数据库

    需要MySQL数据库备份吗?大多数WordPress主机,都有自动备份,因此您不必担心在紧急情况下自己手动备份它们。

    但是,有时您可能需要一份最新MySQL数据库的副本。这可能是因为您正在迁移主机,或者您可能想要进行一些本地开发。在任何情况下,您都可以按照下面这个快速简单的教程来学习如何使用两种非常简单的方法来备份您的MySQL数据库。

    如何使用phpMyAdmin备份MySQL数据库

    phpMyAdmin是一个免费的开源工具,可通过浏览器使用,用于处理MySQL或MariaDB的管理。它可以用于各种不同的操作,例如迁移数据库、管理表、索引和执行SQL语句。今天我们将简单地使用phpMyAdmin导出一个WordPress MySQL数据库。

    第1步

    登录到phpMyAdmin。 如果您使用的是cPanel,则指向phpMyAdmin的链接将位于“Databases”部分下。

    cPanel phpMyAdmin

    cPanel phpMyAdmin

    第2步

    单击进入您的WordPress数据库。该名称很可能与您的站点名称或用户名相对应。

    WordPress数据库-phpmyadmin

    WordPress数据库-phpmyadmin

    第3步

    在下一步中有两个选项。这取决于您想如何使用数据库。

    选项 1 – 快速导出方法

    单击“Export”选项卡。如果您打算在旧版本不存在的地方使用您的数据库,或者您只想备份,您可以选择“Quick – display only the minimal options.”。然后点击“GO”。

    在phpmyadmin中导出表

    在phpmyadmin中导出表

    这将生成一个.sql文件,您可以将其保留为备份,或在其他地方恢复/导入。请记住,WordPress数据库仅包含来自您站点的信息,文件(插件/主题)是完全独立的,必须通过SFTP下载和备份。

    选项 2 – 自定义导出方法

    如果要将您的数据库导入到已存在同名表的位置,您将需要选择“Custom – display all possible options”。

    phpmyadmin导出自定义

    phpmyadmin导出自定义

    向下滚动到对象创建选项部分,然后选择“Add DROP TABLE / VIEW / PROCEDURE / FUNCTION / EVENT / TRIGGER statement.”。这将确保它只是覆盖同名的现有表。

    添加删除表phpmyadmin

    添加删除表phpmyadmin

    然后点击“前往”。这将生成一个.sql文件,您可以将其保留为备份,或在其他地方恢复/导入。

    如何在宝塔面板中备份MySQL数据库

    如果您是宝塔面板用户,则可以采取直接备份及计划任务备份两种方式。

    直接备份MySQL数据库

    登录您的宝塔面板管理后台,点击左侧“数据库”菜单,在数据库列表找到你需要备份的那一个,点击备份下方的操作连接,比如无备份;

    宝塔面板数据库管理

    宝塔面板数据库管理

    然后在弹出窗口,点击“备份”按钮,即可即时备份当前的MySQl数据库。

    宝塔面板备份数据库

    宝塔面板备份数据库

    计划任务备份MySQL数据库

    宝塔面板另外一个备份数据库的方式是采用定时任务。进入宝塔面板后,点击左侧菜单的“计划任务”。

    然后任务类型选择为“备份数据库”,任务名称可以设置为“网站名称+时间周期+数据库备份”。最后设置执行周期,点击添加任务按钮,即可创建数据库备份任务计划。

    定时数据库备份任务

    定时数据库备份任务

    如果您要将数据库备份用于其他地方,请务必查看我们的教程,了解如何使用phpMyAdmin恢复您的MySQL数据库

  • 如何使用phpMyAdmin恢复MySQL数据库

    如何使用phpMyAdmin恢复MySQL数据库

    大多数WordPress主机,包括自动备份,允许您在紧急情况下恢复。但是,有时您可能需要手动恢复和/或上传您自己的MySQL数据库。

    这可能是因为您正在迁移主机,或者您可能想要进行一些本地开发。在任何情况下,您都可以按照以下有关如何使用phpMyAdmin恢复MySQL数据库的快速简便教程进行操作。

    phpMyAdmin 是一个免费的开源工具,可通过浏览器使用,用于处理MySQL或MariaDB的管理。它可以用于各种不同的操作,例如迁移数据库、管理表、索引和执行SQL语句。今天我们将简单地使用phpMyAdmin恢复一个WordPress的MySQL数据库。

    注意:本教程假设您已经有要导入的备份或导出的 *.sql 文件。如果没有,请参阅我们关于如何使用phpMyAdmin备份mySQL数据库的教程。

    第1步

    登录到phpMyAdmin。不同主机的登录入口可能有所不一样,自主搭建的LNMP或者LAMP,可能是yourip/phpmyadmin;宝塔面板,则可以通过数据库-网站对应数据库,点击“管理”操作即可进入phpyadmin。

    第2步

    单击进入您的WordPress数据库。该名称很可能与您网站的名称相对应。

    在phpMyAdmin中单击站点的MySQL数据库

    在phpMyAdmin中单击站点的MySQL数据库

    第3步

    单击“Import”选项卡,然后单击“Choose file”。选择您的 *.sql 文件备份/导出。然后点击“Go”。

    导入 *.sql 文件将覆盖数据库的当前内容。请再三确认后或者备份数据后操作。

    在phpMyAdmin中导入数据库

    在phpMyAdmin中导入数据库

  • 如何恢复WordPress备份数据(多种方法)

    如何恢复WordPress备份数据(多种方法)

    无论您有多精通技术或使用WordPress多久;总有一天会出现可怕的错误。有时是用户错误,有时是由于插件漏洞而被黑客入侵。如果您不知道如何修复它,或者认为这可能需要很多时间,那么解决问题的最快捷、最简单的方法是从备份中恢复WordPress。毕竟,这就是您有备份的原因,或者您应该这样做。

    在本指南中,我们将介绍如何使用六种不同的方法从备份中恢复WordPress。使用某些选项,您可以在几分钟内恢复运行。

    1. 了解WordPress备份的工作原理
    2. 从宝塔面板备份中还原WordPress
    3. 设置宝塔自动备份计划任务
    4. 使用插件从备份中恢复WordPress
    5. 使用phpMyAdmin恢复WordPress数据库备份
    6. 使用cPanel恢复WordPress数据库备份
    7. 从仪表盘或使用SFTP手动恢复WordPress文件

    了解WordPress备份的工作原理

    在我们深入研究如何从备份中恢复WordPress之前,首先了解它们的工作原理很重要。标准的WordPress备份包含您网站的文件和MySQL数据库。但是WordPress备份可能会因用于备份的内容而异。

    WordPress备份插件

    如果您使用的是WordPress备份插件,通常他们会给您选择只保留您的/wp-content/uploads/和数据库(有时还有您的主题和插件文件夹)以节省磁盘空间。数据库包含您的所有数据,而uploads文件夹包含您无法通过其他方式恢复的重要文件,例如媒体库中的图像。

    主题和插件通常可以轻松重新安装。但是,大多数备份插件都可以让您选择做所有事情或仅限于节省空间。

    如果您使用的是支持增量备份的备份插件(这是我们推荐的),它将首先进行整个站点备份,然后仅在您的站点上存储更改。这大大减少了磁盘空间使用量,并且性能更好,因为它不会在重复的计划中一次敲打您的服务器。

    使用WordPress主机的一键式还原点

    如果您有托管服务提供商的WordPress备份,这些备份通常更像是您网站的快照。你可以把它想象成Mac上的Time Machine。大多数托管的WordPress主机让您一键恢复到某个时间点。这是迄今为止最简单、最方便的方法!

    当然国内很多云服务器提供商都提供备份技术支持服务,比如阿里云,百度云、腾讯云及华为云都提供类似的快照、克隆或者镜像支持,可以实现一键还原。

    注:如果你使用了单独的云数据库,你还需要为云数据库启用自动备份任务,才可以实现一键还原。

    从宝塔面板备份中还原WordPress

    您可以直接在“宝塔”面板中轻松恢复您的WordPress站点。只需按照以下步骤操作即可。

    需要清楚地知道宝塔面板不会自动备份网站文件及数据库,这跟大厂的备份一样,都需要你先启用备份计划,才会有备份数据。此外,宝塔面板的备份与云服务器提供商提供的一键备份还原有质的区别。

    像阿里云的每个备份都是创建备份时此环境的文件、数据库、重定向和Nginx配置的完整快照。当您恢复备份时,对网站文件、数据库、重定向和Nginx配置的所有更改都将回滚到创建备份的时间。

    但宝塔面板备份的仅是网站文件及数据库,不会对整个服务器进行备份及还原。

    第1步

    首先,登录宝塔面板。转到左侧的“网站”,然后单击您需要为其恢复备份的WordPress站点的备份列下方的“备份入口”,或者直接访问/www/backup/site。

    WordPress网站备份

    WordPress网站备份

    第2步

    将备份的数据压缩包解压并覆盖现有的网站目录,你也可以直接删除现有的网站数据,使用备份的数据直接替代旧数据。至此,即可恢复网站的文件数据。下面你,还需要恢复数据库。

    第3步

    要“恢复”数据库,你需要进入宝塔面板的“数据库”,选择你需要恢复数据库的网站对应数据库行,点击备份下方的导入:

    WordPress数据库备份恢复

    WordPress数据库备份恢复

    选择最新的数据库备份文件,点击导入即可恢复网站数据库

    WordPress数据库备份恢复

    WordPress数据库备份恢复

    注:宝塔面板的网站文件及数据库备份恢复依赖宝塔面板的计划任务,或者你的手动备份。我们将会在下一个章节讲到。

    设置宝塔自动备份计划任务

    在宝塔面板,您可以为您的WordPress网站文件及数据库设置备份计划任务,以便于您日后需要,快速将网站恢复至此前的状态。

    您可以通过宝塔面板的“计划任务”设置自动备份计划任务。

    宝塔计划任务

    宝塔计划任务

    要设置网站备份,您只需要在任务类型处选择“备份网站”,然后设置任务名称、执行周期及选择备份网站、对应的备份路径,点击添加任务即可。

    宝塔网站备份任务

    宝塔网站备份任务

    要设置网站数据库备份,设置类似网站备份,不同的是任务类型及需选择对应网站的数据库,最后点击添加任务。

    宝塔数据库备份任务

    宝塔数据库备份任务

    使用插件从备份中恢复WordPress

    接下来,我们将向您展示如何使用插件从备份中恢复 WordPress。我们只推荐使用支持增量备份的备份。

    增量网站备份是指系统仅在站点文件和数据库表发生更改时创建备份。这样做的原因是为了提高您的站点性能并避免服务器上出现数十个不必要的备份文件。因此,最好是您的备份插件扫描最新的文件并在没有任何更改的情况下跳过下一个备份。

    以下是我们推荐的四个备份插件:

    在本教程中,我们将使用WP Time Capsule。它有一个免费的、功能齐全的版本,您可以使用30天。这很棒,因为这意味着您可以在提交之前先尝试一下。

    WordPress插件-WP Time Capsule

    WordPress插件-WP Time Capsule

    WP Time Capsule提供增量备份和恢复。这意味着您可以通过在备份期间从不复制文件而仅选择这些恢复所需的特定文件来提高站点性能并使恢复更容易。

    我们假设您已经进行了备份。如果您需要帮助从头开始安装它,请查看WP Time Capsule的入门指南。否则,请按照以下步骤从WP Time Capsule备份恢复WordPress。

    第1步:登录到您的WordPress仪表盘,转到“WP Time Capsule”→“Backups”,然后在日历上选择一个还原点。

    注意:如果您无权访问WordPress管理仪表盘(可能当前无法访问),请参阅WP Time Capsule的解决方案,了解如何恢复已关闭的站点

    选择WP Time Capsule还原点

    选择WP Time Capsule还原点

    第2步:然后单击“Restore site to this point.”。他们也有能力恢复到他们自己的临时解决方案。

    使用WP Time Capsule从备份中恢复WordPress

    使用WP Time Capsule从备份中恢复WordPress

    使用phpMyAdmin恢复WordPress数据库备份

    有时您可能需要手动恢复数据库。您可以按照以下有关如何使用phpMyAdmin恢复MySQL数据库的步骤进行操作。

    phpMyAdmin是一个免费的开源工具,可通过浏览器使用,用于处理MySQL或MariaDB的管理。它可以用于各种不同的操作,例如迁移数据库、管理表、索引和执行SQL语句。

    注意:本教程假设您已经有*.sql要导入的备份或导出 文件。如果没有,请参阅我们关于如何使用phpMyAdmin备份mySQL数据库的教程 。

    第1步:首先,您需要登录到phpMyAdmin。在宝塔面板,我们可以从宝塔面板左侧的数据库菜单,然后在数据库列表找到网站对应的数据库,然后点击“管理”即可进入phpMyAdmin。

    宝塔面板中的phpMyAdmin入口

    宝塔面板中的phpMyAdmin入口

    注意:如果您使用不同的托管服务提供商,phpMyAdmin的位置可能会有所不同。您可以查看他们的文档或联系他们的支持团队并询问它的位置。如果您使用的是cPanel,则可以在“Databases”部分下找到phpMyAdmin。

    cPanel phpMyAdmin

    cPanel phpMyAdmin

    第2步:单击您的WordPress数据库。该名称很可能与您网站的名称相对应。

    WordPress数据库-phpMyAdmin

    WordPress数据库-phpMyAdmin

    第3步:单击“Import”选项卡,然后单击“Choose file”。选择您的*.sql文件备份/导出。然后点击“Go”。

    重要提示:导入*.sql文件将覆盖数据库的当前内容。一定要备份以防万一。

    phpMyAdmin中的MySQL数据库导入

    phpMyAdmin中的MySQL数据库导入

    如果您因为认为WordPress网站可能已被黑客入侵而恢复数据库,我们建议您采取一些额外的步骤。

    更改您的数据库密码

    如果您的WordPress网站遭到黑客入侵,您应该重置您的MySQL数据库密码。在宝塔面板的“数据库”菜单下,您可以点击网站对应的数据库对应的“改密操作”即可执行该网站数据库密码修改。修改数据库密码后,您可以手动更新您的wp-config.php文件

    生成新的数据库密码

    生成新的数据库密码

    重新安装WordPress核心(无效插件、主题)

    我们建议的另一件事是重新安装WordPress核心。这不会影响您的数据(存储在数据库中)或自定义。

    如果您正在处理无效的WordPress插件或主题,您还应该重新安装它们,但使用开发人员提供的合法副本。

    使用cPanel恢复WordPress数据库备份

    如果您与使用cPanel的托管服务提供商合作,您可以以类似的方式恢复您的WordPress数据库。请按照以下步骤操作。

    第1步:登录您的cPanel帐户,然后在“Files”部分下单击“Backup”。

    cPanel备份

    cPanel备份

    第2步:向下滚动到“Restore a MySQL database backup”。单击“Choose File”并选择您的*.sql文件备份/导出。然后点击“Upload”。

    cPanel恢复MySQL数据库备份

    cPanel恢复MySQL数据库备份

    从仪表盘或使用SFTP手动恢复WordPress文件

    如果您需要手动恢复WordPress文件,您可以使用两种不同的方法。

    从仪表盘恢复WordPress文件

    如果您仍然可以访问仪表盘,则可以先尝试此方法。这出奇的简单。

    在您的WordPress仪表盘中,转到侧栏中的“仪表盘”→“更新”。然后单击“立即重新安装”按钮。

    WordPress仪表盘立即重新安装选项

    WordPress仪表盘立即重新安装选项

    单击该按钮后,WordPress将自动下载并重新安装最新版本的WordPress。当您从仪表盘更新WordPress时,您实际上只是手动重新运行WordPress执行的正常更新过程。

    这可能需要几秒钟 – 但一旦该过程完成,您应该安装一个全新的WordPress副本。

    使用SFTP恢复WordPress文件

    如果您因为错误而无法访问WordPress管理后台(或者只是更喜欢通过SFTP工作),您可以通过SFTP执行类似的过程。基本上,您将手动复制WordPress上面部分中本来可以为您做的事情。

    以下是这些步骤的快速摘要:

    1. 下载最新版本的WordPress。
    2. 提取.zip文件。
    3. 上传除/wp-content/ 文件夹外的所有内容 。

    第1步:首先,前往WordPress .org并下载最新版本的WordPress。

    下载最新的WordPress副本

    下载最新的WordPress副本

    第2步:下载完成后,将.zip文件的完整内容提取到您的计算机。然后,删除wp-content 文件夹。

    删除WordPress安装包的wp-content文件夹

    删除WordPress安装包的wp-content文件夹

    第3步:完成后,通过SFTP连接到您的主机并将剩余文件上传到您最初安装WordPress的文件夹。通常,这是您的根文件夹,名称类似于public 或 public_htmlwwwroot/yourdomain

    当您开始上传文件时,您的SFTP程序应该会提示您一条类似于“目标文件已经存在”的消息。发生这种情况时,请确保选择覆盖选项并继续:

    通过SFTP上传剩余文件

    通过SFTP上传剩余文件

    因为您已经删除了该 wp-content 文件夹,这将覆盖所有核心WordPress文件,而不会影响您的任何主题或插件。上传完成后,您应该拥有一个全新安装的WordPress核心文件副本,希望一切顺利。

    小结

    虽然从备份或文件恢复WordPress通常是一个非常简单的过程,但有时您可能会遇到一些问题。以下是我们看到用户遇到的一些常见问题以及如何解决这些问题的链接:

  • 如何使用Stripe Radar预防和减少98%的信用卡欺诈

    如何使用Stripe Radar预防和减少98%的信用卡欺诈

    电子商务和SaaS行业正在蓬勃发展,这已不是什么秘密。网上商店比以往任何时候都多,每天都有成千上万的新企业涌现。世界各地的新服务和产品每天都试图向我们推销一些东西。在过去的10年里,我们的购物行为发生了巨大的变化,今天我们倾向于在线购买几乎所有东西:披萨、耐克鞋、最新的Xbox、小型企业CRM、会计软件,甚至是新的特斯拉Model S。

    您可以在不到一个小时的时间内启动您的WooCommerce商店,您所需要的只是一个域、一个主题、一些插件和一个支付工具。开始您的SaaS业务、销售您的服务、获取经常性收入并将其提升到一个新的水平也比以往任何时候都更容易!

    电子商务店主和数字产品供应商希望分一杯羹,但随着这些行业的不断发展,电子商务/SaaS信用卡欺诈事件也越来越多。如果您是企业主,您可能对这种情况很熟悉,并且一直在寻找新的方法来减少欺诈交易的数量,更好的是,尽可能地防止它们。

    为了确保我们在同一页面上,以下是在线支付欺诈的简要说明:

    在线支付欺诈涉及个人获取他人的信用卡号并使用它进行未经授权的在线购买。个人可能会购买一件物品(或购买数字产品),然后以实际价格的一小部分在网上转售。原始持卡人(在某个时候)会发现这种未经授权的交易,并与他们的银行提出争议(退款)。

    这很令人沮丧,不是吗?我知道你的感受。它们会导致您的业务不断头疼,更重要的是会花费您很多钱。如果您使用Stripe作为您的在线支付渠道,那么这篇文章适合您。

    我将向您展示Stripe Radar如何让您的生活更轻松!借助这种基于机器学习的解决方案,我们能够将信用欺诈减少98%。我们不必再花时间审查有争议的费用和可疑的注册。相信我,这是一种非常好的感觉!让我们深入了解细节。

    这并不奇怪,但数字欺诈的数量正在迅速增加。今天,我们将使用Pymts和Forter在2016年进行的调查中的一些数字。您可以从此链接下载完整的研究。以下是一些最有趣的发现:

    • 2015年第四季度,每1,000笔交易就有27起欺诈企图。
    • 在2016年第一季度,每100美元的交易中约有4.79美元处于风险之中(在2015年第一季度,“仅”为1.89美元)。

    数字欺诈趋势

    数字欺诈趋势(图片来源:Pymts和Forter)

    • 第一季度到第四季度,数字商品的欺诈攻击率翻了四倍多。
    • 第一季度到第四季度,奢侈品的欺诈攻击率几乎翻了一番。
    • 100美元中的7.77美元对数字商品有风险。

    行业欺诈攻击

    行业欺诈攻击(图片来源:Pymts和Forter)

    根据 LexisNexis的研究,美国零售商的年度欺诈成本在2014年达到320亿美元。零售商在2015年损失了大约1.3%的收入,是2014年的两倍多。哎呀,那是一大笔钱。您可以在下面看到2015年每1,000笔交易的攻击量。

    网络欺诈攻击率

    网络欺诈攻击率

    受影响最大的行业是数码产品、服装、电子产品、食品和奢侈品。我们可以看到这些数字很严重,而且在涉及在线支付欺诈时,我们正在谈论大量的收入损失。

    为什么您需要防止信用卡欺诈,为什么它对您的业务不利

    我相信您知道答案,但让我为您总结一下在线欺诈的真正后果以及它如何影响您的业务。

    首先,它不会让您专注于您的业务。如果您的在线商店或SaaS(软件即服务)有大量销售或注册,您将不得不花费大量时间处理欺诈性交易、购买和有争议的费用。您正在经营一家企业,而您无法承担整天处理这些类型的问题的费用。您必须弄清楚如何使其自动化并在它们发生之前阻止它们。

    其次,当您醒来时发现自己因支付处理器暂停了您的帐户而停业时,这可能是毁灭性的。相信我,我知道我在说什么。在我们业务的早期,我们的支付处理商因为一些欺诈性交易而关闭了我们的账户,我们突然陷入了停滞。我们无法收取我们的收入并让新客户注册我们的服务。是的,它很糟糕,但感谢上帝,它很快就解决了。然而,情况并非总是如此。

    第三,也是最重要的一点,退款非常昂贵。电子商务在2016年因退款损失近70亿美元。到2020年,电子商务退款损失预计将激增至310亿美元。以下是一些流行的支付处理器可能会导致退款的费用:

    • PayPal对每次拒付收取20美元。
    • Stripe对每次拒付收取15美元(AKA争议费)。
    • 根据银行的不同,退款可能在15到75美元之间。它加起来很快。

    看看下面的计算,看看单次拒付会对您的业务和盈利能力造成多大影响。当企业成为个人欺诈的目标时,这些成本可能会累加起来,并对您的企业财务产生重大影响!

    盈亏平衡精密模型

    盈亏平衡精密模型

    如果你想使用你自己的数字,你可以在这里模拟计算。好了,介绍到此为止,让我们深入了解Stripe Radar的工作原理以及如何使用它来降低欺诈购买的风险。

    Stripe Radar

    Stripe Radar

    什么是Stripe Radar?它有什么帮助?

    在过去的几年里,Stripe已成为最值得信赖和知名的在线支付处理商。两位爱尔兰企业家John和Patrick Collison于2010年创立了Stripe,从那时起,公司的发展呈指数级增长。Stripe的900多名才华横溢的员工为超过100,000家企业提供支持,每年处理500亿美元的商业交易,是您的企业得到妥善处理的保证。

    目前,我们认为Stripe是个人和企业在线和移动应用程序接受支付的最佳解决方案。在您的在线商店中实施Stripe非常简单,使用他们的代码就像做梦一样(如果PayPal高管正在阅读这篇文章,请向这些人学习如何使您的平台可用……),而且他们拥有对开发人员最友好的解决方案.

    Radar是一款Stripe产品,最初于2016年10月推出

    Radar是一种工具,可帮助您防止欺诈性付款并减少信用卡欺诈,并可选择手动审查可疑付款。Radar的机器学习系统或当它们触发您之前配置的自定义规则时,会自动标记这些可疑付款以供审查。

    今年早些时候,Radar 2.0推出,它具有更多功能和增强的高级机器学习功能,可以捕捉更多的欺诈活动。

    Stripe Radar 2.0

    Stripe Radar 2.0

    Radar的机器学习系统日益智能,这要归功于成千上万的用户正在配置他们的自定义规则并手动阻止可疑付款。雷达并不完美,因为我仍然偶尔会看到明显的欺诈注册,但系统并未自动阻止。但我想强调的是,雷达让我们的生活变得如此轻松,以至于我对他们感激不尽。现在让我们深入了解Radar的功能和自定义规则!

    Stripe Radar中的自定义规则

    我不会详细介绍雷达如何工作的所有技术细节,因为我什至不知道所有细节,除了它基于机器学习系统。Stripe每天管理数千万笔交易,这意味着他们拥有非常庞大的数据池。数以百万计的信用卡详细信息由他们的系统处理,并通过算法进行分析,寻找模式以识别每笔交易并将其标记为安全或欺诈。雷达扫描每笔付款以帮助识别和防止欺诈。但是我们必须为这些算法提供新的动作和信息,以训练它们变得更聪明。这就是Stripe庞大的用户群发挥作用的地方。

    Stripe支付被拒绝

    Stripe支付被拒绝

    如何以及为什么应该手动审查交易

    每次我们手动审查交易并采取某种行动时,我们都会训练Stripe的机器学习算法,使其变得更加复杂。每当您手动查看欺诈活动、查找可疑信息时,都会附上详细信息,清楚地向您显示特定购买或注册是欺诈性的。

    基于大量的人工审查,您应该能够轻松地发现一种模式。然后您很有可能可以设置自定义规则,以便算法能够识别并阻止这些类型的交易。

    付款欺诈

    付款欺诈

    更少的欺诈交易意味着更少的退款和更多的钱在你的口袋里。

    发现欺诈活动

    那么你能做些什么来快速发现欺诈活动呢?好吧,让我们看一下下面的屏幕截图。

    欺诈性用户活动

    欺诈性用户活动

    这就是我们所看到的。一个叫Ranji的尼泊尔人试图用奥地利发行的卡注册一项服务(从尼泊尔到奥地利的距离只有6089公里)。这已经有点可疑了,但是当您看到持卡人的名字不是Ranji而是Caroline时,您现在可以99.9%确定这是欺诈活动,应该阻止并报告。好消息是,Stripe以相当高的成功率捕获了这些活动,而且它们很少导致实际购买。但有时它仍然会发生,如果您发现有很多像这样的奇怪活动,您可以随时配置自定义规则。

    在Stripe Radar中配置自定义规则

    可以在此处找到带有详细说明的雷达规则参考的完整列表 。要创建规则,请选择左侧的“Radar”并选择“Rules”。

    Stripe Radar规则菜单

    Stripe Radar规则菜单

    选择“When should a payment be blocked section”,向下滚动并单击“Add Rule”。

    Stripe Radar添加规则

    Stripe Radar添加规则

    之后,您将看到名为“Add a rule for blocking payments”的弹出窗口。

    Stripe Radar – 添加阻止付款的规则

    Stripe Radar – 添加阻止付款的规则

    这是我们将添加我们的第一个自定义规则的地方。所以我们想要实现的是阻止所有用户位置不等于信用卡原始位置的付款。注意:有时它仍然可能是合法购买,但老实说,奥地利用户在尼泊尔度假期间购买 SaaS 服务有点远(更不用说名称不匹配)。

    假设来自尼泊尔的个人不断尝试进行购买。您需要做的就是找到ISO两个字母的国家/地区代码(这里是完整列表)并将以下规则添加到Radar:

    :card_country: = ‘AT’ AND :ip_country:= ‘NP’
    :card_country: = ‘AT’ AND :ip_country:= ‘NP’
    :card_country: = 'AT' AND :ip_country:= 'NP'

    国家和卡不符合规则

    国家和卡不符合规则

    这条规则具体是做什么的?从现在开始,当拥有尼泊尔IP地址的人试图使用奥地利发行的信用卡进行购物时,Stripe将阻止所有交易。这里还有几个例子:

    如果您想阻止使用法国信用卡从英国进行的付款,请添加以下规则:

    :card_country: = ‘FR’ AND :ip_country: = ‘GB’
    :card_country: = ‘FR’ AND :ip_country: = ‘GB’
    :card_country: = 'FR' AND :ip_country: = 'GB'

    或者,如果有人尝试使用意大利卡购买您的产品,但电子邮件地址不是来自意大利,那么您将添加以下规则:

    :card_country: = ‘IT’ 和 :ip_country:!= ‘IT’
    :card_country: = ‘IT’ 和 :ip_country:!= ‘IT’
    :card_country: = 'IT' 和 :ip_country:!= 'IT'

    如您所见,配置这些规则的可能性是无限的。

    如果您单击“Test Rule”按钮,系统将检查交易历史并查看它们是否可以匹配任何先前的尝试。如果您看到很多最近的付款尝试,并且您已经知道这些是合法购买(假设您认出了客户),您可能不应该激活该规则,因为它会阻止这些有效交易。如果在测试规则后没有任何内容,或者您​​只是看到欺诈尝试,请单击“Add and Enable”,仅此而已。您可以随时轻松地编辑、删除或禁用规则。

    在Stripe Radar中阻止一次性电子邮件

    现在进入下一个有用的规则。欺诈性用户喜欢使用一次性电子邮件地址。那里有很多这样的提供商,您可以在其中购买电子邮件地址,甚至可以批量创建它们。好消息是,您可以通过向Radar添加简单规则来完全阻止这些电子邮件域。假设电子邮件提供商是shadyemail.com。这是您需要添加的规则:

    :email_domain: = ‘shadyemail.com’
    :email_domain: = ‘shadyemail.com’
    :email_domain: = 'shadyemail.com'

    在Stripe Radar中阻止电子邮件地址

    在Stripe Radar中阻止电子邮件地址

    测试规则,然后启用它。结果?没有人可以使用此域(域上的电子邮件地址)进行任何购买。

    在Stripe Radar中拦截IP地址

    如果您发现从特定IP地址收到大量欺诈性注册,您也可以将其添加到Radar。即使在欺诈性购买之后添加它也很有用,因为这样您可以确保Radar将来会拦截它。如果您已找到IP地址(如果您选择特定购买并检查相关日志,则可以在Stripe中找到它),您需要做的就是添加以下规则:

    :ip_address: = ‘123.4.567.899’
    :ip_address: = ‘123.4.567.899’
    :ip_address: = '123.4.567.899'

    在Stripe Radar中拦截IP地址

    在Stripe Radar中拦截IP地址

    测试规则并启用它。

    更有用的Stripe Radar规则

    假设您没有将产品运送到特定国家/地区,或者您不想为该国家/地区的客户提供数字服务。也许您有很多来自这个国家/地区的欺诈性注册,您想简单地阻止它们。对于这个例子,我们使用的是摩洛哥(对不起,伙计们)。以下是您需要添加的规则:

    :ip_country: = ‘MA’
    :ip_country: = ‘MA’
    :ip_country: = 'MA'

    这将阻止来自摩洛哥任何IP地址的所有尝试。

    在Stripe Radar中屏蔽国家

    在Stripe Radar中屏蔽国家

    另一个有用的规则是管理同一客户或同一IP地址在短时间内拒绝和失败的付款尝试。合法客户不应该需要6次尝试进行购买,因为他们通常知道他们的卡详细信息并且有足够的资金来支付它。

    如果正在使用的信用卡被盗,该人通常不知道所有详细信息,因此会不断尝试注册或使用略有不同的详细信息进行购买。在下面的示例中,个人在15分钟内使用了七张不同的信用卡。看起来是合法的,对吧?

    Stripe Radar中的付款尝试失败

    Stripe Radar中的付款尝试失败

    我相信他们会尝试更多,但他们可能会用完信用卡。而且下一张卡有可能会起作用!这就是为什么你应该限制下降。以下是您可以用来限制它们的几个不同属性:

    • 每天拒绝每张卡片号码
    • 拒绝每张卡数小时
    • 每天拒绝每个客户
    • 拒绝每客户每小时
    • 每天拒绝每个IP地址
    • 拒绝每ip地址每小时

    例如,假设我们想要阻止客户在60分钟内尝试购买五次但交易已被银行拒绝的下一次尝试。如果是欺诈者,他们将无法进行第六次购买。如果是合法客户,但由于某种原因,尝试五次还不够,他们总是可以致电银行寻求进一步帮助。以下是您要添加的规则:

    :declines_per_customer_hourly: = 5
    :declines_per_customer_hourly: = 5
    :declines_per_customer_hourly: = 5

    Stripe Radar每小时下降规则

    Stripe Radar每小时下降规则

    您还可以使用以下规则限制过去一小时内从卡中扣款的次数:

    charge_attempts_per_card_number_hourly
    charge_attempts_per_card_number_hourly
    charge_attempts_per_card_number_hourly

    同样,可以在此处找到完整的规则列表。

    一些黄金法则和建议

    1. 始终要求进行CVC检查。这是不费吹灰之力的。如果您不这样做,您将很难管理拒付和欺诈性购买。
    2. 定期检查您的交易。即使您每个月只花一小时检查它们并审查您的交易,您也会获得一些宝贵的见解!
    3. 跟进最新的Stripe Radar功能。Stripe的团队可以让您的日常生活变得更加轻松。您需要做的就是启用一些很棒的功能,您已经为您的业务节省了大量的金钱和时间。
    4. 找到一个平衡点。阻止一名合法客户比允许10次欺诈性注册或购买要好。您可以随时查看现有规则、进行编辑并再次测试它们。不要害怕使用它们。我花费大量时间编写、编辑、禁用和测试规则。我也犯了一些错误,但归根结底,我可以说这绝对是值得的。这是一个学习曲线,但是一旦您熟悉了基础知识及其工作原理,整个审核过程就会变得更加有趣!

    最后

    作为Stripe的客户,您应试图弄清楚如何减少欺诈尝试和注册的数量。花了无数个小时审查每笔恶意交易,试图找到模式。现在,只需将自定义规则添加到Radar以防止未来的尝试一样简单。

    Stripe的算法已经有了很大的改进,即使是在过去的几个月里。他们在Stripe Radar 2.0上做得很棒。与早些年相比, 可以说Stripe的欺诈交易量减少了98%,只需启用一些自定义规则并让他们的算法发挥作用。即使没有我的自定义规则,Stripe现在也能够阻止大多数欺诈尝试。但最好安全地使用它并启用一些经过测试的规则。

    我强烈建议您使用Stripe以及Radar必须提供的所有功能。

  • WordPress安全指南:19个步骤让您的WordPress安全防线坚如磐石

    WordPress安全指南:19个步骤让您的WordPress安全防线坚如磐石

    谈到WordPress安全性,您可以采取很多措施来锁定您的网站,以防止黑客和漏洞影响您的电子商务网站或博客。您最不想发生的事情是一天早上醒来发现您的网站一团糟。因此,今天我们将分享许多技巧、策略和技术,您可以使用这些技巧、策略和技术来提高WordPress安全性并保持受保护。

    WordPress安全吗?

    您可能想知道的第一个问题是WordPress安全吗?多半是对的。然而,WordPress通常会因为容易出现安全漏洞并且本质上不是用于企业的安全平台而受到批评。这通常是由于用户一直遵循经过行业验证的安全最差做法。

    使用过时的WordPress软件、无效的插件、糟糕的系统管理、凭据管理以及非技术人员WordPress用户缺乏必要的Web和安全知识,使黑客能够控制他们的网络犯罪游戏。即使是行业领导者也不总是使用最佳实践。路透社被黑是因为他们使用的是过时的WordPress版本。

    从根本上说,安全并不是完全安全的系统。这样的事情很可能是不切实际的,或者不可能找到和/或维护。然而,安全是降低风险,而不是消除风险。这是关于在合理范围内使用所有可用的适当控件,使您可以改善整体姿势,从而降低使自己成为目标并随后被黑客入侵的可能性。– WordPress安全法典

    现在,这并不是说漏洞不存在。根据多平台安全公司Sucuri 2017年第三季度的一项研究WordPress继续领先于他们工作的受感染网站(83%)。 这一比例高于2016年的74%。

    WordPress安全漏洞

    WordPress安全漏洞

    WordPress为Internet上超过43.0%的网站提供支持,并且拥有数十万个主题和插件组合,因此存在漏洞并不断被发现也就不足为奇了。但是,围绕WordPress平台也有一个很棒的社区,以确保这些东西尽快得到修补。截至2022年,WordPress安全团队由大约50名(高于2017年的25名)专家组成,其中包括首席开发人员和安全研究人员——大约一半是Automattic的员工,还有一些人在网络安全领域工作。

    WordPress漏洞

    在下面查看一些不同类型的WordPress安全漏洞。

    Backdoors(后门)

    这个名副其实的后门漏洞为黑客提供了绕过安全加密的隐藏通道,以通过异常方法( wp-Admin、SFTP 、FTP等)访问WordPress网站。一旦被利用,后门使黑客能够通过跨站点污染对托管服务器造成严重破坏攻击——危害托管在同一服务器上的多个站点。在2017年第三季度, Sucuri报告说,后门仍然是攻击者采取的众多黑客攻击后行动之一,71%的受感染网站具有某种形式的后门注入。

    恶意软件家族分布

    恶意软件家族分布

    后门通常被加密以看起来像合法的WordPress系统文件,并通过利用平台过时版本中的弱点和错误进入WordPress数据库。TimThumb惨败是利用黑幕脚本和过时软件危害数百万网站的后门漏洞的典型例子。

    幸运的是,这个漏洞的预防和治疗相当简单。您可以使用SiteCheck等工具扫描您的WordPress网站,  该工具可以轻松检测常见的后门程序。双重身份验证、阻止IP、限制管理员访问和防止未经授权执行PHP文件很容易解决常见的后门威胁,我们将在下面详细介绍。Canton Becker 也有一篇关于清理WordPress安装上的后门混乱的好文章。

    Pharma Hack

    Pharma Hack漏洞用于在过时版本的WordPress网站和插件中插入恶意代码,导致搜索引擎在搜索受感染网站时返回药品广告。与传统的恶意软件相比,该漏洞更像是垃圾邮件威胁,但让搜索引擎有足够的理由阻止该网站以散布垃圾邮件的指控。

    Pharma Hack的移动部分包括插件和数据库中的后门,可以按照Sucuri博客中的说明进行清理。然而,这些漏洞利用通常是隐藏在数据库中的加密恶意注入的恶意变种,需要彻底的清理过程来修复漏洞。不过,您可以使用推荐的WordPress托管服务提供商和最新的服务器并定期更新您的WordPress安装、主题和插件,从而轻松防止Pharma Hacks。

    Brute-force Login Attempts(暴力登录尝试)

    蛮力登录尝试使用自动化脚本来利用弱密码并获得对您网站的访问权限。两步验证、限制登录尝试、监控未经授权的登录、阻止IP和使用强密码是防止暴力攻击的一些最简单和高效的方法。但不幸的是,许多WordPress网站所有者未能执行这些安全措施,而黑客很容易在一天内使用暴力攻击破坏多达30,000个网站

    Malicious Redirects(恶意重定向)

    恶意重定向使用FTP、SFTP、wp-admin和其他协议在WordPress安装中创建后门,并将重定向代码注入网站。重定向通常以编码形式放置在您的 .htaccess文件和其他WordPress核心文件中,将网络流量引导至恶意站点。我们将在下面的WordPress安全步骤中介绍一些可以防止这些问题的方法。

    跨站脚本 (XSS)

    跨站点脚本 (XSS) 是指将恶意脚本注入到受信任的网站或应用程序中。攻击者使用它在不知情的情况下向最终用户发送恶意代码,通常是浏览器端脚本。目的通常是获取cookie或会话数据,甚至可能重写页面上的HTML。

    根据WordFence的说法,跨站脚本漏洞是WordPress插件中最常见的漏洞。

    Denial of Service

    可能是其中最危险的一个,拒绝服务 (DDoS)漏洞利用代码中的错误和错误来淹没网站操作系统的内存。黑客通过DDoS攻击利用过时且有漏洞的WordPress软件版本,入侵了数百万个网站并赚取了数百万美元。尽管出于经济动机的网络犯罪分子不太可​​能以小公司为目标,但他们往往会破坏过时的易受攻击的网站,以创建僵尸网络链来攻击大型企业。

    即使是最新版本的WordPress软件也无法全面防御备受瞩目的DDoS攻击,但至少可以帮助您避免陷入金融机构与老练网络犯罪分子之间的交火中。不要忘记2016年10月21日。这是互联网因DNS DDoS攻击而瘫痪的日子。

    WordPress安全指南 2022

    根据互联网实时统计,每天有超过100,000个网站被黑客入侵。这就是为什么花一些时间阅读以下关于如何更好地加强WordPress安全性的建议如此重要的原因。

    WordPress网站每天都被黑客入侵

    WordPress网站每天都被黑客入侵

    随着WordPress平台的变化和新漏洞的出现,我们将确保及时更新这篇文章的相关信息。

    1. 安全的WordPress托管
    2. 使用最新的PHP版本
    3. 聪明的用户名和密码
    4. 最新版本
    5. 锁定WordPress后台
    6. 双重身份验证
    7. HTTPS – SSL证书
    8. 强化wp-config.php
    9. 禁用XML-RPC
    10. 隐藏WordPress版本
    11. HTTP安全标头
    12. WordPress安全插件
    13. 数据库安全
    14. 安全连接
    15. 文件和服务器权限
    16. 在仪表板中禁用编辑
    17. 防止盗链
    18. 始终进行WordPress备份
    19. DDoS防护

    1. 安全的WordPress托管

    谈到WordPress安全性,不仅仅是锁定您的网站,尽管我们将在下面为您提供有关如何做到这一点的最佳建议。您的WordPress主机还负责Web服务器级别的安全性。

    选择一个您可以信任的主机非常重要。或者,如果您在自己的VPS上托管WordPress,那么您需要具备自己做这些事情的技术知识。

    WordPress安全指南:19个步骤让您的WordPress安全防线坚如磐石-5

    安全的WordPress托管

    服务器加固是维护完全安全的WordPress环境的关键。它需要多层硬件和软件级别的安全措施来确保托管WordPress站点的IT基础架构能够防御物理和虚拟的复杂威胁。

    因此,托管WordPress的服务器应使用最新的操作系统和(安全)软件进行更新,并彻底测试和扫描漏洞和恶意软件。

    在服务器上安装WordPress之前,服务器级防火墙和入侵检测系统应该到位,即使在WordPress安装和网站建设阶段也能得到很好的保护。但是,机器上安装的每个旨在保护 WordPress 内容的软件都应该与最新的数据库管理系统兼容,以保持最佳性能。服务器还应配置为使用安全网络和文件传输加密协议(例如SFTP而不是FTP),以隐藏敏感内容免受恶意入侵者的侵害。

    托管服务器架构示例

    托管服务器架构示例

    2.使用最新的PHP版本

    PHP是您的WordPress网站的支柱,因此在您的服务器上使用最新版本非常重要。PHP的每个主要版本通常在发布后的两年内都得到完全支持。在此期间,会定期修复错误和安全问题并进行修补。截至目前,在PHP 7.1或更低版本上运行的任何人都不再拥有安全支持,并且面临未修补的安全漏洞。

    支持的PHP版本

    支持的PHP版本

    你猜怎么着?根据官方WordPress Stats页面,截至撰写本文时,超过57%的WordPress用户仍在使用PHP 5.6或更低版本。如果将此与PHP 7.0结合使用,则高达77.5%的用户当前正在使用不再受支持的PHP版本。那太可怕了!

    有时,企业和开发人员确实需要时间来测试并确保与他们的代码兼容,但他们没有借口在没有安全支持的情况下运行。更不用说在旧版本上运行的巨大性能影响了。

    WordPress PHP版本统计

    WordPress PHP版本统计

    不知道您当前使用的是哪个版本的PHP?大多数主机通常将其包含在您网站的标头请求中。一种快速检查方法是通过Pingdom运行您的站点。单击第一个请求并查找X-Powered-By参数。通常,这将显示您的Web服务器当前使用的PHP版本。但是,出于安全原因,某些主机会删除此标头。部分服务器默认会删除此标头以确保您的网站安全。

    在Pingdom中检查PHP版本

    在Pingdom中检查PHP版本

    在宝塔面板,您甚至可以通过仪表盘中的按钮在PHP版本之间切换。

    宝塔面板切换PHP版本

    宝塔面板切换PHP版本

    如果您在使用cPanel的WordPress主机上,通常可以通过单击软件类别下的“PHP Select”在PHP版本之间切换。

    cPanel PHP版

    cPanel PHP版

    3.使用聪明的用户名和密码

    令人惊讶的是,加强WordPress安全性的最佳方法之一就是简单地使用巧妙的用户名和密码。听起来很容易对吧?好吧,看看SplashData的2019年全年最常被盗密码的年度列表(按受欢迎程度排序)。

    • 123456
    • password
    • 123456789
    • 12345678
    • 12345
    • 111111
    • 1234567
    • sunshine
    • qwerty
    • iloveyou

    没错!最受欢迎的密码是“123456”,其次是一个惊人的“密码”。

    强制使用安全的WordPress密码

    强制使用安全的WordPress密码

    核心WordPress的wp_hash_password 函数使用phpass密码散列框架和八次基于MD5的散列。

    一些最好的安全性从基础开始。Google对如何选择强密码有一些很好的建议。或者,您可以使用强密码生成器等在线工具。您可以在此处了解有关如何更改WordPress密码的更多信息。

    为每个网站使用不同的密码也很重要。存储它们的最佳方式是本地存储在计算机上的加密数据库中。KeePass是一个很好的免费工具。如果您不想走这条路,还有在线密码管理器,例如1PasswordLastPass。即使您的数据安全地托管在云中,这些通常也更安全,因为您没有在多个站点上使用相同的密码。它还可以防止您使用便签。

    就您的WordPress安装而言,您永远不应该使用默认的“admin”用户名。为管理员帐户创建一个唯一的WordPress用户名,并删除“admin”用户(如果存在)。您可以通过在仪表盘的“用户”下添加一个新用户并为其分配“管理员”配置文件(如下所示)来执行此操作。

    WordPress管理员角色

    WordPress管理员角色

    为新帐户分配管理员角色后,您可以返回并删除原来的“管理员”用户。确保在单击删除时选择“将所有内容归于”选项并选择新的管理员配置文件。这将指定此人作为这些文章的作者。

    将所有内容归于管理员

    将所有内容归于管理员

    您还可以使用以下命令在phpMyAdmin中手动重命名您当前的管理员用户名。确保在编辑表格之前备份您的数据库。

    UPDATE wp_users SET user_login = ‘newcomplexadminuser’ WHERE user_login = ‘admin’;
    UPDATE wp_users SET user_login = ‘newcomplexadminuser’ WHERE user_login = ‘admin’;
    UPDATE wp_users SET user_login = 'newcomplexadminuser' WHERE user_login = 'admin';

    4. 始终使用最新版本的WordPress、插件和主题

    加强WordPress安全性的另一个非常重要的方法是始终保持最新状态。这包括WordPress核心、插件和主题(来自WordPress插件库和高级版)。这些更新是有原因的,很多时候这些包括安全增强和错误修复。我们建议您阅读我们关于WordPress自动更新如何工作的深入指南。

    让WordPress保持最新状态

    让WordPress保持最新状态

    不幸的是,数以百万计的企业运行着过时版本的WordPress软件和插件,但仍然相信他们正走在商业成功的正确道路上。他们列举了不更新的原因,例如“他们的站点将崩溃”或“核心修改将消失”或“插件 X 无法工作”或“他们只是不需要新功能”。

    事实上,网站崩溃主要是因为旧 WordPress 版本中的错误。WordPress团队和了解所涉及风险的专家开发人员从不推荐核心修改。WordPress更新主要包括必备的安全补丁以及运行最新插件所需的附加功能。

    您是否知道据报道 插件漏洞占黑客已知入口点的55.9% ?这就是WordFence在一项研究中发现的,他们采访了1,000多名WordPress网站所有者,这些网站所有者都是攻击的受害者。通过更新您的插件,您可以更好地确保您不是这些受害者之一。

    被黑的WordPress 网站

    被黑的WordPress 网站

    还建议您只安装受信任的插件。WordPress插件库中的“特色”和“流行”类别可能是一个很好的起点。或者直接从开发者网站下载。我们强烈反对使用无效的WordPress插件和主题。

    首先,您永远不知道修改后的代码可能包含什么。这很容易导致您的网站被黑客入侵。不为高级 WordPress 插件付费也无助于整个社区的发展。我们需要支持开发人员。

    以下是正确删除WordPress主题的方法。

    您可以使用像VirusTotal这样的在线工具 来扫描插件或主题的文件,以查看它是否检测到任何类型的恶意软件。

    病毒总数

    病毒总数

    如何更新WordPress核心

    有几种简单的方法可以更新您的WordPress安装。

    要更新WordPress核心,您可以单击WordPress仪表盘中的“更新”,然后单击“立即更新”按钮。

    更新WordPress核心

    更新WordPress核心

    您还可以通过下载最新版本并通过SFTP上传来手动更新WordPress。

    重要的!如果操作不正确,覆盖错误的文件夹可能会破坏您的网站。如果您对此感到不自在,请先咨询开发人员。

    请按照以下步骤更新现有安装

    1. 删除旧的wp-includeswp-admin目录。
    2. 上传新的wp-includeswp-admin目录。
    3. 将新文件夹中的单个文件上传wp-content到现有wp-content文件夹,覆盖现有文件。不要删除您现有的wp-content文件夹。不要删除现有wp-content目录中的任何文件或文件夹(被新文件覆盖的文件或文件夹除外)。
    4. 将新版本根目录中的所有新松散文件上传到您现有的WordPress根目录。

    如何更新WordPress插件

    更新WordPress插件与更新WordPress核心的过程非常相似。单击WordPress仪表盘中的“更新”,选择要更新的插件,然后单击“更新插件”。

    更新WordPress插件

    更新WordPress插件

    同样,您也可以手动更新插件。只需从插件开发人员或WordPress插件库中获取最新版本并通过FTP上传,覆盖目录中的现有插件 /wp-content/plugins

    同样重要的是要注意,开发人员并不总是让他们的插件保持最新。WP Loop的团队对存储库中有多少WordPress插件没有跟上当前的WordPress核心进行了很好的分析。 根据他们的研究 ,插件库中将近50%的插件在2年多的时间里没有更新

    这并不意味着该插件不适用于当前版本的WordPress,但建议您选择积极更新的插件。过时的插件更有可能包含安全漏洞。

    img src:WP循环

    img src:WP循环

    在插件方面使用您的最佳判断。查看“上次更新”日期和插件有多少评分。如下例所示,这个已经过时并且评论很差,所以我们很可能会建议远离它。WordPress在大多数一段时间未更新的插件顶部也有一个警告。

    评分不佳的旧WordPress插件

    评分不佳的旧WordPress插件

    还有很多资源可以帮助您掌握最新的WordPress安全更新和漏洞。请参阅下面的一些:

    WordPress安全档案

    WordPress安全档案

    5. 锁定您的WordPress管理后台

    有时,流行的WordPress隐蔽安全策略对于普通的在线业务和WordPress网站来说是适当有效的。如果您让黑客更难找到某些后门,那么您受到攻击的可能性就会降低。锁定您的WordPress管理后台并登录是增强安全性的好方法。两种很好的方法是首先更改您的默认wp-admin登录URL并限制登录尝试。

    如何更改您的WordPress登录URL

    默认情况下,您的WordPress站点的登录URL是 domain.com/wp-admin。问题之一是所有的机器人、黑客和脚本都知道这一点。通过更改URL,您可以减少自己的目标并更好地保护自己免受暴力攻击。这不是万能的解决方案,它只是一个小技巧,绝对可以帮助保护您。

    要更改您的WordPress登录 URL,我们建议使用免费的WPS Hide login插件或高级Perfmatters插件。这两个插件都有一个简单的输入字段。请记住选择一些独特的东西,这些东西不会出现在机器人或脚本可能会尝试扫描的列表中。

    使用Perfmatters隐藏WordPress登录URL

    使用Perfmatters隐藏WordPress登录URL

    如何限制登录尝试

    虽然上述更改管理员登录URL的解决方案可以帮助减少大多数错误登录尝试,但设置限制也非常有效。免费的Cerber Limit Login Attempts插件是轻松设置锁定持续时间、登录尝试以及IP白名单和黑名单的好方法。

    限制WordPress中的登录尝试

    限制WordPress中的登录尝试

    如果您正在寻找更简单的WordPress安全解决方案,另一个不错的选择是免费的Login Lockdown插件。登录锁定记录每次失败登录尝试的IP地址和时间戳。如果在短时间内从同一IP范围内检测到超过一定次数的尝试,则对该范围内的所有请求禁用登录功能。并且完全兼容我们上面提到的WPS Hide登录插件。

    锁定WordPress

    锁定WordPress

    如何添加基本HTTP身份验证(htpasswd保护)

    锁定管理员的另一种方法是添加HTTP身份验证。这需要用户名和密码才能访问WordPress登录页面。注意:这通常不应在电子商务网站或会员网站上使用。但这可能是防止机器人访问您的网站的一种非常有效的方法。

    .htpasswd身份验证提示

    .htpasswd身份验证提示

    Apache

    如果您使用的是cPanel主机,您可以从其控制面板启用受密码保护的目录。要手动设置,您首先需要创建一个 .htpasswd文件。您可以使用这个方便的生成器工具。然后将文件上传到你的wp-admin文件夹下的一个目录,例如:

    home/user/.htpasswds/public_html/wp-admin/htpasswd/
    home/user/.htpasswds/public_html/wp-admin/htpasswd/
    home/user/.htpasswds/public_html/wp-admin/htpasswd/

    然后使用以下代码创建一个.htaccess文件并将其上传到您的/wp-admin/目录。确保更新目录路径和用户名。

    AuthName “Admins Only”
    AuthUserFile /home/yourdirectory/.htpasswds/public_html/wp-admin/htpasswd
    AuthType basic
    require user yourusername
    AuthName “Admins Only”
    AuthUserFile /home/yourdirectory/.htpasswds/public_html/wp-admin/htpasswd
    AuthType basic
    require user yourusername
    AuthName "Admins Only"
    AuthUserFile /home/yourdirectory/.htpasswds/public_html/wp-admin/htpasswd
    AuthType basic
    require user yourusername

    这样做的一个警告是它会破坏您网站前端的AJAX (admin-ajax)。这是某些第三方插件所必需的。因此,您还需要将以下代码添加到上述 .htaccess文件中。

    <Files admin-ajax.php>
    Order allow,deny
    Allow from all
    Satisfy any
    </Files>
    <Files admin-ajax.php>
    Order allow,deny
    Allow from all
    Satisfy any
    </Files>
    <Files admin-ajax.php>
    Order allow,deny
    Allow from all
    Satisfy any
    </Files>

    Nginx

    如果您正在运行Nginx,您还可以使用HTTP基本身份验证来限制访问。看看这个教程

    启用后,您的WordPress网站将需要身份验证才能访问它。您可以随时更改凭据或在不再需要时将其禁用。

    锁定URL路径

    如果您使用的是Cloudflare或Sucuri等Web应用程序防火墙 (WAF),它们也有办法锁定URL路径。本质上,您可以设置一个规则,以便只有您的IP地址才能访问您的WordPress管理员登录URL。同样,这通常不应在电子商务网站或会员网站上使用,因为它们也依赖于访问您网站的后端。

    • Cloudflare在其Pro和更高级别帐户中具有锁定URL功能。您可以为任何URL或路径设置规则。
    • Sucuri具有黑名单URL路径功能。然后,您可以将自己的IP列入白名单。

    6. 利用双重身份验证

    当然,我们不能忘记两因素身份验证!无论您的密码有多安全,都存在被他人发现的风险。双因素身份验证涉及一个两步过程,在该过程中,您不仅需要密码登录,还需要第二种方法。它通常是文本 (SMS)、电话或基于时间的一次性密码 (TOTP)。在大多数情况下,这可以100%有效地防止对您的WordPress网站的暴力攻击。为什么?因为攻击者几乎不可能同时拥有您的密码和手机。

    关于双因素身份验证,实际上有两个部分。第一个是您在网络托管服务提供商处拥有的帐户和/或仪表板。如果有人可以访问它,他们可能会更改您的密码、删除您的网站、更改DNS记录以及各种可怕的事情。

    双因素身份验证的第二部分与您的实际WordPress安装有关。为此,我们推荐几个插件:

    其中许多都有自己的身份验证器应用程序,您可以在手机上安装:

    安装和配置上述插件之一后,您通常会在WordPress登录页面上有一个额外的字段来输入您的安全代码。或者,使用Duo插件,您首先使用您的凭据登录,然后需要选择一种身份验证方法,例如Duo Push、呼叫或密码。

    这种方法可以很容易地与更改您的默认登录URL相结合,我们之前已经讨论过。因此,您的WordPress登录URL不仅只有您知道,而且现在需要额外的身份验证才能进入。

    WordPress两因子身份验证器页面

    WordPress两因子身份验证器页面

    因此,请确保利用两因素身份验证,这可能是增强WordPress安全性的一种简单方法。

    7. 使用HTTPS进行加密连接 – SSL证书

    加强WordPress安全性的最容易被忽视的方法之一是安装SSL证书并通过HTTPS运行您的网站。HTTPS(安全超文本传输​​协议)是一种允许您的浏览器或Web应用程序安全地连接到网站的机制。一个很大的误解是,如果您不接受信用卡,就不需要SSL。

    好吧,让我们解释一下为什么HTTPS在电子商务之外很重要的几个原因。许多主机,都通过Let’s Encrypt提供免费的SSL证书

    HTTPS加密连接

    HTTPS加密连接

    1. 安全

    当然,HTTPS的最大原因是增加了安全性,是的,这确实与电子商务网站密切相关。但是,您的登录信息有多重要?对于那些运行多作者WordPress网站的人,如果您通过HTTP运行,则每次有人登录时,该信息都会以纯文本形式传递到服务器。HTTPS对于维护网站和浏览器之间的安全连接至关重要。这样,您可以更好地防止黑客和/或中间人访问您的网站。

    因此,无论您拥有博客、新闻网站、代理机构等,它们都可以从HTTPS中受益,因为这可以确保不会以纯文本形式传递任何内容。

    2. 搜索引擎优化

    Google已经正式表示HTTPS 是一个排名因素。虽然这只是一个很小的排名因素,但你们中的大多数人可能会利用在SERP中获得的任何优势来击败竞争对手。

    3. 信任和信誉

    根据GlobalSign的一项调查,28.9% 的访问者会在浏览器中寻找绿色地址栏。其中 77% 的人担心他们的数据在网上被截获或滥用。通过看到那个绿色挂锁,客户会立即更加安心,因为他们知道他们的数据更加安全。

    4. 推荐数据

    很多人没有意识到HTTPS到HTTP推荐数据在Google Analytics中被阻止。那么数据会发生什么变化呢?好吧,其中大部分只是与“直接流量”部分混为一谈。如果有人从HTTP转到HTTPS,则仍会通过引荐来源网址。

    5. Chrome警告

    2018年7月24日起,Chrome 68及更高版本开始将所有非HTTPS网站标记为“不安全”。不管他们是否收集数据。这就是为什么HTTPS比以往任何时候都更重要的原因!

    如果您的网站大部分流量来自Chrome,这一点尤其重要。您可以在浏览器和操作系统的受众部分下查看Google Analytics,以便查看您的WordPress网站从Google Chrome获得的流量百分比。谷歌让访问者更清楚地知道您的WordPress网站可能没有在安全连接上运行。

    Chrome不是一个安全的网站

    Chrome不是一个安全的网站

    6. 性能

    由于一个称为HTTP/2的协议,很多时候,那些通过HTTPS运行经过适当优化的站点甚至可以看到速度提高。由于浏览器支持,HTTP/2需要HTTPS。性能的提升有多种原因,例如HTTP/2能够支持更好的多路复用、并行性、Huffman编码的HPACK压缩、ALPN扩展和服务器推送。

    使用TLS 1.3,HTTPS 连接速度更快。

    现在重新考虑HTTPS?查看我们深入的WordPress HTTPS迁移指南,让您快速上手,并在我们的TLS与SSL比较中了解更多信息。

    要在登录和管理您的站点时强制在您和服务器之间建立安全、加密的连接,请将以下行添加到您的wp-config.php文件中:

    define(‘FORCE_SSL_ADMIN’, true);
    define(‘FORCE_SSL_ADMIN’, true);
    define('FORCE_SSL_ADMIN', true);
    

    (建议阅读:如果您使用的是旧TLS版本,您可能需要在Chrome中修复ERR_SSL_OBSOLETE_VERSION通知)。

    8. 强化你的wp-config.php文件

    您的wp-config.php文件就像WordPress安装的核心和灵魂。就WordPress安全性而言,它是您网站上迄今为止最重要的文件。它包含您的数据库登录信息和安全密钥,用于处理 cookie 中的信息加密。以下是您可以采取的一些措施来更好地保护这个重要文件。

    1.移动wp-config.php

    默认情况下,您的wp-config.php文件位于 WordPress 安装的根目录(您的 /publicHTML文件夹)中。但是您可以将其移动到非www可访问的目录。亚伦亚当斯写了一个很好的解释为什么这是有益的。

    要移动您的wp-config.php文件,只需将其中的所有内容复制到另一个文件中即可。然后在您的wp-config.php文件中,您可以放置​​以下代码段以简单地包含您的其他文件。注意:目录路径可能因您的网络主机和设置而异。通常虽然它只是上面的一个目录。

    <?php
    include(‘/home/yourname/wp-config.php’);
    <?php
    include(‘/home/yourname/wp-config.php’);
    <?php
    include('/home/yourname/wp-config.php');

    注意:这可能不适用于某些WordPress主机。这是因为出于安全原因,open_basedir限制不允许在 ~/public目录上方执行PHP 。

    2. 更新WordPress安全密钥

    WordPress安全密钥是一组随机变量,可改进存储在用户cookie中的信息的加密。从WordPress 2.7开始,有4个不同的键:AUTH_KEYSECURE_AUTH_KEY、 LOGGED_IN_KEY和 NONCE_KEY.

    当您安装WordPress时,这些是为您随机生成的。但是,如果您经历了多次迁移(查看我们精选的最佳WordPress迁移插件列表)或从其他人那里购买了网站,那么创建新的WordPress密钥可能会很好。

    WordPress实际上有一个免费工具,您可以使用它来生成随机密钥。您可以更新存储在wp-config.php文件中的当前密钥。

    WordPress安全密钥

    WordPress安全密钥

    阅读有关WordPress安全密钥的更多信息。

    3. 更改权限

    通常,WordPress站点根目录中的文件将设置为644,这意味着文件的所有者可以读取和写入文件,并且该文件的组所有者中的用户可以读取文件,其他所有人都可以读取文件。根据WordPress文档wp-config.php文件的权限应设置为440或400,以防止服务器上的其他用户读取它。您可以使用FTP客户端轻松更改此设置。

    wp-config.php权限

    wp-config.php权限

    在某些托管平台上,权限可能需要不同,因为运行Web服务器的用户没有写入文件的权限。如果您对此不确定,请咨询您的托管服务提供商。

    9. 禁用XML-RPC

    过去几年中, XML-RPC已成为暴力攻击的重要目标。正如Sucuri所提到的,XML-RPC的隐藏特性之一是您可以使用system.multicall方法在单个请求中执行多个方法。这非常有用,因为它允许应用程序在一个HTTP请求中传递多个命令。但也会发生的是,它被用于恶意目的。

    有一些像Jetpack这样的WordPress插件依赖于XML-RPC,但大多数人不需要这个,简单地禁用对它的访问可能是有益的。不确定XML-RPC当前是否在您的网站上运行?Automattic团队的Danilo Ercoli编写了一个名为 XML-RPC Validator的小工具。您可以通过它运行您的WordPress站点以查看它是否启用了XML-RPC。

    WordPress XML-RPC验证器

    WordPress XML-RPC验证器

    要完全禁用此功能,您可以安装免费的Disable XML-RPC插件。或者您可以使用高级perfmatters插件禁用它,该插件还包含Web性能改进。

    10. 隐藏你的WordPress版本

    隐藏您的WordPress版本再次涉及WordPress安全性的主题。其他人对您的WordPress站点配置了解得越少越好。如果他们看到您正在运行过时的WordPress安装,这可能是入侵者的一个欢迎信号。默认情况下,WordPress版本显示在您网站源代码的标题中。同样,我们建议您确保您的WordPress安装始终是最新的,这样您就不必担心这一点。

    源代码中的WordPress版本

    源代码中的WordPress版本

    您可以使用以下代码来删除它。只需将其添加到您的WordPress主题functions.php文件中。

    重要的!如果操作不当,编辑WordPress主题的源代码可能会破坏您的网站。

    function wp_version_remove_version() {
    return ;
    }
    add_filter(‘the_generator’, ‘wp_version_remove_version’);
    function wp_version_remove_version() {
    return ”;
    }
    add_filter(‘the_generator’, ‘wp_version_remove_version’);
    function wp_version_remove_version() {
    return '';
    }
    add_filter('the_generator', 'wp_version_remove_version');

    您还可以使用像 perfmatters这样的高级插件,它允许您一键隐藏WordPress版本,以及对WordPress网站的其他优化。

    使用Perfmatters隐藏WordPress版本

    使用Perfmatters隐藏WordPress版本

    显示WordPress版本的另一个地方是每个WordPress版本中包含的默认文件readme.html(如下所示)。它位于安装的根目录中,domain.com/readme.html. 您可以通过FTP安全地删除此文件。

    自述文件中的WordPress版本

    自述文件中的WordPress版本

    如果您运行的是WordPress 5.0或更高版本,则不再适用,因为版本号不再包含在文件中。

    11. 添加最新的HTTP安全标头

    加强WordPress安全性的另一个步骤是利用HTTP安全标头。这些通常在Web服务器级别配置,并告诉浏览器在处理您的站点内容时如何表现。有许多不同的HTTP安全标头,但以下通常是最重要的标头。

    如果您想了解更多关于HTTP安全标头的信息,KeyCDN有一篇深入说明的文章

    您可以通过启动Chrome devtools并查看您网站的初始响应中的标头来检查您的WordPress网站上当前正在运行哪些标头。以下是一个网站的示例。您可以看到我们正在使用strict-transport-securityx-content-typex-frame-options标头。

    HTTP安全标头

    HTTP安全标头

    您还可以使用Scott Helme提供的免费securityheaders.io工具扫描您的WordPress网站。这将显示您当前在您的站点上有哪些HTTP安全标头。如果您不确定如何实施它们,您可以随时询问您的主机是否可以提供帮助。

    HTTP安全标头扫描

    HTTP安全标头扫描

    注意:同样重要的是要记住,当您实施HTTP安全标头时,它可能会如何影响您的WordPress子域。例如,如果您添加内容安全策略标头并限制域访问,则您还需要添加自己的子域。

    12. 使用WordPress安全插件

    当然,我们必须提及一些WordPress安全插件。有很多优秀的开发人员和公司提供出色的解决方案来帮助更好地保护您的WordPress网站。这是其中的几个。

    部分服务器提供商具有硬件防火墙、主动和被动安全性、按分钟正常运行时间检查和许多其他高级功能,可防止攻击者访问您的数据。

    以下是上述插件的一些典型功能和用途:

    • 创建用户配置文件时生成并强制使用强密码
    • 强制密码过期并定期重置
    • 用户操作记录
    • 轻松更新WordPress安全密钥
    • 恶意软件扫描
    • 两因子身份验证
    • 重新验证码
    • WordPress安全防火墙
    • IP白名单
    • IP黑名单
    • 文件更改日志
    • 监控DNS更改
    • 阻止恶意网络
    • 查看访问者的WHOIS信息

    许多安全插件的一个非常重要的功能包括校验和实用程序。这意味着他们检查您的WordPress安装并查找对WordPress.org提供的核心文件的修改(通过API)。对这些文件的任何更改或修改都可能表明存在黑客攻击。您还可以使用WP-CLI运行您自己的checksum

    请务必阅读我们关于文件完整性监控的详尽指南

    另一个值得一提的优秀插件是WP Security Audit Log插件。 这对于那些在WordPress多站点或只是多作者站点上工作的人来说太棒了。它有助于确保用户的工作效率,并让管理员看到正在更改的所有内容;例如登录、密码更改、主题更改、小工具更改、新文章创建、WordPress更新等。

    这是一个完整的WordPress活动日志解决方案。在撰写本文时,WP Security Audit Log插件已获得超过100,000次活动安装。如果您正在寻找与WordPress多站点兼容的安全解决方案,这是一个绝佳的选择。

    安全审核日志查看器

    安全审核日志查看器

    它还具有额外的高级插件,例如电子邮件通知、用户会话管理、搜索和报告。查看这些额外的WordPress安全插件,它们可以帮助锁定坏人。

    13. 加强数据库安全

    有几种方法可以提高WordPress数据库的安全性。首先是使用一个巧妙的数据库名称。如果您的网站名为排球技巧,默认情况下您的WordPress数据库很可能命名为wp_volleyballtricks. 通过将您的数据库名称更改为更隐蔽的名称,它有助于保护您的网站,使黑客更难以识别和访问您的数据库详细信息。

    第二个建议是使用不同的数据库表前缀。默认情况下,WordPress使用wp_. 将其更改为类似的东西39xw_可能会更加安全。当您安装WordPress时,它会要求提供表前缀(如下所示)。还有一些方法可以更改现有安装的WordPress表前缀。

    WordPress表前缀 – img src: jatinarora

    WordPress表前缀 – img src: jatinarora

    14. 始终使用安全连接

    我们怎么强调使用安全连接的重要性都不为过!确保您的WordPress托管它采取预防措施,例如提供SFTP或SSH。SFTP或安全文件传输协议(也称为 SSH 文件传输协议)是用于文件传输的网络协议。与标准FTP相比,这是一种更安全的方法。

    确保您的家庭路由器设置正确也很重要。如果有人入侵了您的家庭网络,他们可以访问各种信息,包括可能存储您关于WordPress网站的重要信息的位置。以下是一些简单的提示:

    • 不要启用远程管理 (VPN)。典型用户从不使用此功能,通过将其关闭,您可以避免将您的网络暴露给外界。
    • 路由器默认使用192.168.1.1等范围内的IP。使用不同的范围,例如10.9.8.7。
    • 在您的Wifi上启用最高级别的加密。
    • 将您的Wifi列入IP白名单,以便只有拥有密码和特定IP的人才能访问它。
    • 保持路由器上的固件是最新的。

    在公共场所登录您的WordPress网站时,请务必小心。请记住,星巴克不是一个安全的网络!在单击连接之前采取预防措施,例如验证网络SSID。您还可以使用ExpressVPN等第3方VPN服务来加密您的互联网流量并隐藏您的IP地址以防黑客。

    15.检查文件和服务器权限

    安装和Web服务器上的文件权限对于增强WordPress安全性至关重要。如果权限太松,有人可以轻松访问您的网站并造成严重破坏。另一方面,如果您的权限过于严格,这可能会破坏您网站上的功能。因此,全面设置正确的权限非常重要。

    文件权限

    • 如果用户有权读取文件,则分配读取权限。
    • 如果用户有权写入或修改文件,则会分配写入权限。
    • 如果用户有权运行文件和/或将其作为脚本执行,则分配执行权限。

    目录权限

    • 如果用户有权访问识别的文件夹/目录的内容,则分配读取权限。
    • 如果用户有权添加或删除文件夹/目录中包含的文件,则会分配写权限。
    • 如果用户有权访问实际目录并执行功能和命令,包括删除文件夹/目录中的数据的能力,则分配执行权限。

    您可以使用iThemes Security之类的免费插件来扫描您的WordPress网站上的权限。

    WordPress文件权限扫描

    WordPress文件权限扫描

    以下是关于WordPress中文件和文件夹权限的一些典型权限建议。有关更深入的说明,请参阅有关更改文件权限的WordPress Codex文章

    • 所有文件应为644或640。例外:wp-config.php应为440或400,以防止服务器上的其他用户读取它。
    • 所有目录应为755或750。
    • 任何目录都不应该被赋予777,即使是上传目录。

    16.在WordPress仪表盘中禁用文件编辑

    很多 WordPress 网站都有多个用户和管理员,这会使WordPress的安全性更加复杂。一个非常糟糕的做法是授予作者或贡献者管理员访问权限,但不幸的是,这种情况一直都在发生。为用户提供正确的角色和权限非常重要,这样他们就不会破坏任何东西。因此,简单地禁用WordPress中的“外观编辑器”可能是有益的。

    你们中的大多数人可能曾经去过那里。你去外观编辑器中快速编辑一些东西,突然你留下了一个白屏死机。最好在本地编辑文件并通过FTP上传。当然,在最佳实践中,您应该首先在开发站点上测试这样的东西。

    WordPress外观编辑器

    WordPress外观编辑器

    此外,如果您的WordPress网站被黑客入侵,他们可能做的第一件事就是尝试通过外观编辑器编辑PHP文件或主题。这是他们在您的网站上执行恶意代码的快捷方式。如果他们无法从仪表板访问此信息,首先,它可以帮助防止攻击。将以下代码放入您的wp-config.php文件中以删除所有用户的“edit_themes”、“edit_plugins”和“edit_files”函数。

    define(‘DISALLOW_FILE_EDIT’, true);
    define(‘DISALLOW_FILE_EDIT’, true);
    define('DISALLOW_FILE_EDIT', true);
    

    17.防止盗链

    盗链的概念很简单。您在Internet上的某个地方找到一张图片,并直接在您的网站上使用该图片的URL。此图像将显示在您的网站上,但将从原始位置提供。这实际上是盗窃,因为它使用了热链接站点的带宽。这可能看起来没什么大不了的,但它可能会产生很多额外的成本。

    The Oatmeal就是一个很好的例子。《赫芬顿邮报》热链接了他的一幅由多张图片组成的卡通片,并获得了高达1,000美元以上的账单。

    盗链账单

    盗链账单

    Apache防盗链

    要实现Apache服务器的防盗链,只需将以下代码添加到您的.htaccess文件中。

    RewriteEngine on
    RewriteCond %{HTTP_REFERER} !^$
    RewriteCond %{HTTP_REFERER} !^http(s)?://(www.)?yourdomain.com [NC]
    RewriteRule .(jpg|jpeg|png|gif)$ http://dropbox.com/hotlink-placeholder.jpg [NC,R,L]
    RewriteEngine on
    RewriteCond %{HTTP_REFERER} !^$
    RewriteCond %{HTTP_REFERER} !^http(s)?://(www.)?yourdomain.com [NC]
    RewriteRule .(jpg|jpeg|png|gif)$ http://dropbox.com/hotlink-placeholder.jpg [NC,R,L]
    RewriteEngine on
    RewriteCond %{HTTP_REFERER} !^$
    RewriteCond %{HTTP_REFERER} !^http(s)?://(www.)?yourdomain.com [NC]
    RewriteRule .(jpg|jpeg|png|gif)$ http://dropbox.com/hotlink-placeholder.jpg [NC,R,L]

    第二行定义了允许的引荐来源——允许直接链接到图像的站点,这应该是您的实际网站。如果您想允许多个站点,您可以复制此行并替换引荐来源网址。如果你想生成一些更复杂的规则,看看这个htaccess hotlink protection generator

    NGINX防盗链

    为了实现NGINX服务器防盗链,只需将以下代码添加到您的配置文件中。

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

    CDN防盗链

    如果您从CDN提供图像,则设置可能会略有不同。以下是一些流行的CDN提供商的资源。

    18. 始终备份

    备份是每个人都知道他们需要但并不总是采取的一件事。上面的大多数建议都是您可以采取的安全措施,以更好地保护自己。但无论您的网站有多安全,它都永远不会100%安全。因此,您需要备份以防最坏的情况发生。

    大多数托管WordPress托管服务提供商现在都提供备份。

    如果您的主机没有备份,则可以使用一些流行的WordPress服务和插件来自动化该过程。

    WordPress备份服务

    WordPress站点备份服务的月费通常很低,并将您的备份存储在云中。

    WordPress备份插件

    WordPress备份插件允许您通过FTP获取备份或与外部存储源集成,例如Amazon S3、Google Cloud Storage、Google Drive或Dropbox。我们强烈建议使用增量解决方案,以便它使用更少的资源。

    19. DDoS防护

    DDoS是一种DOS攻击,其中多个系统用于针对单个系统导致拒绝服务 (DoS) 攻击。DDoS攻击并不是什么新鲜事——根据Britannica的说法,第一个记录在案的案例可以追溯到2000年初。与入侵您的网站的人不同,这些类型的攻击通常不会损害您的网站,而只会让您的网站瘫痪几个小时或几天.

    你能做些什么来保护自己?最好的建议之一是使用信誉良好的3rd方安全服务,例如Cloudflare 或Sucuri。如果您正在经营一家企业,那么投资他们的高级计划是有意义的。

    来自Cloudflare和Sucuri的DDoS保护

    来自Cloudflare和Sucuri的DDoS保护

    他们先进的DDoS保护可用于缓解各种形式和规模的DDoS攻击,包括针对UDP和ICMP协议的攻击,以及SYN/ACK、DNS放大和第7层攻击。其他好处包括将您置于有助于隐藏您的原始IP地址的代理后面,尽管它不是万无一失的。

    请务必查看我们关于如何阻止DDoS攻击的案例研究。我们的客户有一个运行Easy Digital Downloads的小型电子商务网站,该网站在7天内收到了超过500万次单个页面的请求。该站点通常每天仅产生30-40MB的带宽和数百名访问者。但出乎意料的是,该网站立即达到了每天15-19GB 的数据传输量!这增加了4650%。谷歌分析显示没有额外的流量。所以这不好。

    来自DDoS攻击的高带宽

    来自DDoS攻击的高带宽

    客户在他们的站点上实施了Sucuri的Web应用程序防火墙,所有带宽和请求立即丢弃在站点上(如下所示),此后没有出现过任何问题。因此,如果您遇到此类问题,这绝对是一个很好的投资和节省时间的方法。

    添加了Sucuri Web应用程序防火墙

    添加了Sucuri Web应用程序防火墙

    小结

    如您所见,有多种方法可以加强您的WordPress安全性。使用巧妙的密码、保持核心和插件更新,以及选择安全的托管WordPress主机,这些只是让您的WordPress网站保持正常运行和安全运行的一小部分。对于你们中的许多人来说,您的WordPress网站既是您的业务,也是您的收入,因此花一些时间并尽快实施上述一些安全最佳实践非常重要。

  • 如何通过IP屏蔽工具, Cloudflare, Nginx或Apache拒绝拦截IP地址

    如何通过IP屏蔽工具, Cloudflare, Nginx或Apache拒绝拦截IP地址

    与不断攻击您网站的机器人、垃圾邮件发送者或黑客打交道?根据严重程度,它可能会对您的访问和带宽产生重大影响,在这种情况下,您可能需要尝试阻止它们。

    大部分云服务器都附带一个免费的IP拒绝工具,可让您拦截特定IP地址和范围访问您的网站。在本文中,我们将介绍可用于拒绝拦截IP地址的几种方法。

    1. 如何识别有问题的IP地址
    2. 如何使用宝塔控制面板拦截IP地址
    3. 如何在Cloudflare中拦截IP地址
    4. 如何在Nginx中拦截IP地址
    5. 如何在Apache中拦截IP地址

    如何识别有问题的IP地址

    WordPress是一个动态 CMS ,这意味着PHP worker按需生成未缓存的页面。由于未缓存的请求需要显着更多的CPU和RAM资源来提供服务(与缓存的请求相比),恶意行为者有可能通过发送大量请求来强制服务器停止响应。

    如果您遇到这种情况,可以帮助减少服务器负载的一种策略是拒绝麻烦的IP地址访问。

    如果您的服务器提供商提供IP访问统计,您可以通过服务器提供商提供的控制面板查看IP访问统计表以识别有问题的IP地址。

    您也可以通过分析服务器访问日志来实施,当然如果您希望通过安装插件来统计访问IP,也是可行的,比如WP Statistics

    如果您发现某个IP地址发出的请求比其他IP多得多(例如5-10倍),您可能需要进一步调查以确定该IP是机器人还是垃圾邮件发送者。检查IP是否恶意的最简单方法是使用诸如CleanTalkSpamhaus之类的reputation检查器。

    如果reputation检查器将IP地址识别为机器人或垃圾邮件发送者 IP,您可以采取进一步措施来阻止该IP。请记住,即使信誉检查器没有将该IP列为恶意IP,也可能只是意味着该IP尚未在其数据库中。

    如果您发现IP导致您的服务器返回HTTP 502错误或完全关闭,则值得测试阻止IP地址是否会使事情变得更好。

    如何使用宝塔面板拒绝拦截IP地址

    宝塔面板提供屏蔽IP工具允许您阻止单个IP地址以及IP地址范围,而无需编辑Web服务器配置文件。

    重要的:屏蔽IP工具是一项强大的功能,如果使用不当,可能会阻止合法服务或个人。

    要在宝塔面板中屏蔽拦截IP地址,请导航至安全,选择屏蔽IP,填入屏蔽IP或者IP段,点击屏蔽按钮即可添加指定IP/IP段至屏蔽列表。

    宝塔面板中的IP屏蔽工具

    宝塔面板中的IP屏蔽工具

    在“将IP地址添加到屏蔽”模式中,您可以将IPV4地址、IPV6地址和CIDR(无类域间路由)IP地址范围添加到阻止列表。CIDR范围可用于屏蔽IP地址的连续范围(例如127.0.0.1到127.0.0.255)。要生成有效的CIDR范围,我们建议使用这样的工具

    以下是一些您可以屏蔽的IP地址示例:

    • IPV4地址 – 103.5.140.141
    • IPV6地址 – 2001:0db8:0a0b:12f0:0000:0000:0000:0001
    • CIDR范围 – 128.0.0.1/32

    如何在Cloudflare中拒绝拦截IP地址

    如果您是Cloudflare用户,您可以使用Cloudflare仪表盘中的“IP Access Rules”工具来屏蔽IP地址和IP范围。

    在Cloudflare仪表盘中,导航到Firewall > Tools

    Cloudflare工具仪表盘

    Cloudflare工具仪表盘

    要创建新的IP访问规则,请添加IP地址,选择“Block”操作,选择“This Website”(如果您希望规则适用于所有Cloudflare域,则选择“All Websites in Account”),然后单击“Add”。

    添加IP访问规则

    添加IP访问规则

    添加访问规则后,它将出现在“IP Access Rules”列表中。在这里,您可以对访问规则进行更改,例如更改操作、添加注释和删除规则。

    Cloudflare仪表盘中的IP访问规则

    Cloudflare仪表盘中的IP访问规则

    除了“Block”动作,Cloudflare还支持“Challenge”、“Allow”和“JavaScript Challenge”。根据您要实现的目标,您可能希望使用这些其他操作之一,而不是“Block”。

    在Cloudflare中拦截IP范围、国家和ASN

    除了单个IP地址,Cloudflare的IP访问规则还支持IP范围、国家名称和ASN(自治系统编号)。

    • 要屏蔽IP范围,请为IP访问规则值指定CIDR范围。
    • 要屏蔽某个国家/地区,请指定其为Alpha-2国家/地区代码
    • 要屏蔽ASN(由单个网络运营商控制的IP列表),请指定以“AS”开头的有效ASN

    如何在Nginx中拒绝拦截IP地址

    如果您的站点是使用Nginx Web服务器自托管的,您可以直接在Web服务器配置中屏蔽IP地址。

    要在Nginx中屏蔽IP地址,请通过SSH连接到您的服务器并使用nano文本编辑器打开Nginx配置文件,如下所示:

    nano /etc/nginx/nginx.conf
    nano /etc/nginx/nginx.conf
    nano /etc/nginx/nginx.conf

    如何使用Nginx屏蔽单个IP地址

    要在 Nginx 中阻止单个 IP(IPV4 或 IPV6)地址,请使用如下deny指令:

    deny 190.60.78.31;
    deny 4b73:8cd3:6f7b:8ddc:d2f9:31ca:b6b1:834e;
    deny 190.60.78.31;
    deny 4b73:8cd3:6f7b:8ddc:d2f9:31ca:b6b1:834e;
    deny 190.60.78.31;
    deny 4b73:8cd3:6f7b:8ddc:d2f9:31ca:b6b1:834e;

    如何使用Nginx屏蔽CIDR IP范围

    要在Nginx中阻止CIDR IP范围,请使用以下指令:

    deny 192.168.0.0/24;
    deny 192.168.0.0/24;
    deny 192.168.0.0/24;

    高级Nginx IP拦截技术

    如果要阻止对特定目录的访问(ed domain.com/secret-directory/),可以使用下面的Nginx指令:

    location /secret-directory/ {
    deny 192.168.0.0/24;
    }
    location /secret-directory/ {
    deny 192.168.0.0/24;
    }
    location /secret-directory/ {
    deny 192.168.0.0/24;
    }

    deny指令接受all一个值。这对于您想要阻止所有 IP 地址访问您的站点的情况很有用。deny all;指令通常与allow – 一起使用- 这使您可以允许特定的 IP 地址同时阻止其他所有内容。

    location /secret-directory/ {
    allow 192.168.0.0/16;
    deny all;
    }
    location /secret-directory/ {
    allow 192.168.0.0/16;
    deny all;
    }
    location /secret-directory/ {
    allow 192.168.0.0/16;
    deny all;
    }

    保存Nginx配置并重新加载Nginx

    使用nano完成配置编辑后,请务必按Ctrl+O保存更改。保存文件后,按Ctrl+X 退出nano。

    要激活新的IP屏蔽规则,您还需要使用以下命令重新加载Nginx配置:

    sudo systemctl reload nginx
    sudo systemctl reload nginx
    sudo systemctl reload nginx

    如何在Apache中屏蔽IP地址

    如果您的站点是使用Apache Web服务器自托管的,您可以直接在Web服务器配置中屏蔽IP地址。要在Apache中屏蔽IP地址,您需要使用.htaccess文件,它允许您将唯一规则应用于特定目录。要在整个站点上应用规则,应将.htaccess文件放在站点的根目录中。

    首先,通过SSH连接到您的服务器,导航到您站点的根目录,然后使用以下命令创建.htaccess文件:

    touch .htaccess
    touch .htaccess
    touch .htaccess

    接下来,使用nano文本编辑器打开.htaccess文件,如下所示:

    nano .htaccess
    nano .htaccess
    nano .htaccess

    屏蔽IP的确切规则取决于您使用的是Apache 2.2还是2.4,因此我们将包含两个版本的规则。编辑.htaccess文件时,请使用Apache版本对应的规则。

    如何使用Apache拦截单个IP地址

    要在Apache中拦截单个IP(IPV4或IPV6)地址,请使用以下规则:

    # Apache 2.2
    order allow, deny
    allow 192.168.0.0
    deny from all
    #Apache 2.4
    Require all granted
    Require not ip 192.168.0.0
    # Apache 2.2
    order allow, deny
    allow 192.168.0.0
    deny from all
    #Apache 2.4
    Require all granted
    Require not ip 192.168.0.0
    # Apache 2.2
    order allow, deny
    allow 192.168.0.0
    deny from all
    #Apache 2.4
    Require all granted
    Require not ip 192.168.0.0

    如何使用Apache屏蔽CIDR IP范围

    要在Apache中拦截IP范围地址,请使用以下规则:

    # Apache 2.2
    order allow, deny
    allow 192.168.0.0/16
    deny from all
    #Apache 2.4
    Require all granted
    Require not ip 192.168.0.0/16
    # Apache 2.2
    order allow, deny
    allow 192.168.0.0/16
    deny from all
    #Apache 2.4
    Require all granted
    Require not ip 192.168.0.0/16
    # Apache 2.2
    order allow, deny
    allow 192.168.0.0/16
    deny from all
    #Apache 2.4
    Require all granted
    Require not ip 192.168.0.0/16

    小结

    根据您的站点配置,有不同的方法可以屏蔽拦截IP地址访问您的站点。如果您是宝塔用户,我们建议使用宝塔自带的IP屏蔽工具。

    如果你使用Cloudflare之类的CDN,则可以使用CDN自带的IP屏蔽规则实现,它允许您创建唯一的IP访问规则来拦截IP地址、范围等。最后,如果前两者您都没在用,您可以直接在您的Web服务器配置文件中实施IP屏蔽拦截规则。

  • WordPress活动日志 – 您应该跟踪的7种事件

    WordPress活动日志 – 您应该跟踪的7种事件

    当您的WordPress网站很小时,很容易密切关注其中发生的一切。然而,随着它的规模和复杂性的增长,它可能变得越来越难以跟上。如果您允许用户在您的站点上注册、运行会员站点或有多个贡献者,则尤其如此。

    无论如何,始终了解您网站上发生的事情至关重要。您可以通过跟踪用户活动来做到这一点,例如内容更改、个人资料更新、登录失败等。当您触手可及此类信息时,您可以快速追踪任何问题的根源并保持严密的安全性。

    在这篇文章中,我们将简要讨论您为什么要跟踪您的WordPress网站的活动。然后,我们将帮助您找出最需要关注的活动类型。

    为什么使用WordPress活动日志至关重要

    活动日志可以帮助您密切关注网站的重要更改。

    如果你的网站只有一个用户——你——应该不会有什么意外。除非您的WordPress网站已被黑客入侵(稍后我们将详细讨论),否则您将进行所有更改和更新。

    WordPress跟踪用户活动

    WordPress跟踪用户活动

    但是,许多站点允许注册的用户不止一个。例如,您可能会鼓励您的访问者注册订阅者帐户。或者,您可能有一个由作家、开发人员、编辑和第三方承包商组成的整个团队来帮助您创建和管理内容。

    无论哪种方式,有这么多人访问您的网站都会导致很多不确定性。找出谁删除了帖子,或者弄清用户资料被更改的原因并不总是那么容易。如果您担心某个特定更改是恶意的,或者您只是想知道它发生的原因,那么您可能没有一个好的方法来继续。

    这就是为什么在您的WordPress网站上跟踪活动如此重要的原因。拥有每个重大更改的活动日志,以及有关更改发生时间和涉及哪些用户的详细信息,可以更轻松地处理意外事件。即使您是您网站上的唯一用户,这种类型的日志也可以帮助您追踪由于成功的黑客攻击而导致的更改来源。

    当然,您不能手动维护活动日志。幸运的是,您可以使用WordPress活动日志插件来自动处理这项工作。您需要做的就是在需要日志包含的信息时查看日志。

    WP Security Audit Log

    市场上最好的插件之一是WP Security Audit Log。您可以在WordPress插件库上下载免费版本。在撰写本文时,它拥有超过70,000次活跃安装。它还由开发人员定期积极更新。

    WP Security Audit Log插件

    WP Security Audit Log插件

    还有一个高级版本(起价为每年 89 美元),它为您提供报告、即时电子邮件警报和搜索等附加功能。但是所有的日志记录功能都是完全免费的。

    配置WP Security Audit Log

    我们在这篇文章中使用了免费版本的WP Security Audit Log。安装后激活后首先看到的是配置向导。

    步骤1

    单击“Start Configuring the Plugin”开始。

    配置WP Security Audit Log插件

    配置WP Security Audit Log插件

    步骤2

    选择“Basic”或“Geek”。

    • Basic:如果您只需要基本的日志记录数据,请选择此选项。
    • Geek:如果您想要插件必须提供的所有数据,请选择此选项。

    您可以在以后随时更改这些设置,但对于此示例,我们将使用“Geek”选项向您展示更多WP Security Audit Log插件。

    WP Security Audit Log插件Geek设置

    WP Security Audit Log插件Geek设置

    步骤3

    接下来,您需要选择保留WP Security Audit Log数据的时间。对于此示例,我们将选择6个月。

    • 6个月(超过6个月的数据将被删除)
    • 12个月(超过12个月的数据将被删除)
    • 保留所有数据。

    您可以稍后更改此设置。但重要的是要注意数据存储在您的WordPress数据库中。虽然它以一种有效的方式完成,但您永远不应该存储比您认为您将使用的更多的数据。对大多数人来说,6个月应该没问题,特别是如果您非常积极主动地解决出现的问题。

    WP Security Audit Log数据保留

    WP Security Audit Log数据保留

    如果您购买WP Security Audit Log的高级版本,您可以将数据保留更长时间,甚至将其存储在外部数据库中。

    步骤4

    下一步是根据需要配置其他访问权限。默认情况下,只有管理员才能访问WordPress活动日志。

    WP Security Audit Log访问

    WP Security Audit Log访问

    步骤5

    在下一个屏幕上,您可以将对象(用户名、角色、IP地址)排除在记录之外。也许您是WordPress网站上的单一管理员,只想查看作者和编辑所做的更改。或者您可能只是想监控登录和帐户注册。无论出于何种原因,您都可以轻松地将自己排除在数据之外。

    WP Security Audit Log排除对象

    WP Security Audit Log排除对象

    就是这样!现在正在记录您的WordPress网站上的所有更改以确保安全。可以在WordPress仪表盘的“Audit Log”菜单中查看WP Security Audit Log的数据和设置。要真正深入了解所有设置,我们建议查看他们的入门文档

    WordPress仪表盘中的审核日志

    WordPress仪表盘中的审核日志

    这篇文章的其余部分将重点介绍您希望包含在日志中的一些不同类型的活动。

    您的WordPress活动日志插件应保留日志的7种更改类型

    即使是最简单的WordPress网站也有很多事情要做。其中一些更改和事件比其他更改和事件更重要(并且更有可能表明潜在的问题或安全漏洞)。

    在本文的其余部分,我们将讨论要在您的网站上跟踪的七项最重要的活动。虽然不是一个详尽的列表,但这些是您绝对希望包含在WordPress活动日志中的项目。

    1. 内容更改
    2. 新用户和已删除用户
    3. 登录尝试失败
    4. 对主题或插件的更改
    5. WordPress核心和设置更改
    6. 用户配置文件调整
    7. 多站点设置中网站和用户的更改

    1. 内容变更

    内容是任何成功网站的核心。至少,您的网站将由一个或多个页面组成,如果您希望它们保持相关性,则应使用新的或修订的信息定期更新这些页面。

    此外,许多WordPress网站经常以文章的形式发布新内容。您可以使用您的网站来运行博客、发布有关您的业务的新闻文章或其他完全内容。一旦您的网站已经存在一段时间,文章的数量就会迅速飙升

    所有这些内容的质量和准确性对于为访问者提供价值、增强您的权威以及确保您的受众信任您所说的话至关重要。这一切都意味着密切关注您的内容至关重要。您需要确保新内容和对现有内容的更改都能很好地反映在您的网站和/或公司上。

    这就是为什么您需要跟踪WordPress中所有与内容相关的更改。这包括:

    • 创建新页面、文章或其他内容类型
    • 更改现有页面或文章的标题、日期、URL、自定义字段或其他关键变量。
    • 现有内容中的修改内容——无论是添加、编辑还是删除。
    • 状态更改,例如已发布或返回草稿形式的文章。

    WP Security Audit Log内容更改

    WP Security Audit Log内容更改

    搜索引擎优化是另一个重要原因,始终关注不断变化的内容。例如,如果热门文章的URL发生变化,带有流量和反向链接,而您不知道,这可能是灾难性的。虽然WordPress具有内置重定向功能,并且会尽最大努力尝试重定向到更新的内容,但这并不总是有效。出于性能原因,您应该始终在服务器级别添加301重定向。

    上述所有更改在活跃的WordPress网站上经常发生,通常不是问题。但是,您应该始终为意外发生做好准备。例如,帖子可能发布得太早,或者页面中的某个部分可能会被删除。在这些情况下,如果您一直在跟踪网站上的内容更改,您将确切地知道谁进行了更改以及何时进行了更改(并且可以很好地找出原因)。

    2. 新用户和移除用户

    正如我们前面提到的,许多WordPress网站最终都会在他们的行列中增加一些用户。这通常是一个蓬勃发展的网站的标志,因为您有更多的人参与并致力于它。

    但是,您需要对网站的用户群保持一定程度的控制。即使您启用了公开注册,您也需要知道谁拥有每个用户帐户以及原因。因此,至少,当用户被添加到您的站点或从您的站点中删除时,您需要意识到这一点。

    WP Security Audit Log用户注册

    WP Security Audit Log用户注册

    跟踪这两项活动都很重要。如果新用户意外地在您的网站上注册,您会想立即了解它。如果您不启用开放注册,这可能是黑客企图的迹象。被删除的用户也是如此——同样,这不是你想要意外发生的事情。

    3. 登录尝试失败

    每个人都必须登录才能访问您的WordPress管理页面——甚至是您。事实上,在保护您的网站仪表板或“客户保留”页面时,您的登录屏幕构成了至关重要的第一道防线。虽然有多种方法可以尝试强制访问您的网站,但大多数攻击者将集中精力尝试通过登录屏幕进入。

    通常,这些尝试在第一次尝试时不会成功。黑客编写的程序会尝试数千种登录组合,直到找到一种有效的组合。因此,当有人试图以这种方式暴力破解您的网站时,跟踪失败的登录尝试可以给您一个警告。

    当然,每个站点偶尔都会出现登录失败的情况。大多数用户不时忘记密码,或拼错凭据。您要查找的是来自同一IP地址的重复失败尝试。如果某个地方的某个人连续多次尝试登录但都失败了,那么他们可能并没有把您的最大利益放在心上。

    幸运的是,如果您通过活动日志跟踪失败的登录,您将知道尝试了多少次、何时以及来自何处。这可以帮助您追踪源头,并找出它是黑客企图还是仅仅是一个持久用户。为了安全起见,您也可以暂时阻止相关IP地址

    WP Security Audit Log登录失败

    WP Security Audit Log登录失败

    当然,您还需要采取其他措施来保护您的WordPress登录屏幕。更改您的WordPress登录URL很简单。您可以做的越多来收紧您网站的“前门”,您就越不需要担心恶意用户强行进入。

    4. 更改主题或插件

    在这一点上,让我们花点时间谈谈WordPress用户角色。每个允许访问您的站点的人都被赋予了特定的角色。虽然有一些插件可以添加额外的选项,但WordPress中的默认角色是AdministratorEditorAuthorContributorSubscriber(以及多站点安装的超级管理员)。

    每个角色都有自己的一组权限——换句话说,就是允许用户采取的行动。例如,管理员可以做任何他们喜欢的事情,而订阅者只能管理他们的个人资料。其他角色介于两者之间。

    这很重要,因为某些操作只有顶级用户才能执行。例如,在常规(非多)站点上,只有管理员可以安装、删除或更新插件和主题。

    由于管理员可以对您的站点进行此类关键更改,因此建议您只有一个具有此访问级别的用户(很可能是您)。从您的站点安装或删除附加组件的能力使用户能够对其功能进行巨大更改,如果他们不小心,甚至可以完全破坏站点。

    这意味着如果其他人正在对插件和主题进行更改,则可能有问题。恶意用户正在执行这些操作(例如,他们试图在您的站点上安装自己的东西),或者已批准用户的权限级别太高。

    WP Security Audit Log更改为主题

    WP Security Audit Log更改为主题

    无论哪种方式,这些都是您需要立即处理的问题。如果您在WordPress活动日志中发现不是您自己制作的网站插件或主题更改,您将能够立即追踪来源。另外,您将确切地看到所做的更改,因此您可以在必要时将其撤消。

    5. WordPress核心和设置更改

    在某种程度上,这些类型的活动与上一节中的活动非常相似。除了安装插件和主题之外,还有许多其他只有管理员才能做的事情。事实上,几乎所有管理员权限都值得在您的站点上进行跟踪。

    然而,最重要的是对核心WordPress平台和网站整体设置的任何更改。应该很清楚为什么这两个类别如此重要。两者都会以非常戏剧性的方式影响您的整个网站。

    例如,对WordPress核心的更改可能会导致与插件、主题和站点的其他部分不兼容。至于设置,如果不小心使用会产生很多问题。一方面,更改您网站的永久链接可能会对其搜索引擎优化 (SEO) 造成严重破坏。还有一些设置可以更改您网站的主页、启用或禁用评论等等。

    WP Security Audit Log-WordPress核心设置

    WP Security Audit Log-WordPress核心设置

    换句话说,只应非常小心地对WordPress核心和您的设置进行更改。因此,您绝对想立即知道您网站的这些元素是否被其他人更改。与上一节一样,这可能意味着您的网站受到攻击,或者某人拥有的权限超出了他们的需要。

    6. 用户资料调整

     

    在您的网站上拥有用户帐户的每个人都至少可以对自己的个人资料进行一些基本更改。但是,用户角色决定了每个人可以执行的活动类型。例如,大多数用户将无法编辑其他人的帐户。更重要的是,只有管理员可以更改用户的角色。

    在繁忙的WordPress网站上看到相当频繁的用户详细信息更改并不少见。但是,仍有一些活动需要注意,包括:

    • 密码、电子邮件和显示名称更改。虽然用户不时更改此信息是正常的(在密码的情况下很聪明),但在短时间内发生异常数量的更改可能表明存在问题。
    • 用户角色更改。当涉及到用户配置文件时,这是要跟踪的头号活动。作为管理员,任何人的用户角色都不应在您不知情的情况下在您的站点上更改。

    WP Security Audit Log用户配置文件调整

    WP Security Audit Log用户配置文件调整

    如果您允许在您的网站上进行公开注册,您将特别希望了解新帐户的异常活动水平。这可能表明该帐户的所有者不是合法用户。

    7. 多站点设置中网站和用户的更改

    之前,我们简要提到了多站点安装。这是WordPress鲜为人知但最有用的功能之一。使用多站点功能,您可以在有组织的网络中运行多个单独但相互连接的网站。

    当您运行多站点设置时,每个站点都是它自己的实体。同时,所有这些都可以通过中央仪表板进行管理。一名或多名超级管理员监督整个网络,对用户、设置、插件和主题做出大规模决策。然后,每个网站都有自己的管理员,他们只能对该特定网站进行更改。

    多站点设置对于保持井井有条和安全尤其具有挑战性。毕竟,您现在要担心多个站点,每个站点都有自己的一组用户。这意味着跟踪每个站点(以及整个网络)上的活动比以往任何时候都更加重要。

    如果您运行多站点网络,以下是您需要特别注意的一些活动:

    • 添加或删除网站。这是最大的。作为超级管理员,您是唯一应该能够创建或删除网站的人——其他用户不应执行此类关键操作。
    • 从站点添加或删除用户。出于前面讨论的相同原因,跟踪注册到网络上每个站点的用户是一个聪明的主意。
    • 更改网络设置。在多站点设置中,您将可以访问带有网络特定选项的特殊屏幕。这些设置影响深远,不应轻易修改。

    使用WordPress多站点网络的活动日志使您能够从所有可能的方向跟踪活动。这使您可以关注每个站点上的用户行为,以及对整个网络所做的更改。

    小结

    对WordPress网站所做的最小更改都会产生显着的效果。一个简单的设置调整可以改变您网站的工作方式,并且安装与您的其他工具不兼容的插件或主题可能会破坏重要功能。这就是为什么,特别是如果你有很多用户,你会想要跟踪你网站上发生的一切。这是安全删除WordPress主题的方法。

    做到这一点的最佳方法之一是获取一个 WordPress activity log,该插件将有关对您网站所做的每项更改的信息编译到一个方便的日志中。此日志应跟踪所有最重要(并且可能存在问题)的更改,例如:

    1. 内容的变化。
    2. 新用户和已删除用户。
    3. 登录尝试失败。
    4. 更改主题或插件。
    5. WordPress核心和设置更改。
    6. 用户资料调整。
    7. 在多站点设置上更改网站和用户。
  • 什么是文件完整性监控?

    什么是文件完整性监控?

    使用强密码的默认和最新WordPress安装非常安全。然而,仅仅在互联网上生存是不够的。

    这就是文件完整性监控 (FIM) 发挥作用的地方。文件完整性监控工具或插件会监控您站点的文件,并在文件上传、编辑、删除等任何更改时提醒您。

    文件完整性监控可帮助您领先于安全漏洞并识别可能使您的网站遭受黑客攻击的错误。

    在这篇文章中,我们将为您提供文件完整性监控的全面介绍,并解释它如何提高您网站的安全性。我们还将分享一些不同的工具和插件,您可以使用这些工具和插件在您的WordPress网站上实施此安全解决方案。

    1. 文件完整性监控简介
    2. 文件完整性监控的工作原理
    3. 为什么文件完整性监控很重要
    4. 为什么需要对WordPress网站进行文件完整性监控
    5. 两种不同类型的文件完整性监控方法
    6. 可用于保护站点的3种文件完整性监控工具
    7. 开源文件完整性监控工具

    文件完整性监控简介

    在保护和维护网站和服务器等基础设施时,文件完整性监控是关键。该解决方案验证给定环境的完整性,即检查站点文件的内容是否已意外更改。

    您可以使用文件完整性监控来检测操作系统、Web服务器和WordPress等Web应用程序中的文件更改。它甚至可以用于监控基于文件的软件解决方案,例如数据库和配置文件。

    使用文件完整性监控解决方案的组织更有可能及早发现安全漏洞,从而使他们有更好的机会保持在线并阻止任何重大损害。因此,文件完整性监控主要被认为是一种安全解决方案。

    但是,此解决方案也可以实现其他目标。在某些情况下,它可以监控以下方面的软件和操作系统配置更改:

    • 在服务器上打开端口配置。
    • Web服务器和网络服务配置。
    • 在服务器上运行或停止服务(守护程序)。

    即使是计划中的文件更改有时也会给您的WordPress网站带来问题。通过使用文件完整性监控跟踪所有修改,您可以轻松确定与文件更改相关的错误的可能原因。

    这使故障排除速度更快,因此您可以立即恢复站点 并运行。

    文件完整性监控的工作原理

    文件完整性监控的工作原理是获取站点文件的“指纹”,然后将它们相互比较。如果指纹不同,则表示文件已更改。

    为了创建指纹,文件完整性监视器(也称为文件完整性扫描仪)扫描单个文件并通过在文件上运行加密哈希函数来创建“校验和”——与该文件关联的唯一数据字符串。

    站点文件指纹

    站点文件指纹

    文件完整性监控对于检查其他文件属性(例如权限和修改日期)也很有用。这些检查至关重要,因为即使是文件权限的简单更改也可能使系统容易受到攻击。

    为什么文件完整性监控很重要

    使文件完整性监控成为必备安全解决方案的一个方面是它的双重优势,即反应式和主动式安全解决方案。

    文件完整性监控作为主动安全

    主动安全的一个例子是识别您的开发人员在您的网站上工作时可能使您的网站暴露的错误。错误的文件权限、包含敏感信息的剩余文件(例如数据库备份或源代码文件)是文件完整性监控可以主动识别的安全威胁的良好示例。

    文件完整性监控作为反应式安全

    文件完整性监控解决方案还可以指出黑客攻击后您的网站发生了什么变化, 或者恶意软件被注入到哪些文件中。

    除此之外,它甚至可以通过监控重要的 WordPress 站点文件(例如wp-config.php 和.htaccess文件)来检查您网站设置的更改。

    多亏了这些关键信息,您可以将您的网站恢复到之前的(干净)状态,并在尽可能短的时间内清除任何恶意软件或“坏代码”。

    合规要求

    对于某些人来说,法律也可能要求进行文件完整性监控。支付卡行业数据安全标准( PCI DSS) 要求符合标准的站点:

    “部署变更检测机制(例如,文件完整性监控工具)以提醒人员未经授权的修改。”

    管理网站访问者的敏感信息是一项严肃的责任。如果您在您的网站上存储任何类型的客户数据,尤其是持卡人数据,启用文件完整性监控可以帮助您确保此类数据没有被任何人篡改,并让您遵守法律。

    PCI DSS

    PCI DSS

    为什么需要对WordPress网站进行文件完整性监控

    WordPress是一个Web应用程序,它由两种类型的文件组成:不可执行文件和可执行文件。

    前者主要是日志和媒体文件。日志通常由插件和主题生成,而媒体文件是您上传到网站的文件,例如图像、视频、PDF等。它们是不可执行的,因为Web服务器不执行它们而只是为它们提供服务。

    大多数不可执行的文件都存储在WordPress的/wp-content/uploads/目录中。对不可执行文件的更改不会影响您网站的安全性、性能或功能。事实上,大多数文件完整性监控解决方案默认将这些文件排除在扫描之外。

    另一方面,可执行文件包括PHP、JavaScript和其他包含站点源代码的文件,例如WordPress核心、插件、主题以及您可能拥有的任何自定义Web应用程序。可执行文件的更改可能会发生,但前提是您:

    • 更新WordPress核心
    • 安装新主题或插件。
    • 更新您的主题或现有插件。
    • 卸载(删除)插件或主题。
    • 自定义WordPress安装、主题或插件的代码(通常不推荐)。

    对WordPress站点的可执行文件的任何其他更改都可能是入侵、恶意软件注入或开发人员错误的迹象。在您的WordPress网站上运行文件完整性监控插件可以帮助您在这些问题成为对您网站的安全或功能的真正威胁之前轻松发现这些问题。

    简要回顾一下:文件完整性监控可以帮助您识别应该被删除的测试文件、大多数恶意软件注入——包括后门、重定向和特洛伊木马以及任何其他有害文件更改。

    当与WP Security Audit Log结合使用时,文件完整性监控可让您始终全面了解站点上发生的情况。您可以进行黑客攻击后取证以确定哪些文件是目标文件以及目标对象,还可以增强它们周围的安全性以防止未来的攻击。

    两种不同类型的文件完整性监控方法

    文件完整性监控的基础始终相同:比较在不同时间点获取的单个文件的指纹。有几种方法可以实现这一点。

    1. 将文件与中央存储库进行比较

    一种常用的方法是通过使用WordPress插件将指纹与中央存储库进行比较(更多关于下面的插件)。在这种情况下,插件会将您网站的index.php文件的指纹与WordPress发布的最新index.php文件的指纹进行比较。

    使用此方法的优点是您可以轻松确认您的文件是否与原始文件相同。但是,由于您将数据与中央存储库进行比较,因此存在一些缺点:

    • 该解决方案无法识别分布式配置文件中的更改,例如.htaccess和wp-config.php。
    • 如果您自定义网站的代码,您将被标记为误报。
    • 该插件只能比较已知应用程序(WordPress核心)的文件,有时也可以比较流行插件的文件。
    • 这些解决方案无法检测自定义应用程序或插件中的更改,因为它们没有可比性。
    • 您网站的安全性取决于供应商更新原始指纹的速度或中央存储库的可用性。

    比较文件

    比较文件

    2. 将文件与自生成数据进行比较

    由于基于中央存储库的方法的局限性,比较两组自行生成的数据是首选方法和最佳实践建议。这种类型的解决方案通过将指纹与他们自己以前的扫描进行比较来检测文件更改。

    这意味着插件在安装时会生成第一个指纹。然后,当它再次扫描文件时,它将新指纹与原始扫描的指纹进行比较。每当记录文件更改时,您都可以将插件配置为自动接受该更改或向您发送警报。

    由于以下优点,此方法优于前一种方法:

    • 它可以检测自定义代码的变化。
    • 系统适应您的网站(您可以验证更改并更新指纹,从而支持持续定制)。
    • 它报告的误报显着减少。

    由于这些原因,在寻找文件完整性监控工具或插件时,您会希望选择一个基于自生成数据的工具或插件。

    可用于保护站点的3种文件完整性监控工具

    有几种不同的文件完整性监控解决方案可用。我们将它们分为以下三个基本类别。让我们从头开始!

    1. 服务器级软件解决方案

    这些解决方案安装在网络服务器的操作系统上,并检查网络服务器上的所有文件。这意味着您只有在拥有自己的Web服务器或VPS时才能使用它们。

    市场上有多种选择,例如:

    作为服务器级解决方案,这些解决方案并不是专门针对WordPress驱动的网站。所以他们可能会产生很多误报。最重要的是,它们非常昂贵,并且需要高级知识来设置和管理。

    2. WordPress插件

    如果您想要一个更特定于WordPress的文件完整性监控解决方案,可以使用各种插件来完成此任务。

    Website File Changes Monitor

    Website File Changes Monitor是WordPress的专用文件完整性监控插件。它是免费提供的,当它检测到文件更改时,它会通过电子邮件提醒您。

    带菜单的文件更改视图

    带菜单的文件更改视图

    该插件使用自行生成的数据进行文件比较,您可以启动按需扫描。它是一个完全可配置的WordPress文件完整性监控解决方案,您可以排除文件和目录,配置扫描计划等等。

    真正让这个插件与众不同的是,它是唯一一个完全了解WordPress核心、插件和主题变化的WordPress插件。

    WordPress File Monitor

    WordPress File Monitor也是一个专用的文件完整性监控插件,它使用自生成的数据进行比较。但是,它不知道WordPress核心、插件和主题更改,您可能会收到许多有关文件更改的误报警报。

    误报警报

    误报警报

    误报警报会对网站产生非常负面的影响,因为不了解安全的用户无法验证警报是由关键事件还是仅是安全文件更改生成的。

    其他插件选项

    以上是WordPress唯一的文件完整性监控插件。其他具有文件完整性监控功能的插件是多合一安全解决方案的一部分,例如Sucuri SecurityiThemes securityWordfence

    这两个插件都使用将文件与中央存储库进行比较的方法,并且不知道站点结构的变化,即它们只识别 WordPress 核心和一些流行插件的变化。

    3.开源文件完整性监控工具

    如果插件不是您的菜,您可能需要考虑使用众多可用于监控文件的开源工具之一。例如,Tripwire提供其平台的开源版本 ,提供免费的安全功能,包括文件监控。话虽如此,此版本不如其付费版本有效。

    另一个要考虑的开源平台是OSSEC

    OSSEC平台

    OSSEC平台

    这是一种流行的免费安全解决方案,它能够执行文件监控任务。但是,就像我们提到的许多其他工具一样,它在服务器级别上工作。虽然它可以与WordPress一起使用,但它只有在您拥有专用服务器或VPS时才能工作。

    此外,如果您选择OSSEC,您需要进行一些高级配置,但它仍然可能不是您站点最准确的解决方案。

    开源安全平台最有趣的方面是,如果您了解代码方面的知识,您可以调整这些工具以包含扩展功能并满足您的偏好和需求。

    小结

    WordPress安全是一件严肃的事情。采取预防措施保护您的网站、内容、业务和用户数据是关键。文件完整性监控只是游戏的一部分。 如果确实发生攻击,拥有一个WordPress备份系统来恢复您的文件也很重要。

    在这篇文章中,我们展示了文件完整性监控如何满足这两个需求,并分享了三种类型的文件完整性监控解决方案,您可以在 WordPress 网站上使用:

    1. 服务器级软件解决方案,例如Tripwire(有效,但可能非常昂贵)。
    2. 免费的WordPress插件,例如Website File Changes Monitor
    3. OSSEC等开源工具。