Apache访问控制到IP(X-Forwarded-For)或有效用户

时间:2016-07-31 15:43:49

标签: linux apache f5

我曾经使用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秒

提前致谢。

1 个答案:

答案 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