1.定期更新WordPress版本
WordPress 持续推出软件更新,旨在优化性能并增强安全防护,确保您的网站远离网络攻击的风险。
保持 WordPress 系统最新是提升安全性的关键步骤。但据数据显示,有超过三分之一的 WordPress 网站仍在使用过时版本,这无疑增加了遭受攻击的可能性。
为了确认您的 WordPress 是否处于最新状态,请登录后台管理界面,并查看左侧菜单中的“仪表板”下的“更新”选项。一旦发现版本落后,我们强烈建议您立即进行升级。
我们同样推荐您定期更新 WordPress 网站上使用的主题和插件。陈旧的主题和插件可能与最新版的 WordPress 核心程序不兼容,这不仅可能导致功能异常,还可能让您的网站面临安全风险。
为了维护网站的稳定性和安全性,请定期检查并更新您网站上的主题和插件。这将确保它们与 WordPress 的最新版本兼容,从而减少潜在的问题和安全漏洞。
2.使用安全的WP- Admin登陆凭证
一个常见的安全疏漏是选用过于简单或常见的用户名,如“admin”、“administrator”或“test”。这种做法大大增加了您的网站遭受暴力破解攻击的可能性。同时,攻击者也常利用这类攻击手段来侵入那些密码设置不够坚固的 WordPress 网站。
为了避免这种情况,我们强烈推荐您选择独特且复杂的用户名和密码。
如果您需要创建一个新的 WordPress 管理员账户,请遵循以下步骤:
-
登录您的 WordPress 管理后台,进入“用户”→“添加新用户”。
-
在创建新用户时,为其分配管理员权限。设置一个包含数字、符号以及大小写字母的密码,并确保密码长度超过 12 个字符,以增加密码的强度和安全性。
-
完成设置后,点击“添加新用户”按钮。
通过采取这些措施,您可以显著提高网站的安全性,减少被攻击的风险。
3.为管理页面设置安全列表和黑名单
启用 URL 锁定功能能有效防御未授权 IP 地址和暴力攻击对您的登录页面构成的威胁。为了实现这一点,您需要为您的 WordPress 网站配置一个 Web 应用程序防火墙 (WAF) 服务,例如 Cloudflare 或 Sucuri。
- Cloudflare 提供了区域封锁规则的功能,允许您设定特定的 URL 并定义哪些 IP 地址范围可以访问这些 URL。不在您设定的 IP 范围内的用户将无法访问这些 URL。
- Sucuri 则提供了一个名为 URL 路径黑名单的功能。您可以通过将登录页面的 URL 添加到阻止列表中,来阻止未授权用户访问。同时,您可以将授权的 IP 地址添加到安全列表中,确保只有这些 IP 可以访问登录页面。
此外,您还可以通过修改网站的
.htaccess
文件来限制对登录页面的访问权限。在进行任何修改之前,请确保备份现有的 .htaccess
文件,以便在遇到问题时能够快速恢复网站。通过这些措施,您可以增强网站的安全性,保护登录页面不受未授权访问和攻击。
# Block IPs for login Apache 2.2 <files /wp-login.php> order deny,allow allow from MYIP allow from MYIP2 deny from all </files> # Block IPS for login Apache 2.4 <Files "wp-login.php"> Require all denied </Files>
此规则应放在#BEGIN WordPress和#END WordPress语句之后,如下所示。
即使您没有静态 IP,此规则也适用,因为您可以将登录限制在您的 ISP 公共范围内。
您还可以使用此规则来限制其他经过身份验证的 URL,例如/wp-admin。
4.使用值得信赖的WordPress主题
非正版的 WordPress 主题通常是未经授权的高级主题复制品。它们可能价格低廉,但背后隐藏着众多安全隐患。
这些非法主题往往是原版主题的破解版。黑客可能在其中植入了恶意代码,如病毒和垃圾链接。更糟糕的是,这些主题可能内置了后门程序,为对您的 WordPress 网站发起进一步攻击提供了便利。
由于这些非法主题的非法性质,您无法获得官方开发者的任何支持与更新。一旦遇到问题,您只能自行解决。
为了确保网站的安全,我们建议您使用官方 WordPress 存储库或信誉良好的开发者提供的主题。您还可以在 ThemeForest、Envato 等知名主题市场上寻找高质量的主题,这些平台提供的主题通常都经过了严格的安全审查。
5.安装SSL证书
安全套接字层(SSL)技术能够对网站与访客间传输的数据进行加密,从而提升数据的安全性,有效防止数据被黑客截获。
网站若部署了 SSL 证书,将采用 HTTPS 协议进行数据传输,与 HTTP 协议相比,HTTPS 协议在网址前会显示一个锁形图标,表明该网站的数据传输是加密的。这样的网站更容易被用户识别为安全网站。
6.删除未使用的WordPress插件和主题
在您的网站上保留那些不再使用或未及时更新的插件和主题,可能会带来安全隐患。这些过时的组件由于缺乏最新的安全补丁,更容易成为黑客攻击的入口点。
黑客可能会利用这些漏洞来侵入您的网站,因此,为了维护网站的安全性,建议定期清理和更新不再需要的插件和主题。这样可以减少潜在的安全风险,保护您的网站免受未授权访问。
7.为WP-Admin启用双因素身份验证
为了提升 WordPress 网站的登录安全性,建议您启用双因素身份验证(2FA)。这种验证机制在传统的用户名和密码登录基础上增加了一层安全保障,要求用户在登录时输入一个额外的、一次性的验证码。
这个验证码可以通过短信或者一个第三方身份验证应用来获取,确保了即使密码被泄露,攻击者也无法轻易登录您的网站。
要在您的 WordPress 网站上实施 2FA,您可以安装如 Wordfence Login Security 这样的登录安全插件,并在您的手机上安装 Google Authenticator 等第三方身份验证应用。
完成插件和应用的安装后,请按照以下步骤启用双因素身份验证:
-
登录到 WordPress 管理后台,并前往插件页面。如果您使用的是 Wordfence,找到并点击左侧菜单中的登录安全选项。
-
进入双重身份验证设置。
-
使用手机上的身份验证应用扫描提供的二维码或输入激活密钥。
-
在恢复代码区域输入您手机上应用生成的验证码。
-
点击“激活”按钮以启用 2FA。
此外,为了应对无法访问身份验证应用的情况,建议您下载并保存提供的恢复代码,以备不时之需。这样,您就可以在需要时安全地恢复对您网站的访问权限。
8.定期备份WordPress
使用 WordPress,可以使用All-in-One WP Migration等插件来备份网站。
9.限制登陆尝试次数
为了增强 WordPress 网站的安全性,一种有效的策略是限制登录尝试的次数。这可以通过使用特定的插件来实现,以下是一些推荐选项:
-
Limit Login Attempts Reloaded - 这类插件允许您为特定 IP 地址设定失败尝试的上限,将用户标记为安全或直接阻止他们登录,并在锁定期间通知用户剩余的锁定时间。
-
Loginizer - 这个插件提供了包括双因素认证(2FA)、reCAPTCHA 以及登录挑战问题在内的多种登录安全功能。
-
BestWebSoft 限制尝试次数插件 - 它能够自动检测并阻止那些达到登录尝试次数上限的 IP 地址,并将这些 IP 地址添加到黑名单中。
采用这些 WordPress 安全措施的一个潜在风险是合法用户可能会被错误地锁定在外。不过,您无需过分担心,因为存在多种方法可以帮助您恢复被锁定的 WordPress 账户。通过合理配置这些插件,您可以在不牺牲用户体验的前提下,有效提高网站的安全性。
10.更改WordPress登陆页面URL
为了增强您的网站对抗暴力破解攻击的能力,建议您更改默认的登录页面 URL。
大多数 WordPress 网站都使用标准的登录 URL,即 yourdomain.com/wp-admin,这使得黑客更容易针对这一常见路径发起攻击。
通过使用如 WPS Hide Login 和 Change wp-admin Login 等插件,您可以轻松设置自定义的登录 URL。这样不仅能够提高安全性,还能使您的网站更难被自动化攻击工具发现。
启用这些插件后,您可以自定义登录页面的路径,例如将其更改为一个不常见的 URL,如 yourdomain.com/login 或者其他任何您认为合适的路径。这样,即使黑客尝试攻击您的登录页面,他们也会因为找不到正确的 URL 而失败。
11.自动注销空闲用户
采用如 Inactive Logout 这类 WordPress 安全插件,是实现自动注销长时间不活跃用户账户的便捷方式之一。此插件的功能不仅限于自动注销闲置用户,它还能发送定制化的消息,提前通知用户他们的网站会话即将到期。
通过这种方式,您可以提高网站的安全性,同时确保用户在会话即将结束时得到适当的提醒。这不仅有助于保护用户数据的安全,还能提升用户体验。
12.监控用户活动
要轻松追踪用户在您的 WordPress 网站上的活动,使用专门的插件是一个有效的方法。以下是一些推荐的插件:
-
WP Activity Log - 这个插件能够监控您网站上多个关键区域的变动,包括文章、页面、主题和插件的更新。它还能详细记录文件的新增、删除以及任何修改操作。
-
Activity Log - 专门设计用于监控 WordPress 管理面板上的活动,并允许您设置自定义的电子邮件通知规则,以便在发生特定事件时及时获得通知。
-
Simple History - 不仅记录 WordPress 管理员的操作日志,还支持与多个第三方插件集成,如 Jetpack、WP Crontrol 和 Beaver Builder,全面记录与这些插件相关的所有活动。
通过使用这些插件,您可以轻松地监控和管理网站上的用户活动,确保网站的安全性和数据完整性。这些工具提供了强大的日志记录和监控功能,帮助您及时发现并处理任何异常行为。
13.检查恶意软件
市面上有许多出色的 WordPress 恶意软件扫描插件,它们能够帮助检测恶意软件并增强 WordPress 网站的安全性。
以下是一些建议安装的安全插件:
-
Wordfence - 这是一款广受欢迎的 WordPress 安全插件,它提供实时恶意软件签名更新和警报通知。当您的网站因为可疑活动被其他网站列入黑名单时,Wordfence 会及时通知您。
-
BulletProof Security - 通过空闲会话注销、隐藏插件文件夹以及数据库备份和恢复工具等功能,帮助保护您的 WordPress 网站免受攻击。
-
Sucuri Security - 作为市场上顶尖的安全插件之一,Sucuri 提供包括 SSL 证书支持、远程恶意软件扫描以及在遭受黑客攻击后的安全恢复措施在内的多种功能。
通过安装这些安全插件,您可以显著提高网站的安全性,保护您的 WordPress 网站免受恶意软件和黑客攻击的威胁。
14.禁用PHP错误报告
PHP 错误报告功能可以提供有关您网站 PHP 脚本的详细信息,这对于开发和调试来说非常有用。然而,这个功能也可能暴露您的网站路径和文件结构,从而成为 WordPress 安全的一个潜在风险。
在生产环境中,公开显示这些错误信息可能会向网络犯罪分子透露您的网站漏洞,例如特定插件的错误消息,这可能会被利用来发起攻击。
为了提高安全性,建议您关闭 PHP 错误报告。以下是如何修改 PHP 文件的步骤:
-
使用 FTP 客户端(如 FileZilla 或您的托管服务提供商提供的文件管理器)打开您网站的
wp-config.php
文件。 -
在文件中添加以下代码片段。确保将其放置在任何其他 PHP 指令之前:
error_reporting(0); @ini_set('display_errors', 0);
3.点击“保存”以应用更改。
通过这些步骤,您可以关闭 PHP 错误报告,减少网站安全风险,同时保持网站的稳定运行。
15.迁移到更安全的Web主机
即使您的 WordPress 网站采取了多种安全措施,如果托管环境本身容易受到攻击,这些措施也可能变得无效。因此,选择一个能够确保服务器上所有网站数据和文件安全的强大托管服务提供商是至关重要的。
如果您对当前托管服务的安全性不满意,那么可能是时候考虑将您的 WordPress 网站迁移到一个更安全的托管平台了。在寻找新的托管服务时,以下是一些关键因素:
-
托管类型 - 共享托管和 WordPress 托管由于资源共享,可能比其他类型的托管更容易受到攻击。考虑选择提供 VPS(虚拟专用服务器)或专用托管服务的托管商,这样可以隔离您的资源,提高安全性。
-
安全性 - 优秀的托管服务提供商应持续监控其网络以侦测可疑活动,并定期更新服务器的软件和硬件。他们还应采取必要的措施来保护服务器,防范各种类型的网络攻击。
-
功能 - 无论托管类型如何,都应该具备自动备份和防恶意软件的安全工具,这些是保护您的 WordPress 网站所必需的。在最糟糕的情况下,这些工具可以帮助您恢复受到感染的网站。
-
支持 - 选择一个拥有全天候支持团队和丰富技术知识的托管公司至关重要。他们可以在您需要时提供帮助,保护您的数据,并解决可能出现的任何技术和安全问题。
通过考虑这些因素,您可以找到一个既安全又可靠的托管服务提供商,为您的 WordPress 网站提供一个坚实的安全基础。
16.关闭文件编辑
WordPress 提供了一个内置的文件编辑器,方便用户直接编辑 PHP 文件。然而,这项功能如果被黑客利用,可能会带来安全风险。
为了避免这种情况,一些用户选择禁用内置的文件编辑器。您可以通过在
wp-config.php
文件中添加以下代码来实现这一点:define('DISALLOW_FILE_EDIT', true);
如果您希望在将来重新启用 WordPress 网站的文件编辑功能,只需通过 FTP 客户端或您的托管服务提供商的文件管理器,从
wp-config.php
文件中移除上述代码即可。17.使用.htaccess文件限制访问
.htaccess
文件对于确保 WordPress 网站的链接正确无误至关重要。如果这个文件没有正确配置,您的网站可能会频繁出现 404 Not Found 错误。除了基本的链接管理,
.htaccess
文件还可以用于增强网站的安全性,例如阻止特定 IP 地址的访问、限制访问权限到特定的 IP 地址,以及禁用特定文件夹中的 PHP 执行。以下是如何通过 .htaccess
文件来提升您的 WordPress 安全性的一些方法。重要提示:在对现有的
.htaccess
文件进行任何修改之前,请确保您已经备份了该文件。这样,如果遇到任何问题,您可以轻松地恢复您的网站。在特定文件夹中禁用 PHP 执行
黑客有时会尝试将恶意脚本上传到网站的上传文件夹。默认情况下,上传文件夹(
/wp-content/uploads/
)只应该包含媒体文件,而不应该包含任何 PHP 文件。为了保护您的 WordPress 网站,您可以在该文件夹中创建一个新的 .htaccess
文件,并添加以下规则来禁用 PHP 执行:<Files *.php> Order Allow,Deny Deny from all </Files>
保护
wp-config.php
文件位于根目录的
wp-config.php
文件包含了 WordPress 的核心设置和数据库的详细信息,这使得它成为黑客的主要攻击目标。为了保护这个文件并确保 WordPress 的安全性,您可以在 .htaccess
文件中添加以下规则:<Files wp-config.php> Order Allow,Deny Deny from all </Files>
通过这些步骤,您可以有效地增强 WordPress 网站的安全性,防止未授权的访问和潜在的攻击。
18.更改默认的WordPress数据库前缀
WordPress 数据库是网站运行的核心,它包含了所有必要的关键信息。正因如此,黑客常常利用 SQL 注入攻击来破坏数据库。这种攻击方法通过将恶意代码注入数据库,能够绕过 WordPress 的安全防护,非法获取数据库中的信息。
SQL 注入攻击在所有网络攻击中占比超过50%,是网络安全面临的主要威胁之一。黑客之所以频繁使用这种攻击手段,部分原因是许多用户忽视了更改默认的数据库前缀
wp_
。以下是两种可以采取的措施,以保护您的 WordPress 数据库不受 SQL 注入攻击的侵害。
重要提示:在进行任何操作之前,请确保您已经备份了 MySQL 数据库。这样,即使发生意外,您也能够轻松地恢复数据库。
-
更改默认数据库前缀:WordPress 默认使用
wp_
作为数据库表的前缀。通过更改这个前缀,您可以降低 SQL 注入攻击的风险。您可以在wp-config.php
文件中修改$table_prefix
参数来实现这一点。 -
使用安全插件:安装并使用专门设计来防止 SQL 注入的安全插件,如 Wordfence Security 或 Sucuri Security,这些插件能够提供额外的保护层,帮助您抵御 SQL 注入攻击。
通过采取这些预防措施,您可以显著提高数据库的安全性,保护您的 WordPress 网站免受 SQL 注入攻击的威胁。
19.禁用XML- RPC
XML-RPC 是 WordPress 的一个特性,它允许用户通过移动设备发布内容、启用引用和 pingback,以及与 Jetpack 等插件交互。
然而,XML-RPC 也可能成为安全漏洞的源头,黑客可能会利用这些漏洞进行攻击。例如,黑客可以利用 XML-RPC 进行多次登录尝试,而不触发安全软件的警报,这增加了网站遭受暴力破解的风险。
此外,黑客还可能利用 XML-RPC 的 pingback 功能发起分布式拒绝服务(DDoS)攻击,通过向数千个网站发送 pingback 请求,可能导致目标网站服务中断。
要检查您的网站是否启用了 XML-RPC,您可以使用 XML-RPC 验证工具进行测试。如果测试结果显示成功,说明 XML-RPC 功能是激活状态。
您可以通过插件或手动方式禁用 XML-RPC 功能。
使用插件禁用 XML-RPC
使用插件是禁用 XML-RPC 功能的简便方法。我们推荐使用“Disable XML-RPC & Pingback”插件,它可以自动关闭 XML-RPC 的某些功能,防止黑客利用这一安全漏洞。
手动禁用 XML-RPC
另一种停止 XML-RPC 请求的方法是手动编辑
.htaccess
文件。在您的网站根目录中找到 .htaccess
文件,并添加以下代码:# 阻止 WordPress xmlrpc.php 请求 <Files xmlrpc.php> Order Deny,Allow Deny from all Allow from 000.00.000.000 </Files>
如果您希望允许特定 IP 地址访问 XML-RPC,可以将
000.00.000.000
替换为相应的 IP 地址。如果您决定完全禁用 XML-RPC,可以保留上述代码。如果您希望重新启用 XML-RPC,只需从 .htaccess
文件中删除这些代码即可。通过这些步骤,您可以有效地保护您的 WordPress 网站,防止 XML-RPC 相关的安全威胁。
20.隐藏WordPress版本
了解您网站运行的 WordPress 版本对黑客来说是一个宝贵的信息,因为这可以帮助他们发现并利用该版本的已知漏洞来攻击您的网站,尤其是如果您使用的是较旧的版本。
幸运的是,您可以通过编辑 WordPress 主题来隐藏网站版本信息。以下是详细步骤:
-
登录您的 WordPress 管理后台,然后导航至“外观”→“主题编辑器”。
-
在主题编辑器中,选择您正在使用的主题,并找到
functions.php
文件。 -
要移除标题和 RSS 源中的 WordPress 版本号,请将以下代码添加到
functions.php
文件中:function dartcreations_remove_version() { return ''; } add_filter('the_generator', 'dartcreations_remove_version');
-
WordPress 的“生成器”元标记同样会显示版本号。要删除这个标记,请添加以下代码行:
remove_action('wp_head', 'wp_generator');
-
完成代码添加后,点击“更新文件”按钮以保存您的更改。
通过这些步骤,您可以有效地隐藏 WordPress 版本信息,增加网站的安全性,减少被黑客攻击的风险。
21.组织热链接
热链接(也称为“盗链”)是指其他网站未经您的许可,直接在其页面上引用您网站上的资源(通常是图片)。当这些资源被访问时,它们会消耗您的服务器带宽和资源,这可能会导致您的网站速度变慢。
要检查您的内容是否被热链接,您可以在 Google 图片搜索中使用以下搜索命令,记得将
yourwebsite.com
替换为您自己的域名:inurl:yourwebsite.com -site:yourwebsite.com
为了防范热链接,您可以采取以下几种方法:
-
使用 FTP 客户端:通过编辑
.htaccess
文件,您可以添加规则来阻止未授权的引用。 -
使用 WordPress 安全插件:有些插件如 Wordfence Security 提供了防止热链接的功能。
-
使用 CDN:内容分发网络(CDN)可以帮助分散流量,同时提供额外的安全层来防止热链接。
-
编辑控制面板的设置:在某些托管服务的控制面板中,您可以直接设置规则来限制对资源的直接访问。
通过这些措施,您可以保护您的网站资源不被未经授权的使用,确保网站的运行效率和安全性。
22.管理文件权限
为了保护您的 WordPress 管理员账户不受黑客攻击,您需要严格控制谁能够访问您的文件和文件夹。
您可以通过以下方法管理文件和文件夹的权限:
-
使用网络主机的文件管理器:大多数托管服务都提供了一个用户友好的界面,让您可以轻松地查看和管理文件权限。
-
使用 FTP 客户端:通过 FTP 客户端,您可以连接到您的服务器并直接修改文件和文件夹的权限。
-
通过命令行:如果您熟悉命令行操作,也可以使用 SSH 连接到您的服务器并使用命令来设置权限。
通常,文件和文件夹的权限会有一个默认设置,但您需要特别注意一些关键文件和文件夹的权限设置。例如:
-
wp-admin 文件夹:这个文件夹包含了 WordPress 管理后台的所有文件,应该只允许网站所有者(Owner)有写入权限。
-
wp-config.php 文件:这是 WordPress 的核心配置文件,包含了数据库连接信息和其他敏感设置,同样应该只允许所有者写入。
正确的权限设置可以大大增强您网站的安全性,防止未经授权的访问和潜在的攻击。请确保定期检查和更新这些设置,以保持您的网站安全。