nginx HAproxy -如何从公共IP通信到私有网络

kzipqqlq  于 5个月前  发布在  Nginx
关注(0)|答案(2)|浏览(38)

我有一个私人的ip在我的网络上,这是一个ipmi服务器。我已经安装了另一个服务器(Centos 7),并分配了一个公共的ip作为代理,以便能够从外部网络达到ipmi服务器。我试图这样做的nginx和haproxy,但有一些错误的配置。有人可以帮助我吗?

Here is my nginx config:

#cat /etc/nginx/conf.d/proxy.conf 
upstream ipmi_backend {
    # the ipmi server
    server 10.150.0.34:443;
    keepalive 64;
}
server {
    listen 8070;
    server_name ipmi.server.it;
    location / {

#        add_header X-Frame-Options SAMEORIGIN;
        add_header X-Content-Type-Options "";
        proxy_set_header X-Content-Type-Options "";
        proxy_set_header X-Forwarded-Host $host;
        proxy_set_header X-Forwarded-Server $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass https://ipmi_backend/;
        proxy_http_version 1.1;
        proxy_pass_request_headers on;
        proxy_set_header Connection "keep-alive";
        proxy_store off;
    proxy_set_header Host "ipmi.server.it:443";

}

========================================================================

Here my haproxy.cfg:

#cat haproxy.cfg
global
    log         127.0.0.1 local2
    pidfile     /var/run/haproxy.pid
    maxconn     4000
    #stats socket /run/haproxy/admin.sock user haproxy group haproxy mode 660 level admin
    # turn on stats unix socket
    stats socket /var/lib/haproxy/stats

defaults
    mode                    http
    log             global
    option          http_proxy
    timeout connect         50s
    timeout client          50s
    timeout server          50s

frontend  http-in
    bind localhost:8071
    mode http
    default_backend servers

backend servers
    server server1  10.150.0.34:443 check

字符串
使用nginx的错误我可以到达登录页面,但在证书后的页面说:您的会话已超时。您需要打开一个新的会话。使用haproxy的错误信息是:此站点无法提供安全连接。
谢谢

kuuvgm7e

kuuvgm7e1#

如果您使用的是SuperMicro的IPMI,则“您的会话已超时”错误可能是由于SSL重定向。您可以在配置>端口中更改它:


的数据

omtl5h9j

omtl5h9j2#

不确定它是否也适用于您的情况,但对我来说,它有助于取消反向代理上的Authorization HTTP标头。任何前端身份验证 * 不得 * 传递给SuperMicro IPMI,否则它似乎会混淆IPMI固件。

相关问题