Products
GG网络技术分享 2025-03-18 16:13 0
WordPress 是迄今为止最流行的博客平台。
正由于它的流行,也因此带来了正面和负面的影响。事实上,几乎每个人都使用它,使它更容易被发现漏洞。WordPress 的开发人员做了很多工作,一旦新的缺陷被发现,就会发布修复和补丁,但这并不意味着你可以安装完就置之脑后。
在这篇文章中,我们将提供一些最常见的保护和强化 WordPress 网站的方法。
不用说的是,如果你并不打算只是做一个随意的博客,你应该总是使用 SSL。不使用加密连接登录到你的网站会暴露你的用户名和密码。任何人嗅探流量都可能会发现你的密码。如果你使用 WiFi 上网或者连接到一个公共热点,那么你被黑的几率更高,这是特别真实的。你可以从这里[1]获取受信任的免费 SSL 证书。
由第三方开发人员所开发,每个插件的质量和安全性总是值得怀疑,并且它仅取决于其开发人员的经验。当安装任何额外的插件时,你应该仔细选择,并考虑其受欢迎程度以及插件的维护频率。应该避免维护不良的插件,因为它们更容易出现易于被利用的错误和漏洞。
此主题也是上一个关于 SSL 主题的补充,因为许多插件包含的脚本会发出不安全连接(HTTP)的请求。只要你的网站通过 HTTP 访问,一切似乎很好。但是,一旦你决定使用加密并强制使用 SSL 访问,则会立即导致网站的功能被破坏,因为当你使用 HTTPS 访问其他网站时,这些插件上的脚本将继续通过 HTTP 提供请求。
Wordfence 是由 Feedjit Inc. 开发的,Wordfence 是目前最流行的 WordPress 安全插件,并且是每个严肃的 WordPress 网站必备的,特别是那些使用 WooCommerce 或其它的 WordPress 电子商务平台的网站。
Wordfence 不只是一个插件,因为它提供了一系列加强您的网站的安全功能。它具有 web 程序防火墙、恶意软件扫描、实时流量分析器和各种其它工具,它们可以提高你网站的安全性。防火墙将默认阻止恶意登录尝试,甚至可以配置为按照 IP 地址范围来阻止整个国家/地区的访问。我们真正喜欢 Wordfence 的原因是,即使你的网站因为某些原因被侵害,例如恶意脚本,Wordfence 可以在安装以后扫描和清理你的网站上被感染的文件。
该公司提供这个插件的免费和付费订阅计划,但即使是免费计划,你的网站仍将获得令人满意的水平。
保护你的 WordPress 后端的另一个步骤是使用额外的密码保护任何除了你以外不打算让任何人使用的目录(即URL)。 /wp-admin 目录属于此关键目录列表。 如果你不允许普通用户登录 WordPress,你应该使用密码限制对 wp.login.php 文件的访问。无论是使用 Apache[2] 还是 Nginx[3],你都可以访问这两篇文章,了解如何额外保护 WordPress 安装。
这是攻击者发现你网站上的有效用户名的一种相当简单的方法(即找出管理员用户名)。那么它是如何工作的?这很简单。在任何 WordPress 站点上的主要 URL 后面跟上 /?author=1 即可。 例如:wordpressexample.com/?author=1。
要保护您的网站免受此影响,只需安装停止用户枚举[4]插件。
RPC 代表远程过程调用,它可以用来从位于网络上另一台计算机上的程序请求服务的协议。对于 WordPress 来说,XML-RPC 允许你使用流行的网络博客客户端(如 Windows Live Writer)在你的 WordPress 博客上发布文章,如果你使用 WordPress 移动应用程序那么也需要它。 XML-RPC 在早期版本中被禁用,但是从 WordPress 3.5 时它被默认启用,这让你的网站面临更大的攻击可能。虽然各种安全研究人员建议这不是一个大问题,但如果你不打算使用网络博客客户端或 WP 的移动应用程序,你应该禁用 XML-RPC 服务。
有多种方法可以做到这一点,最简单的是安装禁用 XML-RPC[5]插件。
via: https://www.rosehosting.com/blog/5-tips-for-securing-your-wordpress-sites/
作者:rosehosting.com[6] 译者:geekpi 校对:wxy
本文由 LCTT[7] 原创编译,Linux中国 荣誉推出
[1]: 这里 - https://letsencrypt.org/
[2]: Apache - https://linux.cn/article-5731-1.html
[3]: Nginx - https://linux.cn/article-5229-1.html
[4]: 停止用户枚举 - https://wordpress.org/plugins/stop-user-enumeration/
[5]: 禁用 XML-RPC - https://wordpress.org/plugins/disable-xml-rpc/
[6]: rosehosting.com - rosehosting.com
[7]: LCTT - https://github.com/LCTT/TranslateProject
我们都知道WordPress是支持Feed设置的,在设置–阅读界面进行相关的Feed设置即可。默认情况下,只会输出内容相关(标题、作者、文章正文或摘要等)的部分,不会有自定义的其他内容。WordPressFeed订阅中如何添加自定义内容?
1.使用插件
在大多数情况下,使用插件是将自定义内容添加到WordPressRSS/Feed最简单方法。只需安装、激活、添加你的内容就可以了。这里小编推荐SimpleCustomContent插件,其实这个插件不仅仅可以向Feed中添加自定义内容,还可以通过简码添加内容到任何地方。
2.使用自定义代码
插件的方法虽然简单,但是对于某些喜欢折腾的人或开发者来说,通过代码方式添加可能更灵活。
常用到的代码如下:
//添加自定义内容到所有Feed
functionwpkj_add_content_to_all_feeds($content){
$before=‘<p>显示在文章内容前的自定义内容</p>’;
$after=‘<p>显示在文章内容后的自定义内容</p>’;
if(is_feed()){
return$before.$content.$after;
}else{
return$content;
}
}
add_filter(‘the_content_feed’,‘wpkj_add_content_to_all_feeds’);
这段代码段将指定的自定义内容添加到WordPressfeed中的每个文章中。你可以通过添加到主题的functions.php中,或者制作一个简单的插件来使用。
上面的wpkj_add_content_to_all_feeds函数代码定义了$before和$after两个变量,分别对应文章正文的前后的自定义内容,我们可以去修改为任何你想添加的html格式的内容。
如果仅有wpkj_add_content_to_all_feeds函数自身的代码,是不会执行的,我们必须通过WordPress的钩子挂载,才可以生效。在这里我们用的是the_content_feed这个过滤钩子,可以对Feed输出的内容进行修改。
注:代码中使用了is_feed()作为判断,只在Feed输出中才添加自定义内容,否则直接显示正文。在这里其实是不必要的,因为我们是通过the_content_feed这个钩子挂载函数的,这个钩子本身就是只对Feed输出进行操作的。只是想告诉大家可以这样去做技术上的判断。
在文本开头的插图里面,我们看到可以设置Feed显示全文或摘要。上面提到的the_content_feed钩子就是针对全文的,如果你选择的是摘要,就可以使用the_excerpt_rss钩子。
//全文的时候用
add_filter(‘the_content_feed’,‘wpkj_add_content_to_all_feeds’);
//摘要的时候用
add_filter(‘the_excerpt_rss’,‘wpkj_add_content_to_all_feeds’);
Demand feedback