Portweiterleitung für eine kürzere URL

Standardmäßig wird bei HTTPS davon ausgegangen, dass der Port 443 ist. Das bedeutet, dass https://looker.yourdomain.com automatisch so behandelt wird, als hätte der Nutzer https://looker.yourdomain.com:443 eingegeben. Wenn Sie jedoch den Standard-HTTPS-Port (443) verwenden, müssen Sie Looker als Root ausführen. Das wird nicht unterstützt und ist nicht empfehlenswert.

Eine Möglichkeit besteht darin, dass Nutzer beim Zugriff auf Looker eine Portnummer als Teil der URL angeben. Wenn Sie beispielsweise den Port 9999 verwenden, geben Sie https://looker.yourdomain.com:9999 ein.

Bei von Kunden gehosteten Instanzen empfehlen wir aus Gründen der Nutzerfreundlichkeit, einen anderen Standardport einzurichten, damit Nutzer https://looker.yourdomain.com eingeben und trotzdem den richtigen Port erreichen können. Es gibt mehrere Möglichkeiten, einen Standardport für Looker einzurichten oder Traffic an einen anderen Port weiterzuleiten:

Es ist besser, Pakete direkt an Looker weiterzuleiten, anstatt sie indirekt (über einen Webproxy) weiterzuleiten. Looker bietet nämlich die Möglichkeit, eine Datenbankabfrage zu beenden, wenn erkannt wird, dass der Browser eine Anfrage abgebrochen hat.

iptables auf dem Looker-Host

Mit iptables kann über einen anderen Port auf Looker zugegriffen werden. Im folgenden Script wird Traffic von Port 443 an Port 9999 weitergeleitet. Sie wurde für Ubuntu Linux geschrieben und muss möglicherweise angepasst werden, wenn Sie eine andere Linux-Distribution verwenden.

  1. Erstellen Sie die Scriptdatei:

    /etc/network/if-up.d/looker-https-forward
    
  2. Fügen Sie der Datei folgenden Inhalt hinzu:

    #!/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. Machen Sie die Datei ausführbar:

    sudo chmod 755 /etc/network/if-up.d/looker-https-forward
    
  4. Führen Sie das Script aus, das beim nächsten System- oder Netzwerkneustart automatisch ausgeführt wird:

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

xinetd auf dem Looker-Host

Eine weitere Möglichkeit ist die Verwendung von xinetd.

  1. Achten Sie darauf, dass xinetd eingehenden Traffic von allen gewünschten Adressen zulässt. Fügen Sie im Standardabschnitt von /etc/xinetd.conf Folgendes hinzu:

    {
    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. Erstellen Sie eine Datei mit dem Namen /etc/xinetd.d/lookerhttps.

  3. Fügen Sie der Datei folgenden Inhalt hinzu:

    # 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
    }
    

Reverse-Proxy-Server

Es ist möglich, Reverse-Proxys mit Looker zu verwenden. Wir empfehlen Nginx als Reverse-Proxy-Server. Es ist der einzige Reverse-Proxy, den wir testen und vollständig unterstützen. Andere Optionen sind aber nicht unbedingt verboten. Eine Beispiel-Nginx-Konfiguration finden Sie auf der Dokumentationsseite Beispiel-Nginx-Konfiguration.

Der Apache-Reverse-Proxy enthält einen Fehler, der verhindert, dass Looker Verbindungen ordnungsgemäß schließen kann. Das bedeutet, dass jede Datenbankabfrage bis zum Ende ausgeführt wird, auch wenn ein Nutzer sie abbricht. Aus diesem Grund sollten Sie den Apache-Reverse-Proxy nicht mit Looker verwenden.

Load-Balancer

Es gibt viele Load Balancer-Lösungen. Der Load Balancer wird grob so konfiguriert, dass er Port 443 überwacht und alle Anfragen an Looker auf Port 9999 weiterleitet. In diesem Fall werden Ihre SSL-Serverzertifikate auf dem Load Balancer installiert.

Nächste Schritte

Nachdem Sie die Portweiterleitung konfiguriert haben, können Sie dem Looker-Support Zugriff auf Ihre Bereitstellung gewähren.