发布于 11 天前
发布于 11 天前
Yosef
更新于 11 天前
0
0
2025/04/15 10:41:34 [error] 446#0: *9480 broken header: "k " while reading PROXY protocol, client: 240e:362:****, server: [::]:8008
雷池 - 六蛙
更新于 11 天前
0
0
这个配置也会应用到 统一认证服务
Yosef
更新于 10 天前
0
0
根据我的测试,启用的统一认证的服务并没有支持proxy_protocol。
我配置的统一认证是:https://auth.example.com:8008
我发现,只有在本地,通过局域网或ipv6公网地址,直接访问8008端口,是可以成功打开统一认证中心的网页的。
通过域名访问会经过FRP的反代,会被加上proxy_protocol,此时无法访问成功。
尝试在“防护应用”中增加应用来反向代理8008端口,雷池WAF会提示上游不可用。
雷池 - 六蛙
更新于 10 天前
看一下 统一认证站点 的 nginx 配置呢,统一认证的站点配置也在安装目录/resources/nginx/sites-enabled
下面
本地测试了一下全局开启了 proxy_protocol 之后对应的统一认证站点也会配置上的
Yosef
更新于 10 天前
0
0
感谢支持,已经解决了。
查了下统一认证确实开启了proxy_protocol,并且监听的是设置的端口 8008,身份验证时访问的是:https://auth.example.com:8008,可以看到统一认证要求FRP配置时,本地端口和远程端口是相同的才行。
而我的FRP配置的规则是设置了https的代理,举例是:将 9000 端口监听https流量,然后转发到本地的 443 端口,因此通过FRP访问 https://auth.example.com:8008 是访问不通的。
因此我新建了一条tcp隧道,来转发统一认证的流量。
1[[proxies]]
2name = "SSO-Auth"
3type = "tcp"
4localIP = "127.0.0.1"
5localPort = 8008
6remotePort = 8008
7transport.proxyProtocolVersion = "v2"
统一认证中心配置为:https://auth.example.com:8008