Apache环境WordPress网站的.htaccess防御xmlrpc.php、wp-login.php等重要文件被扫描的教程

网络上很多教程大多都是Nginx的环境的WordPress防御方法,但是我早期用的就是Apache,主要追求它稳定,要转Nginx后期再说了。

我用GPT、Gemini、豆包反复整理,加上我自己用2个主题实验,整理了一套Apache环境下的WordPress通用防御代码,也是可以给Z-blog用的。

.htaccess中添加代码防御文件扫描

我现在把其中重点的xmlrpc.php、wp-login.php、wp-admin防御分享给大家,直接在伪静态中或者.htaccess文件中加在# BEGIN WordPress前面:

<IfModule mod_rewrite.c>
RewriteEngine On

# 仅允许 11.11.*.* 城市网段访问登录与后台,其余IP全部403
# 放行前台ajax必需接口,避免网站功能失效
<FilesMatch “(wp-login\.php|wp-admin)”>
Require ip 111.11.0.0/16
Require all denied
</FilesMatch>
<FilesMatch “wp-admin/admin-ajax\.php”>
Require all granted
</FilesMatch>

# 精准拦截根目录 xmlrpc.php
RewriteRule ^xmlrpc\.php$ – [F,L,NC]

</IfModule>

IP段就你自己查一下你电脑的IP,后面两个.0.0不要动,因为大部分人的IP是动态的,会经常变,用你自己城市的IP段就行,大部分扫描时来自美国的。

开启Cloudflare代理会把自己的IP也拦截

如果开启了Cloudflare代理,任何人访问都是用的代理IP,所以你自己访问wp-login.php也是返回403,怎么让问你自己想方法吧,我是需要登后台的时候临时删这一段。

我自己用的不止防御这三个文件,还有其它乱七八糟的PHP文件也都防御了,还有各种爬虫防御什么的,暂时就不分享出来了,你们可以用AI帮你们加,然后自己测试正常了就可以用。

本文来自投稿,不代表首晒立场,如若转载,请注明出处:https://www.shoushai.com/p/1965

喜欢 (1)

发表回复

登录后才能评论

猜你喜欢