Encaminhamento de portas para um URL mais limpo

Por padrão, o HTTPS considera que a porta será 443. Isso significa que https://looker.yourdomain.com seria processado automaticamente como se o usuário tivesse digitado https://looker.yourdomain.com:443. No entanto, usar a porta HTTPS padrão (443) exigiria a execução do Looker como raiz, que não é compatível e não é recomendada.

Uma opção é pedir para os usuários especificarem um número de porta como parte do URL ao acessar o Looker. Por exemplo, se você estiver usando a porta 9999, digite https://looker.yourdomain.com:9999.

Para facilitar a vida dos seus usuários, recomendamos que você configure uma porta padrão diferente para que eles digitem https://looker.yourdomain.com e acessem a porta correta. É possível configurar uma porta padrão para o Looker ou redirecionar o tráfego para uma porta diferente usando vários métodos:

É melhor encaminhar pacotes diretamente ao Looker em vez de indiretamente (por meio de um proxy da Web), porque o Looker tem a funcionalidade de interromper uma consulta do banco de dados quando ele detecta que o navegador cancelou uma solicitação.

JDK no host do Looker

O Looker pode ser acessado em uma porta diferente usando o ~/. O script a seguir encaminha o tráfego da porta 443 para 9999. Ele foi escrito para o Ubuntu Linux e talvez precise ser modificado se você estiver executando uma distribuição Linux diferente.

  1. Crie o arquivo de script:

    /etc/network/if-up.d/looker-https-forward
    
  2. Adicione o conteúdo abaixo ao arquivo:

    #!/bin/sh
    # Forward HTTPS traffic to the Looker app
    iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 443 -j REDIRECT --to-port 9999
    
  3. Torne-o executável:

    sudo chmod 755 /etc/network/if-up.d/looker-https-forward
    
  4. Execute o script, que será executado automaticamente na próxima reinicialização do sistema ou da rede:

    sudo /etc/network/if-up.d/looker-https-forward
    

xinetd no host do Looker

Outra técnica envolve o uso do xinetd.

  1. Verifique se o xinetd permite o tráfego de entrada de todos os endereços desejados. Na seção padrão de /etc/xinetd.conf, adicione:

    {
    only_from = 0.0.0.0
    # or replace 0.0.0.0 with an IP range
    # (i.e., 128.0.0.0/16) if desired
    }
    
  2. Crie um arquivo chamado /etc/xinetd.d/lookerhttps

  3. Adicione o conteúdo abaixo ao arquivo:

    # default: on
    # description: Redirect HTTPS/443 requests to
    # Looker default port 9999
    service https
    {
    disable = no
    id = lookerhttps
    socket_type = stream
    protocol = tcp
    user = root
    wait = no
    redirect = 127.0.0.1 9999
    }
    

Servidores proxy reversos

É possível usar proxies reversos com o Looker. O servidor de proxy reverso sugerido é o Nginx. É o único proxy reverso que testamos e suporta totalmente, embora não necessariamente proibimos outras opções. Veja uma amostra de configuração do Nginx na página de documentação Exemplo de configuração do Nginx.

O proxy reverso do Apache tem um bug que impede o Looker de fechar corretamente as conexões. Isso significa que todas as consultas ao banco de dados serão executadas até serem concluídas, mesmo que sejam canceladas pelo usuário. Por isso, evite usar o proxy reverso do Apache com o Looker.

Balanceador de carga

Há muitas soluções de balanceadores de carga disponíveis. De modo geral, o balanceador de carga seria configurado para detectar na porta 443 e encaminhar todas as solicitações ao Looker na porta 9999. Nesse caso, os certificados do servidor SSL seriam instalados no balanceador de carga.

Próximas etapas

Depois de configurar o encaminhamento de portas, você permitirá que o suporte do Looker acesse sua implantação.