gpt4 book ai didi

ssl - 将 https 客户端的 header 转发到后端应用程序

转载 作者:太空宇宙 更新时间:2023-11-03 14:26:21 25 4
gpt4 key购买 nike

我正在使用 nginx 作为后端应用程序的反向代理。- 客户端使用 certificate-A.pem 连接到 nginx,nginx 使用与根 CA 链接的中间 CA 来验证客户端(一切正常)。

问题来了:- nginx 必须使用真实主机使用的相同 header (包含证书-A.pem)将请求转发到后端应用程序。转发到后端应用程序的数据包必须与 nginx 接收到的客户端数据包相同。

为什么?因为我有大量的客户端要管理(每个客户端都有由同一个中间 CA 颁发的不同证书),后端需要证书(用来做东西)但我想用 nginx 预先验证这个证书(真的最快)

我厌倦了不同的配置,但我不知道如何代理设置正确的 header

upstream proxy_server {
server 127.0.0.1:8443; <---my backend application
}

server {
listen 443 ssl;
listen [::]:443;

ssl_certificate /home/mender/Projects/utility-scripts/gwsw-root-gen/cert_tree/intermediate_CA/gwsw/x509-med_ca_gwsw.pem;

ssl_certificate_key /home/mender/Projects/utility-scripts/gwsw-root-gen/cert_tree/intermediate_CA/gwsw/x509-med_ca_gwsw-key.pem;

location / {
proxy_pass https://proxy_server;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Custom-Referrer $http_x_custom_referrer;
}
}

无法验证证书。

最佳答案

The packets forwarded to the backend application must be identical to the clients packets recived by nginx.

如果是这种情况,我相信您只需要在 stream 模式下使用 nginx 作为 TCP 代理。我不知道您是否能够在 nginx 端进行任何验证,但这完全取决于后端应用程序。

不可能(我不认为)让 nginx 设置 SSL 连接并且将加密数据传递到后端。

关于ssl - 将 https 客户端的 header 转发到后端应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56795550/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com