我曾经使用valid-user或ip指令阻止访问我的Apache服务器的某个文件夹,如下所示:
<Directory "/home/domain/public_html/secure">
Require ip x.x.x.x
Require ip y.y.y.y
AuthType Basic
AuthUserFile "/home/domain/secure/pass"
AuthName "Authentication Required"
Require valid-user
Satisfy Any
</Directory>
现在,我已将我的服务器置于F5-BIGIP设备后面,该设备不允许我完全使用DNAT客户端连接。该设备也位于Linux服务器后面,作为网关,DNAT / SNAT规则正在相应地工作。不过,我可以通过X-Forwarded_For记录客户端的IP。但我的Apache指令不再适用了。
所以我的问题是,有什么方法可以使用像Require X-Forwarded-For x.x.x.x
这样的东西吗?
我的Apache版本是:
[root@webserver1 ~]# apachectl -version
Server version: Apache/2.4.6 (CentOS)
Server built: May 12 2016 1
○点27分23秒
提前致谢。
答案 0 :(得分:1)
您应该可以执行以下操作:
SetEnvIf X-Forwarded-For x.x.x.x$ foo
SetEnvIf X-Forwarded-For y.y.y.y$ bar
...
Require env foo
Require env bar