nginx开启ssl_preread并透传真实客户端ip
时间: 2023-08-11 12:06:25 浏览: 379
Nginx开启一个参数就能让你的WEB性能提升3倍的方法
开启`ssl_preread`并透传真实客户端IP需要进行如下配置:
1. 在Nginx配置文件中加入`ssl_preread`相关配置:
```nginx
stream {
map $ssl_preread_protocol $upstream {
"TLSv1.3" backend_tls13;
"TLSv1.2" backend_tls12;
"TLSv1.1" backend_tls11;
"TLSv1.0" backend_tls10;
default backend_tls10;
}
upstream backend_tls13 {
server 192.168.1.1:443;
}
upstream backend_tls12 {
server 192.168.1.2:443;
}
upstream backend_tls11 {
server 192.168.1.3:443;
}
upstream backend_tls10 {
server 192.168.1.4:443;
}
server {
listen 443;
proxy_pass $upstream;
ssl_preread on;
proxy_protocol on;
}
}
```
2. 在后端服务器中安装支持`proxy_protocol`的软件,如HAProxy等。
3. 配置后端服务器接收`proxy_protocol`协议,并解析出客户端的真实IP地址。
这样配置之后,Nginx会使用`ssl_preread`预读取客户端的TLS版本信息,并将请求转发到相应的后端服务器上。同时,Nginx也会通过`proxy_protocol`透传客户端的真实IP地址给后端服务器。
阅读全文