仅允许从主机服务器进行反向代理访问

仅允许从主机服务器进行反向代理访问

我有两台服务器 A) 前端服务器 (ip 11.22.33.44),B) 后端服务器 (ip 22.33.44.55)。两台服务器均使用 Debian Linux 和 Apache 服务器。

A) 前端服务器使用反向代理显示 B) 后端服务器的内容。我想将后端服务器的 Apache 访问限制为 IP 11.22.33.44(只能从 A) 前端服务器访问)。后端服务器侦听启用 SSL 的端口 1111 和 2222(以服务于两个不同的反向代理站点)。

我在后端服务器上尝试过:

<Proxy "*">
    Require ip 11.22.33.44
</Proxy>

<Proxy "*">
    order deny,allow
    Deny from from all
    Allow from 11.22.33.44
</Proxy>

但我没有成功。我仍然可以访问带有 URL 的 Web 浏览器https://22.33.44.55:1111

还有其他想法可以限制后端服务器对前端服务器 IP 地址的访问吗?

答案1

因此后端服务器是代理的目标,所以该Proxy指令与此无关。

为了限制对后端的访问,后端配置文件的虚拟主机中类似这样的内容会将访问限制为仅发出代理请求的前端服务器......

<VirtualHost *:80>
    DocumentRoot "/var/www/example.com"
    ServerName example.com
...
    <Location "/">
       Require ip 11.22.33.44
    </Location>
...
</VirtualHost>

您可以使用手册中的其他指令添加更精细的控制:
https://httpd.apache.org/docs/2.4/mod/mod_authz_core.html#require

相关内容