Ir para o conteúdo

Proxies Reversos

Visão Geral

Em alguns ambientes, o Vinyl pode ser implantado atrás de um proxy reverso. O proxy reverso pode mascarar detalhes sobre a conexão do cliente, incluindo o endereço IP de origem e se a conexão é segura ou não. Normalmente, os servidores proxy preservam as informações pertinentes em cabeçalhos HTTP personalizados. O padrão de fato para isso é X-Forwarded-For e cabeçalhos relacionados.

Quando configurado adequadamente, o Vinyl pode extrair detalhes sobre a conexão original de cabeçalhos HTTP personalizados. Isso requer a adição manual das configurações do aplicativo ao arquivo Web.config no diretório raiz do Vinyl. Como cada servidor proxy é diferente e os cabeçalhos HTTP personalizados podem ser forjados, essas configurações não são definidas por padrão.

Configurações

Nome Descrição Exemplo
ForwardedClientIpHeader Endereço IP do cliente. X-Encaminhado-Para
ForwardedSchemeHeader Esquema de conexão do cliente (por exemplo, HTTP ou HTTPS). X-Forwarded-Proto
ForwardedHostHeader hospedar de conexão do cliente e número de porta opcional Host encaminhado X
ForwardedPortHeader Número da porta de ligação do cliente (por exemplo, 80 ou 443) Porta X-Forwarded

Exemplo de Configuração

{
  "ReverseProxy": {
    "ForwardedClientIpHeader": "X-Forwarded-For",
    "ForwardedSchemeHeader": "X-Forwarded-Proto",
    "ForwardedHostHeader": "X-Forwarded-Host",
    "ForwardedPortHeader": "X-Forwarded-Port"
  }
}

Amazon Web Services

Em um ambiente do Amazon Elastic Beanstalk, os Elastic Load Balancers (ELBs) funcionam como proxies reversos, encerrando conexões HTTPS. Os ELBs apoiam o X-Forwarded-* cabeçalhos. Quando implantado em um ambiente do Elastic Beanstalk, o Vinyl será configurado automaticamente usando as propriedades do ambiente do Elastic Beanstalk.