Apache 2.4不要求ip范围不工作(GEOIP活动时忽略黑名单)
我想知道发生了什么事。如果我使用Apache 2.4不要求ip范围不工作(GEOIP活动时忽略黑名单),apache,apache2,geoip,Apache,Apache2,Geoip,我想知道发生了什么事。如果我使用 Require not ip xxx.xxx.xxx.xxx 它只是工作,Apache2.4抛出了一个403。现在我尝试使用整个范围,但它仍然允许请求通过。我用过: Require not ip xxx.xxx.xxx.1 xxx.xxx.xxx.255 Apache2.4返回200而不是403。我做错了什么 谢谢 编辑: 这里有一个来自我的本地网络的简单测试用例 Require not ip 192.168.1.180/192.168.1.185 使用i
Require not ip xxx.xxx.xxx.xxx
它只是工作,Apache2.4抛出了一个403。现在我尝试使用整个范围,但它仍然允许请求通过。我用过:
Require not ip xxx.xxx.xxx.1 xxx.xxx.xxx.255
Apache2.4返回200而不是403。我做错了什么
谢谢
编辑:
这里有一个来自我的本地网络的简单测试用例
Require not ip 192.168.1.180/192.168.1.185
使用ip 192.168.1.183上的计算机,完全没有被阻止
这是我的httpd.conf,IP位于单独的blacklist.txt中。它也适用于单个ip,该问题仅与ip的范围相关
<Directory "f:/root">
Options Indexes FollowSymLinks
AllowOverride All
<LimitExcept GET POST HEAD>
</LimitExcept>
<RequireAll>
Require all granted
Include conf/blacklist.txt
</RequireAll>
</Directory>
选项索引跟随符号链接
允许超越所有
要求所有授权
包括conf/blacklist.txt
Edit2:
做了另一个测试,问题似乎来自使用黑名单+GEOIP。黑名单单独与xxx.xxx.xxx.0/xxx.xxx.xxx.255一起工作,但一旦mod_geoip激活,黑名单将被忽略
这是我的GEOIP配置:
<IfModule geoip_module>
GeoIPEnable On
GeoIPEnableUTF8 On
GeoIPOutput Env
GeoIPScanProxyHeaders On
GeoIPDBFile bin/GeoIP.dat MemoryCache
SetEnvIf GEOIP_COUNTRY_CODE CN BlockCountry
</IfModule>
地理位置
GEOIPENABLUETF8开启
地理输出环境
GeoIPScanProxyHeaders打开
geoipdfile bin/GeoIP.dat MemoryCache
SetEnvIf地理区域国家代码CN区块国家
如果有办法让黑名单和GEOIP一起工作,你的IP范围格式是错误的。它应该如下所述
Require not ip xxx.xxx.xxx.1/xxx.xxx.xxx.255
好的,所以这次发现了问题,哈哈。这是一个带有Apache2.4.10的WAMP服务器,不确定是否相关阻止IP范围的唯一方法是通过以下方式阻止整个范围:
Require not ip 192.168.1
这将阻止整个192.168.1.0到192.168.1.255块。如果我试过
Require not ip xxx.xxx.xxx.0/xxx.xxx.xxx.255
事实上,不会起作用,会让访客通过。在我的测试过程中,出于某种原因,我认为它与GEOIP有关,但事实并非如此(不确定我做了什么)
不幸的是,我从来没有找到一个只阻塞部分范围的解决方案,几乎什么都试过了。所以我可以接受它,但谜团还没有完全解开……虽然我知道我的答案有点晚,但希望这能帮助其他人 我很确定使用Apache2.4实现IP范围的最简单方法是CIDR。你可以在谷歌上查找“CIDR生成器”来设置你的特定范围 我用了这个: 对于您最初的问题,我将尝试此方法,而不是阻塞整个内部范围 不需要ip 192.168.1.180/30 192.168.1.184/31
另外,由于IP是专门输入的,我非常确定GeoIP模块没有影响。apache文档说:需要IP 192.168.1.104 192.168.1.205或网络/网络掩码对:需要IP 10.1.0.0/255.255.0.0-将尝试任何不工作的方式。仍然返回200而不是403,带有xxx.xxx.xxx.1/xxx.xxx.xxx.255您可以提及您要阻止的IP范围以及您在httpd.conf中放置的内容吗?这是可行的,但问题实际上来自黑名单+地理IP,后期编辑