我的知识记录

Apache屏蔽IP防CC攻击配置_Apache IIS屏蔽IP访问教程详解

做过SEO的站长都知道,伪静态规则和访问屏蔽直接影响网站收录和安全。网站被恶意IP频繁访问,消耗服务器带宽和资源,甚至发起CC攻击导致网站打不开,需要通过规则屏蔽这些IP。后台管理页面被未知IP尝试登录,存在暴力破解风险,需要配置IP白名单只允许指定IP访问后台。

结合服务器日志和规则调试信息,原因可以归纳为以下几点。CDN或反向代理环境下,$_SERVER['REMOTE_ADDR']获取的是CDN节点IP,基于REMOTE_ADDR的屏蔽规则匹配的是CDN IP而非用户真实IP,导致要么屏蔽无效要么误封CDN节点。IP段使用了错误的CIDR格式,如将192.168.1.0/24写成192.168.1.0/255.255.255.0,Apache和IIS的某些屏蔽方式不支持子网掩码格式,只支持CIDR。虚拟主机的.htaccess被空间商禁用(AllowOverride None),用户上传的IP屏蔽规则不生效。IIS的IP屏蔽功能(IP和域限制)需要安装"IP和域限制"角色服务,未安装时web.config中的节点无法被识别,配置后规则不生效。屏蔽规则中使用了R=301重定向,但重定向目标也在被屏蔽的IP范围内,导致循环重定向。Apache的.htaccess中使用Require指令屏蔽IP,但Apache版本是2.2,Require指令是Apache 2.4的语法,2.2应该用Deny from,版本不匹配导致规则不生效或500错误。IP地址填写错误(如多写了一位、点号位置错误),导致规则匹配不到目标IP,或误匹配了其他IP段。

结合实际运维经验,整理出以下解决方案。IIS URL Rewrite方式屏蔽IP:。CDN环境获取真实IP:Apache中使用mod_remoteip模块,配置RemoteIPHeader X-Forwarded-For,然后用%{REMOTE_ADDR}匹配真实IP;IIS中安装"动态IP限制"或使用URL Rewrite匹配{HTTP_X_FORWARDED_FOR}变量。IP白名单(只允许指定IP):Apache 2.4: Require ip 192.168.1.0/24 Require ip 10.0.0.5 ;IIS:。Apache mod_rewrite方式屏蔽IP:RewriteEngine On RewriteCond %{REMOTE_ADDR} ^192.168.1.100$ [OR] RewriteCond %{REMOTE_ADDR} ^10.0.0. RewriteRule ^(.*)$ - [F,L],[F]返回403,这种方式兼容性好,适合虚拟主机。验证规则:用被屏蔽的IP访问网站(可通过代理或手机流量切换IP测试),返回403则规则生效;用正常IP访问确认不受影响;检查服务器访问日志确认被屏蔽IP的请求返回403状态码。注意事项:屏蔽IP前确认该IP不是搜索引擎蜘蛛的IP(可通过反向解析IP确认),避免误封蜘蛛影响收录;定期检查屏蔽列表,清理已不再恶意的IP;重要业务配置白名单比黑名单更安全。动态屏蔽:结合fail2ban(Linux)或Windows的动态IP限制功能,自动分析访问日志,对高频访问或异常行为的IP临时屏蔽,比手动配置静态规则更高效。

从更广泛的运维视角来看,还有一些容易被忽略的诱发因素。文件权限设置错误,Web服务器进程没有读取配置文件的权限,导致规则被忽略。服务器磁盘空间满或inode满,导致配置文件无法写入或日志无法记录。

实际操作中还需要注意以下细节。防盗链规则配置后,用不同来源的请求测试,确保正常访问不受影响。伪静态规则修改后需要重启IIS或Apache服务,新规则才能生效。Apache的.htaccess文件需要服务器开启AllowOverride All才能生效。修改规则前务必备份原配置文件,规则出错导致网站500错误时能快速回滚。

除了上述问题,实际运维中还可能遇到以下相关故障。域名屏蔽后所有域名都无法访问,检查规则中的条件判断是否写反了。防盗链配置后自己网站的图片也无法显示,检查规则中的允许域名是否包含了自己的域名。IP屏蔽规则在CDN环境下不生效,CDN回源IP被屏蔽导致所有用户无法访问,需要获取真实客户端IP。伪静态规则中中文URL乱码,需要在规则中添加NE(no escape)标志或配置编码。防盗链规则对HTTPS站点不生效,检查规则是否同时匹配了http和https协议。

随着云服务器和CDN普及,部分规则可以在CDN层面配置,减轻源站服务器的处理压力。

Apache屏蔽IP防CC攻击配置_Apache IIS屏蔽IP访问教程详解

标签:

更新时间:2026-08-27 11:42:16

上一篇:微信多开bat脚本加密_防止别人修改你的多开代码_技巧

下一篇:网站强制HTTP跳转HTTPS301跳转方案|电商站HTTPS改造下Nginx服务器301重定向配置