Für die höchste Verschlüsselung zwischen Looker und Ihrer Datenbank können Sie einen SSH-Tunnel zu einem Tunnelserver oder zum Datenbankserver selbst erstellen.
SSH-Tunnel sind nicht für Datenbanken verfügbar, die keine einzelne Hostadresse haben, z. B. Google BigQuery- und Amazon Athena-Datenbanken. BigQuery- und Athena-Nutzer sollten direkt mit der Datenbankkonfiguration fortfahren.
Schritt 1: Host auswählen, auf dem der Tunnel beendet werden soll
Der erste Schritt zum Einrichten des Zugriffs über den SSH-Tunnel für Ihre Datenbank besteht in der Auswahl des Hosts, auf dem der Tunnel beendet wird. Der Tunnel kann entweder auf dem Datenbankhost selbst oder auf einem separaten Host (dem Tunnelserver) beendet werden.
Datenbankserver verwenden
Wenn Sie keinen Tunnelserver verwenden, stellt Looker über einen SSH-Tunnel über das öffentliche Internet eine direkte Verbindung zum Datenbankserver her. Der Abschluss in der Datenbank hat den Vorteil der Einfachheit. Da ein Host weniger beteiligt ist, fallen keine zusätzlichen Maschinen und damit verbundene Kosten an. Diese Option ist möglicherweise nicht möglich, wenn sich Ihr Datenbankserver in einem geschützten Netzwerk befindet, das keinen direkten Zugriff über das Internet hat.
Tunnelserver verwenden
Wenn Sie einen Tunnelserver verwenden, stellt Looker über einen separaten Tunnelserver in einem eingeschränkten Netzwerk eine Verbindung zu Ihrem Datenbankserver her. Die Beendigung des Tunnels auf einem separaten Server hat den Vorteil, dass Ihr Datenbankserver über das Internet nicht erreichbar ist. Wenn der Tunnelserver manipuliert wurde, muss er nur einen Schritt vom Datenbankserver entfernt werden. Wir empfehlen Ihnen, jegliche unwichtige Software und Nutzer vom Tunnelserver zu entfernen und sie mit Tools wie einem IDS genau zu überwachen.
Der Tunnelserver kann ein beliebiger Unix/Linux-Host mit folgenden Funktionen sein:
- Zugriff über das Internet per SSH möglich
- Kann auf die Datenbank zugreifen
Schritt 2: Zulassungsliste für IP-Adressen erstellen
Im zweiten Schritt müssen Sie zulassen, dass der Netzwerkverkehr den Tunnelserver oder Datenbankhost über SSH erreicht, das sich in der Regel über den TCP-Port 22 befindet.
Lassen Sie für die Region, in der Ihre Looker-Instanz gehostet wird, Netzwerkverkehr von jeder der hier aufgeführten IP-Adressen zu. Standardmäßig sind dies die Vereinigten Staaten.
In Google Cloud gehostete Instanzen
Von Looker gehostete Instanzen werden standardmäßig in Google Cloud gehostet. Bei in Google Cloud gehosteten Instanzen müssen Sie die IP-Adressen für Ihre Region auf die Zulassungsliste setzen.
Klicken Sie hier, um eine vollständige Liste der IP-Adressen für Instanzen aufzurufen, die in Google Cloud gehostet werden.
Moncks Corner, South Carolina, USA (us-east1
)
34.23.50.137
35.211.210.64
35.211.95.55
35.185.59.100
34.111.239.102
35.237.174.17
34.73.200.235
35.237.168.216
34.75.58.123
35.196.30.110
35.243.254.166
Ashburn, Northern Virginia, USA (us-east4
)
34.150.212.9
34.150.174.54
34.85.200.217
35.221.30.177
35.245.82.73
34.86.214.226
35.245.177.112
35.245.211.109
34.86.118.239
34.86.136.190
35.194.74.185
34.86.52.188
35.221.3.163
35.221.62.218
34.86.34.135
35.236.240.168
35.199.50.237
34.145.252.255
35.245.141.42
35.245.20.16
34.145.147.146
34.145.139.22
34.150.217.20
35.199.35.176
35.245.72.35
34.85.187.175
35.236.220.225
34.150.180.94
4.85.195.168
34.86.126.124
34.145.200.8
34.85.142.95
34.150.217.96
35.245.140.36
34.86.124.234
35.194.69.239
35.230.163.26
35.186.187.48
34.86.154.134
34.85.128.250
35.245.212.212
35.245.74.75
34.86.246.187
34.86.241.216
34.85.222.9
34.86.171.127
34.145.204.106
34.150.252.169
35.245.9.213
Council Bluffs, Iowa, USA (us-central1
)
104.154.21.231
35.192.130.126
35.184.100.51
34.70.128.74
34.69.207.176
35.239.118.197
34.172.2.227
34.71.191.210
34.173.109.50
35.225.65.3
34.170.192.190
34.27.97.67
35.184.118.155
34.27.58.160
34.136.4.153
35.184.8.255
35.222.218.140
34.123.109.49
34.67.240.23
104.197.72.40
34.72.128.33
35.226.158.66
34.134.4.91
35.226.210.85
The Dalles, Oregon, USA (us-west1
)
34.127.41.199
34.82.57.225
35.197.66.244
35.197.64.57
34.82.193.215
35.247.117.0
35.233.222.226
34.82.120.25
35.247.5.99
35.247.61.151
35.233.249.160
35.233.172.23
35.247.55.33
34.83.138.105
35.203.184.48
34.83.94.151
34.145.90.83
34.127.116.85
35.197.35.188
34.105.127.122
35.233.191.84
34.145.93.130
35.233.178.166
34.105.18.120
104.199.118.14
35.185.228.216
34.145.16.151
34.82.91.75
34.82.142.245
34.105.35.19
34.83.231.96
34.168.230.47
35.247.46.214
34.105.44.25
35.185.196.75
34.145.39.113
34.168.121.44
Los Angeles, Kalifornien, USA (us-west2
)
35.236.22.77
35.235.83.177
35.236.51.71
Montréal, Québec, Kanada (northamerica-northeast1
)
35.234.253.103
35.203.46.255
34.152.60.210
35.203.0.6
35.234.252.150
35.203.96.235
34.152.34.229
34.118.131.36
35.203.113.51
London, England, Vereinigtes Königreich (europe-west2
)
34.105.198.151
35.246.117.58
34.142.123.96
34.89.124.139
34.89.127.51
34.105.209.44
35.242.138.133
35.197.222.220
35.189.111.173
34.105.219.154
34.105.181.133
34.89.25.5
35.246.10.206
34.105.131.133
34.142.77.18
34.89.54.84
35.189.94.105
35.246.36.67
35.234.140.77
35.242.174.158
35.197.199.20
34.89.3.120
34.105.156.107
35.246.79.72
34.105.139.38
34.105.147.157
34.105.195.129
34.105.194.210
34.142.79.123
34.142.55.58
34.142.85.249
34.105.148.38
35.246.100.66
35.246.3.165
34.105.176.209
35.189.95.167
34.89.55.2
Frankfurt, Deutschland (europe-west3
)
35.242.243.255
34.159.247.211
35.198.128.126
34.159.10.59
34.159.72.77
34.159.224.187
34.89.159.138
34.159.253.103
34.159.244.43
35.246.162.187
34.89.141.190
34.159.65.106
34.159.197.31
34.89.194.134
34.159.252.155
34.141.65.216
34.159.124.62
35.246.130.213
34.89.206.21
34.89.185.201
34.159.171.46
35.246.217.228
35.242.236.115
34.159.148.253
Mumbai, Indien (asia-south1
)
35.200.234.34
34.100.205.37
34.93.225.12
34.93.221.137
35.244.24.198
35.244.52.179
Eemshaven, Niederlande (europe-west4
)
35.204.118.28
35.204.216.7
34.90.52.191
35.204.176.29
34.90.199.95
34.90.145.226
34.141.162.7
35.204.56.189
35.204.11.229
34.34.66.131
34.32.195.89
34.32.173.138
Bezirk Changhua, Taiwan (asia-east1
)
104.199.206.209
34.80.173.212
35.185.137.114
Tokio, Japan (asia-northeast1
)
34.85.3.198
34.146.68.203
34.84.4.218
Jurong West, Singapur (asia-southeast1
)
34.143.210.116
34.143.132.206
34.87.134.202
34.101.158.88
34.101.157.238
34.101.184.52
Jakarta, Indonesien (asia-southeast2
)
34.101.158.88
34.101.157.238
34.101.184.52
Sydney, Australien (australia-southeast1
)
34.87.195.36
34.116.85.140
34.151.78.48
35.189.13.29
35.189.9.81
35.244.68.217
Osasco (São Paulo), Brasilien (southamerica-east1
)
34.151.199.201
35.199.122.19
34.95.180.122
34.95.168.38
34.151.235.241
34.95.181.19
35.199.91.120
35.247.197.109
35.199.86.48
35.199.106.166
35.198.1.191
35.247.235.128
35.247.211.2
35.247.200.249
34.95.177.253
Auf Amazon Elastic Kubernetes Service (Amazon EKS) gehostete Instanzen
Bei auf Amazon EKS gehosteten Instanzen müssen Sie die IP-Adressen für Ihre Region auf die Allowlist setzen.Klicken Sie hier, um eine vollständige Liste der IP-Adressen für Instanzen zu sehen, die auf Amazon EKS gehostet werden
US East (N. Virginia) (us-east-1
)
18.210.137.130
54.204.171.253
50.17.192.87
54.92.246.223
75.101.147.97
18.235.225.163
52.55.239.166
52.86.109.68
54.159.176.199
3.230.52.220
54.211.95.150
52.55.10.236
184.73.10.85
52.203.92.114
52.3.47.189
52.7.255.54
54.196.92.5
52.204.125.244
34.200.64.243
18.206.32.254
54.157.231.76
54.162.175.244
54.80.5.17
35.168.173.238
52.44.187.22
18.213.96.40
23.22.133.206
34.239.90.169
34.236.92.87
3.220.81.241
54.197.142.238
34.200.121.56
3.83.72.41
54.159.42.144
3.229.81.101
34.225.255.220
54.162.193.165
34.235.77.117
3.233.169.63
54.87.86.113
18.208.86.29
52.44.90.201
USA, Osten (Ohio) (us-east-2
)
3.135.171.29
18.188.208.231
3.143.85.223
US-West (Oregon) (us-west-2
)
44.237.129.32
54.184.191.250
35.81.99.30
Kanada (Mitte) (ca-central-1
)
52.60.157.61
35.182.169.25
52.60.59.128
35.182.207.128
15.222.172.64
3.97.27.51
35.183.191.133
15.222.86.123
52.60.52.14
Europa (Irland) (eu-west-1
)
54.74.243.246
54.195.216.95
54.170.208.67
52.49.220.103
52.31.69.117
34.243.112.76
52.210.85.110
52.30.198.163
34.249.159.112
52.19.248.176
54.220.245.171
54.247.22.227
176.34.116.197
54.155.205.159
52.16.81.139
54.75.200.188
34.248.52.4
54.228.110.32
34.248.104.98
54.216.117.225
52.50.172.40
Europa (Frankfurt) (eu-central-1
)
18.157.231.108
18.157.207.33
18.157.64.198
18.198.116.133
3.121.148.178
3.126.54.154
Asiatisch-pazifischer Raum (Tokio) (ap-northeast-1
)
54.250.91.57
13.112.30.110
54.92.76.241
52.68.245.25
3.114.138.0
54.249.39.36
Asiatisch-pazifischer Raum (Sydney) (ap-southeast-2
)
13.238.132.174
3.105.238.71
3.105.113.36
Südamerika (São Paulo) (sa-east-1
)
54.232.58.181
54.232.58.98
177.71.134.208
Auf Microsoft Azure gehostete Instanzen
Bei auf Azure gehosteten Instanzen müssen Sie die IP-Adressen für Ihre Region auf die Allowlist setzen.Hier klicken, um eine vollständige Liste der IP-Adressen für Instanzen zu sehen, die auf Microsoft Azure gehostet werden
Virginia, USA (us-east2
)
52.147.190.201
Älteres Hosting
Verwenden Sie diese IP-Adressen für alle auf AWS gehosteten Instanzen, die vor dem 07.07.2020 erstellt wurden.Klicken Sie hier, um eine vollständige Liste der IP-Adressen für das bisherige Hosting aufzurufen.
USA (AWS-Standard)
54.208.10.167
54.209.116.191
52.1.5.228
52.1.157.156
54.83.113.5
Kanada
99.79.117.127
35.182.216.56
Asien
52.68.85.40
52.68.108.109
Irland
52.16.163.151
52.16.174.170
Deutschland
18.196.243.94
18.184.246.171
Australien
52.65.128.170
52.65.124.87
Südamerika
52.67.8.103
54.233.74.59
Schritt 3: SSH-Tunneling
Wenn der Tab SSH-Server aktiviert ist, folgen Sie der Anleitung auf dieser Seite, um die Informationen zur SSH-Serverkonfiguration in Looker hinzuzufügen.
Die Option SSH-Server ist verfügbar, wenn die Instanz in einer Kubernetes-Infrastruktur bereitgestellt wird, und nur dann, wenn die Fähigkeit aktiviert wurde, Ihrer Looker-Instanz Informationen zur SSH-Serverkonfiguration hinzuzufügen. Wenn diese Option in Ihrer Looker-Instanz nicht aktiviert ist und Sie sie aktivieren möchten, wenden Sie sich an einen Google Cloud-Vertriebsexperten oder stellen Sie eine Supportanfrage.
Wählen Sie in Looker im Bereich Admin auf der Seite Verbindungen den Tab SSH-Server aus.
Wählen Sie dann Server hinzufügen aus. In Looker wird die Seite SSH-Server hinzufügen angezeigt:
- Geben Sie einen Namen für die SSH-Serverkonfiguration ein.
- Wählen Sie Schlüssel herunterladen aus, um den öffentlichen Schlüssel als Textdatei herunterzuladen. Speichern Sie diese Datei, da Sie den öffentlichen Schlüssel später der Autorisierten-Schlüsseldatei Ihres SSH-Servers hinzufügen müssen.
- Geben Sie den Nutzernamen ein, den Looker für die Verbindung mit dem SSH-Server verwendet.
- Geben Sie die IP-Adresse oder den Hostnamen des SSH-Servers ein.
- Geben Sie die Portnummer ein, die für die Verbindung mit dem SSH-Server verwendet wird.
Schritt 4: Tunnelhost vorbereiten
Fügen Sie den öffentlichen Schlüssel zur Datei authorized_keys
hinzu.
Zum Authentifizieren der SSH-Tunnelsitzung benötigt Looker einen eindeutigen öffentlichen Schlüssel. Looker unterstützt keine Anmeldung mit einem Passwort. Wenn der Tab SSH-Server in Ihrer Instanz aktiviert ist, können Sie den öffentlichen Schlüssel in eine Textdatei herunterladen. Wählen Sie dazu beim Eingeben Ihrer SSH-Konfigurationsinformationen die Schaltfläche Schlüssel herunterladen aus. Wenn Sie Ihren SSH-Tunnel mithilfe eines Looker-Analysten konfigurieren, stellt Ihnen dieser einen eindeutigen öffentlichen Schlüssel zur Verfügung.
Sie müssen Ihren Host (entweder den Datenbank- oder Tunnelserver) vorbereiten. Dazu erstellen Sie einen looker
-Nutzer und fügen den öffentlichen Looker-Schlüssel in die Looker-Datei .ssh/authorized_keys
ein. So gehts:
Erstellen Sie in der Befehlszeile eine Gruppe mit dem Namen
looker
:sudo groupadd looker
Erstellen Sie den Nutzer
looker
und sein Basisverzeichnis:sudo useradd -m -g looker looker
Wechseln Sie zum Nutzer
looker
:sudo su - looker
Erstellen Sie das Verzeichnis
.ssh
:mkdir ~/.ssh
Legen Sie die Berechtigungen fest:
chmod 700 ~/.ssh
Wechseln Sie in das Verzeichnis
.ssh
:cd ~/.ssh
Erstellen Sie die Datei
authorized_keys
.touch authorized_keys
Berechtigungen festlegen:
chmod 600 authorized_keys
Fügen Sie der Datei authorized_keys
mit einem Texteditor den von Ihrem Looker-Analysten bereitgestellten SSH-Schlüssel hinzu. Der Schlüssel muss sich komplett in einer Zeile befinden. In einigen Fällen werden vom E-Mail-Client Zeilenumbrüche eingefügt, wenn Sie den Schlüssel aus der E-Mail abrufen. Wenn Sie sie nicht entfernen, kann der SSH-Tunnel nicht hergestellt werden.
Fügen Sie ssh-rsa
zu Ihrer Datei sshd_config
hinzu
In OpenSSH ist ssh-rsa standardmäßig deaktiviert. Das kann bei der Einrichtung eines SSH-Tunnels zu Fehlern führen. Fügen Sie dazu den ssh-rsa
der Liste der zulässigen Algorithmen Ihres Servers hinzu. So gehts:
- Bearbeiten Sie die Datei
sshd_config
. Diese findest du normalerweise unter~/etc/ssh/sshd_config
. Fügen Sie der Datei
sshd_config
Folgendes hinzu:HostKeyAlgorithms +ssh-rsa PubKeyAcceptedAlgorithms +ssh-rsa
Hinweise zur Tunnelsicherheit
Wenn ein SSH-Tunnel auf dem Datenbankserver beendet wird, erscheint die Verbindung von Looker als lokale Verbindung auf dem Datenbankserver. Daher unterbindet es die verbindungsbasierten Sicherheitsmechanismen, die in Datenbankplattformen wie MySQL integriert sind. Beispielsweise wird dem root-Nutzer in der Regel lokaler Zugriff ohne Passwort gewährt.
Standardmäßig lässt das Öffnen des SSH-Zugriffs auch die Weiterleitung aller Ports zu. So werden alle Firewalls zwischen Looker und dem Datenbankhost, der den SSH-Tunnel beendet, umgangen. Dieses Sicherheitsrisiko wird möglicherweise als nicht akzeptabel eingestuft. Diese Portweiterleitung und die Möglichkeit zur Anmeldung bei Ihrem Tunnelserver können durch eine ordnungsgemäße Konfiguration des .ssh/authorized_keys
-Eintrags für den öffentlichen Looker-Schlüssel gesteuert werden.
Der folgende Text könnte beispielsweise dem Looker-SSH-Schlüssel in Ihrer authorized_keys
-Datei vorangestellt werden. Dieser Text MUSS für Ihre Umgebung angepasst werden.
no-pty,no-X11-forwarding,permitopen="localhost:3306",permitopen="localhost:3307",
command="/bin/echo Login Not Permitted"
Beispiele und vollständige Informationen finden Sie in der Linux-Dokumentation zu man ssh
und man authorized_keys
.
Nächste Schritte
Wenn der Tab SSH-Server auf Ihrer Instanz aktiviert ist, kehren Sie zur Seite SSH-Server hinzufügen zurück und wählen Sie Fingerabdruck testen und anfordern aus, um die Verbindung zum SSH-Server zu prüfen. Looker zeigt einen Bildschirm mit der neuen SSH-Konfiguration und Optionen zum Herunterladen oder Anzeigen des öffentlichen Schlüssels und zum Anzeigen des eindeutigen Fingerabdrucks der SSH-Serverkonfiguration an.
Gehen Sie dann auf der Seite Verbindungseinstellungen Ihrer Datenbank so vor:
- Aktiviere die Ein/Aus-Schaltfläche SSH-Server und wähle deine SSH-Serverkonfiguration aus der Drop-down-Liste aus.
- Geben Sie in den Feldern Remote-Host und Port die IP-Adresse oder den Hostnamen und die Portnummer Ihrer Datenbank ein.
Bei Datenbankverbindungen über einen SSH-Tunnel kann kein Nutzerattribut auf die Felder Remote-Host und Port angewendet werden.
Wenn Sie Ihren SSH-Tunnel mit der Unterstützung eines Looker-Analysten konfigurieren, benachrichtigen Sie Ihren Looker-Analyst, dass Sie zum Testen des SSH-Tunnels bereit sind. Sobald der Tunnel eingerichtet ist, erhalten Sie die Portnummer für die Looker-Seite des SSH-Tunnels.
Gehen Sie dann auf der Seite Verbindungseinstellungen Ihrer Datenbank so vor:
- Geben Sie
localhost
in das Feld Remote Host ein. - Geben Sie im Feld Port die Portnummer für die Looker-Seite des SSH-Tunnels ein, die Ihnen von Ihrem Looker-Analysten mitgeteilt wurde.
Deaktivieren Sie auf der Seite Verbindungen der Datenbank die Option SSL-Zertifikat prüfen.
SSL-Zertifikate werden beim Einrichten eines SSH-Tunnels von Looker zu Ihrer Datenbank nicht unterstützt. Stattdessen bietet der SSH-Schlüssel, den Sie in Schritt 4 hinzugefügt haben, die Handshake-Sicherheit zwischen Looker und Ihrer Datenbank.