Proxy reverso Nginx sem terminação SSL

3

Estou tentando configurar os Serviços Web do Microsoft Remote Desktop em um servidor Windows 2k12. Isso é totalmente funcional, no entanto, eu gostaria (preciso) colocar um proxy reverso (Nginx) na frente dele.

Eu só tenho 1 ip externo (fixo) e estou hospedando vários sites por trás dele, nem todos na mesma VM. Consegui fazer com que o Nginx funcionasse como um proxy reverso para o tráfego HTTP como HTTPS, com vhosts. No entanto, para os serviços de área de trabalho remota, o descarregamento de SSL me causa problemas ao iniciar o aplicativo. Então, eu gostaria de passar o tráfego através do servidor Nginx, sem o descarregamento de SSL e ter o servidor Windows fazendo todo o material SSL. Parece que, mesmo sem entrar "ssl on"; O Nginx coloca um certificado de outro vhost na seção do servidor da Web RD. Eu não tenho algo como um bloco " padrão " em qualquer lugar da minha configuração.

Aqui está um pequeno esboço de como é a configuração:

                                                           -- |server 1 HTTP|
|internet user| -- |Nginx Rev Proxy listening on port 443| -- |windows server|
                                                           -- |server 2 HTTP|

Abaixo está o arquivo de configuração que eu tenho (para a Web RD):

server {
        listen 443;
        server_name host.domain.com;

        access_log /var/log/nginx/host.domain.com.access.log;

        location / {
                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-Forwarded-Proto $scheme;
                proxy_pass              https://172.29.0.249;
        }

}

Já tentei que o servidor Windows aceitasse HTTP simples, mas isso mais uma vez gera problemas com os aplicativos de área de trabalho remota. Eu posso ir tão longe quanto entrar e parar. Eu já mencionei isso antes, mas quando eu encaminhar a porta 443 no meu firewall para o servidor Windows, as conexões de área de trabalho remota funcionam sem problemas, então esse não parece ser o problema.

Qualquer ajuda aqui seria muito apreciada. Eu sou novo no Nginx e sua configuração (sempre usei o apache no passado).

    
por Goez 29.12.2014 / 19:05

2 respostas

0

O nginx não pode passar pelo SSL sem terminá-lo. Use o haproxy na frente do nginx, que é capaz disso (pelo menos na versão 1.5), para fazer proxy do tráfego da Web do RD para o seu servidor de terminal, e todo o restante para o nginx.

    
por 29.12.2014 / 19:24
4

hoje, nginx Suporta ssl pass thru: link

    
por 05.07.2016 / 16:47