使用 SSH 通道

如要在 Looker 與資料庫之間建立最強的加密連線,您可以建立 SSH 通道,連線至通道伺服器或資料庫伺服器本身。

步驟 1:選擇要終止通道的主機

如要為資料庫設定 SSH 通道存取權,首先要選擇用來終止通道的主機。通道可以在資料庫主機本身或獨立主機 (通道伺服器) 上終止。

使用資料庫伺服器

如果不使用通道伺服器,Looker 會透過公用網際網路上的 SSH 通道,直接連線至資料庫伺服器。在資料庫中終止作業的優點是作業簡單,由於減少一個主機,因此不會有額外的機器和相關成本。如果資料庫伺服器位於受保護的網路,無法直接從網際網路存取,這個選項可能不適用。

使用通道伺服器

使用通道伺服器時,Looker 會透過受限網路上的獨立通道伺服器連線至資料庫伺服器。在獨立伺服器上終止通道的優點是,資料庫伺服器無法從網際網路存取。如果通道伺服器遭到入侵,與資料庫伺服器之間只隔了一步。建議您從通道伺服器移除所有非必要軟體和使用者,並使用 IDS 等工具密切監控。

通道伺服器可以是任何 Unix 或 Linux 主機,只要符合下列條件:

  1. 可透過 SSH 從網際網路存取
  2. 可存取資料庫

步驟 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 位址加入許可清單。

按一下這裡,查看 Microsoft Azure 上代管執行個體的完整 IP 位址清單

美國維吉尼亞州 (us-east2)

  • 52.147.190.201

舊版主機代管

請為 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 伺服器」頁面:

  1. 輸入 SSH 伺服器設定的名稱。
  2. 選取「下載金鑰」即可將公開金鑰下載為文字檔。之後需要將這組公開金鑰加入 SSH 伺服器的授權金鑰檔案,請務必儲存此檔案。
  3. 輸入 Looker 連至 SSH 伺服器時使用的使用者名稱。
  4. 輸入 SSH 伺服器 IP 位址或主機名稱。
  5. 輸入連線至 SSH 伺服器時使用的通訊埠編號。

步驟 4:準備通道主機

將公開金鑰新增至 authorized_keys 檔案

如要驗證 SSH 通道工作階段,Looker 需要專屬的公開金鑰 (Looker 不支援使用密碼登入)。如果執行個體已啟用「SSH 伺服器」分頁,您可以在輸入 SSH 設定資訊時選取「下載金鑰」按鈕,將公開金鑰下載為文字檔。如果您在 Looker 分析師的協助下設定 SSH 通道,Looker 分析師會提供專屬公開金鑰。

您需要建立 looker 使用者,並將 Looker 公開金鑰新增至 Looker .ssh/authorized_keys 檔案,準備好主機 (資料庫伺服器或通道伺服器)。方法如下:

  1. 在指令列中,建立名為 looker 的群組:

    sudo groupadd looker
    
  2. 建立使用者 looker 及其主目錄:

    sudo useradd -m  -g looker  looker
    
  3. 切換至 looker 使用者:

    sudo su - looker
    
  4. 建立 .ssh 目錄:

    mkdir ~/.ssh
    
  5. 設定權限:

    chmod 700 ~/.ssh
    
  6. 切換至 .ssh 目錄:

    cd ~/.ssh
    
  7. 建立 authorized_keys 檔案:

    touch authorized_keys
    
  8. 設定權限:

    chmod 600 authorized_keys
    

使用您慣用的文字編輯器,將 Looker 分析師提供的 SSH 金鑰新增至 authorized_keys 檔案。金鑰必須全部在一行。在某些情況下,當您從電子郵件擷取金鑰時,電子郵件用戶端會插入換行符。如果未移除,就無法建立 SSH 通道。

sshd_config 檔案中加入 ssh-rsa

OpenSSH 預設會停用 ssh-rsa,這可能會導致設定 SSH 通道時發生錯誤。如要解決這個問題,請將 ssh-rsa 新增至伺服器接受的演算法清單。方法如下:

  1. 編輯 sshd_config 檔案。通常可在 ~/etc/ssh/sshd_config 找到。
  2. 請將以下內容新增到您的 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 sshman authorized_keys Linux 說明文件。

後續步驟

如果執行個體已啟用「SSH 伺服器」分頁,請返回「新增 SSH 伺服器」頁面,然後選取「測試並要求指紋」,驗證與 SSH 伺服器的連線。Looker 會顯示新 SSH 設定的畫面,以及下載或查看公開金鑰的選項,並顯示 SSH 伺服器設定的專屬指紋。

接著,在資料庫的「連線設定」頁面中:

  1. 啟用「SSH Server」切換鈕,然後從下拉式清單中選取 SSH 伺服器設定。
  2. 在「Remote Host」(遠端主機) 和「Port」(通訊埠) 欄位中,輸入資料庫的 IP 位址或主機名稱和通訊埠編號。

如果您在 Looker 分析師的協助下設定 SSH 通道,請通知 Looker 分析師您已準備好測試 SSH 通道。確認通道已建立後,他們會提供 SSH 通道 Looker 端使用的通訊埠號碼。

接著,在資料庫的「連線設定」頁面中:

  1. 在「Remote Host」(遠端主機) 欄位中輸入 localhost
  2. 在「Port」(通訊埠) 欄位中,輸入 Looker 分析師提供的 SSH 通道 Looker 端通訊埠編號。
  3. 在資料庫的「Connections」(連線) 頁面中,關閉「Verify SSL Cert」(驗證 SSL 憑證)

    從 Looker 設定資料庫的 SSH 通道時,系統不支援 SSL 憑證。您在步驟 4 中新增的 SSH 金鑰,會在 Looker 和資料庫之間提供交握安全機制。