Por predefinição, o HTTPS assume que a porta é 443. Isto significa que https://looker.yourdomain.com
seria processado automaticamente como se o utilizador tivesse escrito https://looker.yourdomain.com:443
. No entanto, a utilização da porta HTTPS padrão (443) exigiria a execução do Looker como raiz, o que não é suportado nem recomendado.
Uma opção é os utilizadores especificarem um número de porta como parte do URL quando acedem ao Looker. Por exemplo, se estiver a usar a porta 9999, o utilizador escreve: https://looker.yourdomain.com:9999
.
Em instâncias alojadas pelo cliente, para a conveniência dos seus utilizadores, recomendamos que configure uma porta predefinida diferente para que possam escrever https://looker.yourdomain.com
e acederem à porta correta. Pode configurar uma porta predefinida para o Looker ou redirecionar o tráfego para uma porta diferente através de vários métodos:
- Use a opção de arranque do
--port=<i>
Looker para especificar a porta pretendida, como--port=9999
. Esta opção é abordada na página de documentação Opções de arranque do Looker. - Crie um script que use
iptables
. - Use
xinetd
. - Use um servidor proxy inverso do Nginx.
- Use um balanceador de carga.
Tenha em atenção que é melhor encaminhar pacotes diretamente para o Looker, em vez de indiretamente (através de um proxy Web), porque o Looker tem funcionalidade para parar uma consulta de base de dados quando deteta que o navegador cancelou um pedido.
iptables no anfitrião do Looker
Pode aceder ao Looker a partir de uma porta diferente através do iptables. O script seguinte encaminha o tráfego da porta 443 para a porta 9999. Foi escrito para o Ubuntu Linux e pode ter de ser modificado se estiver a executar uma distribuição Linux diferente.
Crie o ficheiro de script:
/etc/network/if-up.d/looker-https-forward
Adicione estes conteúdos ao ficheiro:
#!/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
Torne-o executável:
sudo chmod 755 /etc/network/if-up.d/looker-https-forward
Execute o script, que é executado automaticamente no próximo reinício do sistema ou da rede:
sudo /etc/network/if-up.d/looker-https-forward
xinetd no anfitrião do Looker
Outra técnica envolve a utilização do xinetd.
Certifique-se de que o xinetd permite o tráfego recebido de todos os endereços pretendidos. Na secção predefinida 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 }
Crie um ficheiro com o nome:
/etc/xinetd.d/lookerhttps
Adicione estes conteúdos ao ficheiro:
# 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 reverse
É possível usar proxies inversos com o Looker. O servidor proxy inverso sugerido é o Nginx. É o único proxy inverso que testamos e suportamos totalmente, embora não proibamos necessariamente outras opções. Pode encontrar uma configuração de exemplo do Nginx na página de documentação Configuração de exemplo do Nginx.
Tenha em atenção que o proxy inverso do Apache tem um erro que impede o Looker de fechar corretamente as ligações. Isto significa que todas as consultas da base de dados são executadas até à conclusão, mesmo que um utilizador as cancele. Por este motivo, deve evitar usar o proxy inverso do Apache com o Looker.
Balanceador de carga
Existem muitas soluções de balanceadores de carga disponíveis. A um nível elevado, o equilibrador de carga seria configurado para ouvir na porta 443 e encaminhar todos os pedidos para o Looker na porta 9999. Neste caso, os seus certificados do servidor SSL seriam instalados no equilibrador de carga.
Passos seguintes
Depois de configurar o encaminhamento de portas, pode permitir que o apoio técnico do Looker aceda à sua implementação.