如要在 Looker 與資料庫之間建立最強的加密連線,您可以建立 SSH 通道,連線至通道伺服器或資料庫伺服器本身。
步驟 1:選擇要終止通道的主機
如要為資料庫設定 SSH 通道存取權,首先要選擇用來終止通道的主機。通道可以在資料庫主機本身或獨立主機 (通道伺服器) 上終止。
使用資料庫伺服器
如果不使用通道伺服器,Looker 會透過公用網際網路上的 SSH 通道,直接連線至資料庫伺服器。在資料庫中終止作業的優點是作業簡單,由於減少一個主機,因此不會有額外的機器和相關成本。如果資料庫伺服器位於受保護的網路,無法直接從網際網路存取,這個選項可能不適用。
使用通道伺服器
使用通道伺服器時,Looker 會透過受限網路上的獨立通道伺服器連線至資料庫伺服器。在獨立伺服器上終止通道的優點是,資料庫伺服器無法從網際網路存取。如果通道伺服器遭到入侵,與資料庫伺服器之間只隔了一步。建議您從通道伺服器移除所有非必要軟體和使用者,並使用 IDS 等工具密切監控。
通道伺服器可以是任何 Unix 或 Linux 主機,只要符合下列條件:
- 可透過 SSH 從網際網路存取
- 可存取資料庫
步驟 2:建立 IP 許可清單
第二步是允許網路流量透過 SSH 連線至通道伺服器或資料庫主機,這通常是透過 TCP 通訊埠 22。
允許從這裡列出的每個 IP 位址傳送網路流量,這些 IP 位址適用於 Looker 執行個體所在的區域。預設為美國。
執行個體代管於 Google Cloud
託管於 Looker 的執行個體預設會託管於 Google Cloud 。如為託管於 Google Cloud的執行個體,請將符合區域的 IP 位址加入許可清單。
如要查看在 Google Cloud上代管的執行個體完整 IP 位址清單,請按一下這裡
美國南卡羅來納州蒙克斯科納 (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
美國北維吉尼亞州阿什本 (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
美國愛荷華州康索布魯夫 (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
美國奧勒岡州達勒斯 (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
美國加州洛杉磯 (us-west2
)
35.236.22.77
35.235.83.177
35.236.51.71
加拿大魁北克省蒙特婁 (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
英國倫敦 (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
德國法蘭克福 (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
印度孟買 (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
荷蘭埃姆斯港 (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
臺灣彰化縣 (asia-east1
)
104.199.206.209
34.80.173.212
35.185.137.114
日本東京 (asia-northeast1
)
34.85.3.198
34.146.68.203
34.84.4.218
新加坡裕廊西 (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
印尼雅加達 (asia-southeast2
)
34.101.158.88
34.101.157.238
34.101.184.52
澳洲雪梨 (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
巴西奧薩斯庫 (聖保羅) (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
Amazon Elastic Kubernetes Service (Amazon EKS) 上代管的執行個體
如果執行個體是託管在 Amazon EKS 上,請將符合您所在區域的 IP 位址加入許可清單。如要查看在 Amazon EKS 上代管的執行個體完整 IP 位址清單,請按一下這裡
美國東部 (北維吉尼亞州) (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
美國東部 (俄亥俄州) (us-east-2
)
3.135.171.29
18.188.208.231
3.143.85.223
美國西部 (奧勒岡州) (us-west-2
)
44.237.129.32
54.184.191.250
35.81.99.30
加拿大 (中部) (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
歐洲 (愛爾蘭) (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
歐洲 (法蘭克福) (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
亞太地區 (東京) (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
亞太地區 (雪梨) (ap-southeast-2
)
13.238.132.174
3.105.238.71
3.105.113.36
南美洲 (聖保羅) (sa-east-1
)
54.232.58.181
54.232.58.98
177.71.134.208
Microsoft Azure 託管的執行個體
如果執行個體是託管在 Azure 上,請將符合您所在區域的 IP 位址加入許可清單。舊版主機代管
請為 2020 年 7 月 7 日前建立的 AWS 代管執行個體使用這些 IP 位址。按一下這裡,查看舊版主機的完整 IP 位址清單
美國 (AWS 預設值)
54.208.10.167
54.209.116.191
52.1.5.228
52.1.157.156
54.83.113.5
加拿大
99.79.117.127
35.182.216.56
亞洲
52.68.85.40
52.68.108.109
愛爾蘭
52.16.163.151
52.16.174.170
德國
18.196.243.94
18.184.246.171
澳洲
52.65.128.170
52.65.124.87
南美洲
52.67.8.103
54.233.74.59
步驟 3:SSH 通道
如果已啟用「SSH 伺服器」分頁,請按照本頁的操作說明,將 SSH 伺服器設定資訊加入 Looker。
在 Looker 的「管理」部分中,前往「連線」頁面,然後選取「SSH 伺服器」分頁標籤。
然後選取「新增伺服器」。Looker 會顯示「新增 SSH 伺服器」頁面:
- 輸入 SSH 伺服器設定的名稱。
- 選取「下載金鑰」即可將公開金鑰下載為文字檔。之後需要將這組公開金鑰加入 SSH 伺服器的授權金鑰檔案,請務必儲存此檔案。
- 輸入 Looker 連至 SSH 伺服器時使用的使用者名稱。
- 輸入 SSH 伺服器 IP 位址或主機名稱。
- 輸入連線至 SSH 伺服器時使用的通訊埠編號。
步驟 4:準備通道主機
將公開金鑰新增至 authorized_keys
檔案
如要驗證 SSH 通道工作階段,Looker 需要專屬的公開金鑰 (Looker 不支援使用密碼登入)。如果執行個體已啟用「SSH 伺服器」分頁,您可以在輸入 SSH 設定資訊時選取「下載金鑰」按鈕,將公開金鑰下載為文字檔。如果您在 Looker 分析師的協助下設定 SSH 通道,Looker 分析師會提供專屬公開金鑰。
您需要建立 looker
使用者,並將 Looker 公開金鑰新增至 Looker .ssh/authorized_keys
檔案,準備好主機 (資料庫伺服器或通道伺服器)。方法如下:
在指令列中,建立名為
looker
的群組:sudo groupadd looker
建立使用者
looker
及其主目錄:sudo useradd -m -g looker looker
切換至
looker
使用者:sudo su - looker
建立
.ssh
目錄:mkdir ~/.ssh
設定權限:
chmod 700 ~/.ssh
切換至
.ssh
目錄:cd ~/.ssh
建立
authorized_keys
檔案:touch authorized_keys
設定權限:
chmod 600 authorized_keys
使用您慣用的文字編輯器,將 Looker 分析師提供的 SSH 金鑰新增至 authorized_keys
檔案。金鑰必須全部在一行。在某些情況下,當您從電子郵件擷取金鑰時,電子郵件用戶端會插入換行符。如果未移除,就無法建立 SSH 通道。
在 sshd_config
檔案中加入 ssh-rsa
OpenSSH 預設會停用 ssh-rsa,這可能會導致設定 SSH 通道時發生錯誤。如要解決這個問題,請將 ssh-rsa
新增至伺服器接受的演算法清單。方法如下:
- 編輯
sshd_config
檔案。通常可在~/etc/ssh/sshd_config
找到。 請將以下內容新增到您的
sshd_config
檔案中:HostKeyAlgorithms +ssh-rsa PubKeyAcceptedAlgorithms +ssh-rsa
通道安全注意事項
當資料庫伺服器上的 SSH 通道終止時,資料庫伺服器上的 Looker 連線會顯示為本機連線。因此,這會破壞 MySQL 等資料庫平台內建的連線式安全機制。舉例來說,授予 root 使用者本機存取權時,通常不會設定密碼!
根據預設,開啟 SSH 存取權也會允許轉送任何通訊埠,繞過 Looker 與終止 SSH 通道的資料庫主機之間的任何防火牆。這項安全風險很可能被視為無法接受。只要正確設定 Looker 公開金鑰的 .ssh/authorized_keys
項目,即可控管這項連接埠轉送功能,以及登入通道伺服器的權限。
舉例來說,您可以在 authorized_keys
檔案中,將下列文字加到 Looker SSH 金鑰的前面。請注意,您必須為環境自訂這段文字。
no-pty,no-X11-forwarding,permitopen="localhost:3306",permitopen="localhost:3307",
command="/bin/echo Login Not Permitted"
如需範例和完整詳細資料,請參閱 man ssh
和 man authorized_keys
Linux 說明文件。
後續步驟
如果執行個體已啟用「SSH 伺服器」分頁,請返回「新增 SSH 伺服器」頁面,然後選取「測試並要求指紋」,驗證與 SSH 伺服器的連線。Looker 會顯示新 SSH 設定的畫面,以及下載或查看公開金鑰的選項,並顯示 SSH 伺服器設定的專屬指紋。
- 啟用「SSH Server」切換鈕,然後從下拉式清單中選取 SSH 伺服器設定。
- 在「Remote Host」(遠端主機) 和「Port」(通訊埠) 欄位中,輸入資料庫的 IP 位址或主機名稱和通訊埠編號。
如果您在 Looker 分析師的協助下設定 SSH 通道,請通知 Looker 分析師您已準備好測試 SSH 通道。確認通道已建立後,他們會提供 SSH 通道 Looker 端使用的通訊埠號碼。
- 在「Remote Host」(遠端主機) 欄位中輸入
localhost
。 - 在「Port」(通訊埠) 欄位中,輸入 Looker 分析師提供的 SSH 通道 Looker 端通訊埠編號。
在資料庫的「Connections」(連線) 頁面中,關閉「Verify SSL Cert」(驗證 SSL 憑證)。
從 Looker 設定資料庫的 SSH 通道時,系統不支援 SSL 憑證。您在步驟 4 中新增的 SSH 金鑰,會在 Looker 和資料庫之間提供交握安全機制。