如要確保 Looker 與資料庫之間的加密強度,您可以建立 SSH 通道,連線至通道伺服器或資料庫伺服器本身。
步驟 1:選擇終止通道的主機
設定資料庫的 SSH 通道存取權的第一步,就是選擇用來終止通道的主機。隧道可以終止於資料庫主機本身,也可以終止於個別主機 (隧道伺服器)。
使用資料庫伺服器
如果您未使用通道伺服器,Looker 會透過公用網際網路上的 SSH 通道,直接連線至資料庫伺服器。在資料庫中終止作業的優點是簡單易懂。因為只需要一個主機,所以不需要額外機器和相關費用。如果資料庫伺服器位於受保護的網路中,且無法從網際網路直接存取,則這個選項可能無法使用。
使用通道伺服器
使用通道伺服器時,Looker 會透過受限網路上的單獨通道伺服器連線至資料庫伺服器。在不同的伺服器上終止隧道的好處是,可防止網際網路存取資料庫伺服器。如果通道伺服器遭到入侵,資料庫伺服器就會從中移除一個步驟。建議您從中繼伺服器中移除所有非必要的軟體和使用者,並使用 IDS 等工具密切監控中繼伺服器。
隧道伺服器可以是任何 Unix 或 Linux 主機,且必須符合以下條件:
- 可透過 SSH 從網際網路存取
- 可存取資料庫
步驟 2:建立 IP 許可清單
第二步是允許網路流量透過 SSH 連線至通道伺服器或資料庫主機,通常是透過 TCP 通訊埠 22 連線。
允許 Looker 執行個體所在區域的每個 IP 位址傳送網路流量。預設為美國。
在 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
Montréal, Québec, Canada (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 位址加入許可清單。舊版主機代管
請為所有在 AWS 上託管且在 2020 年 7 月 7 日前建立的執行個體使用這些 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 會顯示「Add SSH Server」頁面:
- 輸入 SSH 伺服器設定的名稱。
- 選取「下載金鑰」即可將公開金鑰下載為文字檔。之後需要將這組公開金鑰加入 SSH 伺服器的授權金鑰檔案,請務必儲存此檔案。
- 輸入 Looker 連線至 SSH 伺服器時使用的使用者名稱。
- 輸入 SSH 伺服器 IP 位址或主機名稱。
- 輸入連至 SSH 伺服器時使用的通訊埠編號。
步驟 4:準備隧道主機
將公開金鑰新增至 authorized_keys
檔案
如要驗證 SSH 通道工作階段,Looker 需要專屬的公開金鑰 (Looker 不支援使用密碼登入)。如果執行個體已啟用 SSH 伺服器分頁,您可以在輸入 SSH 設定資訊時選取「下載金鑰」按鈕,將公開金鑰下載為文字檔。如果您在 Looker 分析師的協助下設定安全殼層通道,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 分析師提供的安全殼層金鑰新增至 authorized_keys
檔案。鍵「必須」全部放在同一行。在某些情況下,當您從電子郵件中擷取金鑰時,電子郵件用戶端會插入換行符號。如果不移除這些項目,就無法建立 SSH 通道。
將 ssh-rsa
新增至 sshd_config
檔案
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 安全殼層金鑰之前。請注意,這段文字必須針對您的環境進行自訂。
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 Server」切換鈕,然後從下拉式清單中選取 SSH 伺服器設定。
- 在「Remote Host」和「Port」欄位中,輸入資料庫的 IP 位址或主機名稱和通訊埠編號。
如果您是透過 Looker 分析師的協助來設定 SSH 通道,請通知 Looker 分析師,您已準備好測試 SSH 通道。確認通道建立後,他們會提供 Looker 端 SSH 通道的通訊埠編號。
接著,在資料庫的「連線設定」頁面中:
- 在「遠端主機」欄位中輸入
localhost
。 - 在「Port」欄位中,輸入 Looker 分析師提供的 SSH 通道中 Looker 端的通訊埠編號。
在資料庫的「Connections」頁面中,關閉「Verify SSL Cert」。
從 Looker 設定資料庫的 SSH 通道時,系統不支援 SSL 憑證。您在步驟 4 中新增的 SSH 金鑰,會為 Looker 和資料庫之間的握手安全性提供保護。