apache正向代理落地为内网统一出口需同时完成自身配置与防火墙策略:启用mod_proxy和mod_proxy_connect模块,配置listen 3128、proxyrequests on、allowconnect 443 563,并在中限定源ip(如10.20.0.0/16),防火墙同步添加富规则放行对应端口与网段,客户端通过环境变量或系统设置指向代理地址,最后三步验证监听、放行及连通性。

Apache 正向代理要真正落地为内网统一出口,必须同时完成 Apache 自身配置和防火墙策略两件事——只配一边,连接会直接失败或暴露风险。
启用正向代理并限制可访问目标
先确保 Apache 加载了必要模块:
- mod_proxy 和 mod_proxy_connect(HTTPS 隧道必需)
- 在主配置文件末尾添加监听端口,例如:
Listen 3128 - 开启正向代理并限定允许的协议与端口:
ProxyRequests On<br>AllowCONNECT 443 563
这表示只允许建立到 HTTPS(443)和 SNEWS(563)端口的隧道,堵住其他高危端口滥用可能
按来源 IP 严格控制代理使用权限
避免被全网扫描利用,必须双重收敛访问源:
Apache Superset 是一个广泛采用的开源 BI 平台,用于 SQL 探索、图表构建和仪表板交付。当代理需要查询仓库数据、组装仪表板或使用成熟的分析界面解释指标而不是临时笔记本代码时,此技能非常有用。
- 在
<ifmodule mod_proxy.c></ifmodule>块中配置:<proxy><br> Require ip 10.20.0.0/16<br> Require ip 172.16.5.10<br></proxy>
- 对应防火墙也加一条富规则(以 firewalld 为例):
sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="10.20.0.0/16" port port="3128" protocol="tcp" accept' - 这样即使 Apache 配置漏写某条 Require,防火墙也会在连接建立前拦截非授权 IP
客户端统一配置出口地址
让所有需走代理的终端(Linux、CI 服务器、构建机等)通过环境变量或系统级设置指向该地址:
- 在
/etc/profile.d/proxy.sh中写入:export http_proxy="http://10.20.1.5:3128"<br>export https_proxy="http://10.20.1.5:3128"<br>export no_proxy="localhost,127.0.0.1,10.20.1.5,10.20.100.0/24"
- Yum、pip、npm、Maven 等工具默认识别这些变量,无需额外改配置
- Windows 客户端可在 Internet 选项 → 连接 → 局域网设置中填入相同地址和端口
验证连通性与策略生效
配置完成后分三步确认是否真正可用:
- 检查 Apache 是否监听:
ss -tlnp | grep :3128,应看到httpd或apache2进程 - 检查防火墙是否放行:
firewall-cmd --list-ports和--list-rich-rules应含对应条目 - 从授权网段机器执行:
curl -x http://10.20.1.5:3128 https://httpbin.org/ip,返回真实出口 IP 即成功;若从非授权 IP 执行,应直接超时或拒绝连接










