Menggunakan tunnel SSH

Untuk enkripsi terkuat antara Looker dan database, Anda dapat membuat tunnel SSH ke server tunnel atau server database itu sendiri.

Langkah 1: Pilih host untuk menghentikan tunnel

Langkah pertama dalam menyiapkan akses tunnel SSH untuk database Anda adalah memilih host yang akan digunakan untuk menghentikan tunnel. Tunnel dapat dihentikan di host database itu sendiri, atau di host terpisah (server tunnel).

Menggunakan server database

Jika Anda tidak menggunakan server tunnel, Looker akan terhubung langsung ke server database Anda melalui tunnel SSH melalui internet publik. Penghentian di database memiliki keunggulan dalam hal kesederhanaan. Jumlah host yang terlibat berkurang satu, sehingga tidak ada mesin tambahan dan biaya terkaitnya. Opsi ini mungkin tidak dapat dilakukan jika server database Anda berada di jaringan yang dilindungi dan tidak memiliki akses langsung dari Internet.

Menggunakan server tunnel

Saat Anda menggunakan server tunnel, Looker terhubung ke server database Anda melalui server tunnel terpisah di jaringan yang dibatasi. Menghentikan tunnel di server terpisah memiliki keuntungan, yaitu membuat server database Anda tidak dapat diakses dari Internet. Jika server tunnel disusupi, server tersebut akan dihapus dari server database. Sebaiknya hapus semua software dan pengguna yang tidak penting dari server tunnel dan pantau server tersebut dengan cermat menggunakan alat seperti IDS.

Server tunnel dapat berupa host Unix atau Linux apa pun yang:

  1. Dapat diakses dari Internet menggunakan SSH
  2. Dapat mengakses database

Langkah 2: Buat daftar IP yang diizinkan

Langkah kedua adalah mengizinkan traffic jaringan menjangkau server tunnel atau host database melalui SSH, yang umumnya berada di port TCP 22.

Izinkan traffic jaringan dari setiap alamat IP yang tercantum di sini untuk region tempat instance Looker Anda dihosting. Secara default, negara ini adalah Amerika Serikat.

Instance yang dihosting di Google Cloud

Instance yang dihosting oleh Looker dihosting di Google Cloud secara default. Untuk instance yang dihosting di Google Cloud, tambahkan alamat IP yang cocok dengan region Anda ke daftar yang diizinkan.

Klik di sini untuk melihat daftar lengkap alamat IP untuk instance yang dihosting di Google Cloud

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, Virginia Utara, AS (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, AS (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, Amerika Serikat (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, California, AS (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, Inggris, UK (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, Jerman (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, India (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, Belanda (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

Changhua County, Taiwan (asia-east1)

  • 104.199.206.209
  • 34.80.173.212
  • 35.185.137.114

Tokyo, Jepang (asia-northeast1)

  • 34.85.3.198
  • 34.146.68.203
  • 34.84.4.218

Jurong West, Singapura (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, Indonesia (asia-southeast2)

  • 34.101.158.88
  • 34.101.157.238
  • 34.101.184.52

Sydney, Australia (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), Brasil (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

Instance yang dihosting di Amazon Elastic Kubernetes Service (Amazon EKS)

Untuk instance yang dihosting di Amazon EKS, tambahkan alamat IP yang sesuai dengan region Anda ke daftar yang diizinkan.

Klik di sini untuk mengetahui daftar lengkap alamat IP untuk instance yang dihosting di Amazon EKS

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

US East (Ohio) (us-east-2)

  • 3.135.171.29
  • 18.188.208.231
  • 3.143.85.223

AS Barat (Oregon) (us-west-2)

  • 44.237.129.32
  • 54.184.191.250
  • 35.81.99.30

Kanada (Tengah) (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

Eropa (Irlandia) (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

Eropa (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

Asia Pasifik (Tokyo) (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

Asia Pasifik (Sydney) (ap-southeast-2)

  • 13.238.132.174
  • 3.105.238.71
  • 3.105.113.36

Amerika Selatan (São Paulo) (sa-east-1)

  • 54.232.58.181
  • 54.232.58.98
  • 177.71.134.208

Instance yang dihosting di Microsoft Azure

Untuk instance yang dihosting di Azure, tambahkan alamat IP yang sesuai dengan region Anda ke daftar yang diizinkan.

Klik di sini untuk melihat daftar lengkap alamat IP untuk instance yang dihosting di Microsoft Azure

Virginia, AS (eastus2)

  • 52.147.190.201

Dublin, Irlandia (northeurope)

  • 20.123.126.28

Hosting lama

Gunakan alamat IP ini untuk semua instance yang dihosting di AWS dan yang dibuat sebelum 07/07/2020.

Klik di sini untuk melihat daftar lengkap alamat IP untuk hosting lama

Amerika Serikat (default AWS)

  • 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

Asia

  • 52.68.85.40
  • 52.68.108.109

Irlandia

  • 52.16.163.151
  • 52.16.174.170

Jerman

  • 18.196.243.94
  • 18.184.246.171

Australia

  • 52.65.128.170
  • 52.65.124.87

Amerika Selatan

  • 52.67.8.103
  • 54.233.74.59

Langkah 3: tunnel SSH

Jika tab SSH Servers diaktifkan, ikuti petunjuk di halaman ini untuk menambahkan informasi konfigurasi server SSH Anda ke Looker.

Di halaman Connections di bagian Admin Looker, pilih tab Server SSH.

Kemudian, pilih Add Server. Looker akan menampilkan halaman Add server SSH:

  1. Masukkan nama untuk konfigurasi server SSH.
  2. Pilih Download Kunci untuk mendownload kunci publik ke file teks. Pastikan untuk menyimpan file ini, karena nanti Anda perlu menambahkan kunci publik ke file kunci yang diizinkan di server SSH Anda.
  3. Masukkan nama pengguna yang akan digunakan Looker untuk terhubung ke server SSH.
  4. Masukkan alamat IP atau nama host server SSH.
  5. Masukkan nomor port yang digunakan untuk terhubung ke server SSH.

Langkah 4: Siapkan host tunnel

Menambahkan kunci publik ke file authorized_keys Anda

Untuk mengautentikasi sesi tunnel SSH, Looker memerlukan kunci publik yang unik (Looker tidak mendukung login dengan sandi). Jika tab server SSH diaktifkan di instance, Anda dapat mendownload kunci publik ke file teks dengan memilih tombol Download Key saat memasukkan informasi konfigurasi SSH. Jika Anda mengonfigurasi tunnel SSH dengan bantuan analis Looker, analis Looker akan memberi Anda kunci publik yang unik.

Anda harus menyiapkan host (baik server database maupun server tunnel) dengan membuat pengguna looker dan menambahkan kunci publik Looker ke file .ssh/authorized_keys Looker. Berikut caranya:

  1. Di command line, buat grup bernama looker:

    sudo groupadd looker
    
  2. Buat pengguna looker dan direktori utamanya:

    sudo useradd -m  -g looker  looker
    
  3. Beralih ke pengguna looker:

    sudo su - looker
    
  4. Buat direktori .ssh:

    mkdir ~/.ssh
    
  5. Tetapkan izin:

    chmod 700 ~/.ssh
    
  6. Ubah ke direktori .ssh:

    cd ~/.ssh
    
  7. Buat file authorized_keys:

    touch authorized_keys
    
  8. Tetapkan izin:

    chmod 600 authorized_keys
    

Dengan menggunakan editor teks favorit Anda, tambahkan kunci SSH yang diberikan oleh analis Looker Anda ke file authorized_keys. Kunci harus berada dalam satu baris. Dalam beberapa kasus, saat Anda mengambil kunci dari email, pemisah baris akan disisipkan oleh program email Anda. Jika Anda tidak menghapusnya, tunnel SSH tidak akan dapat dibuat.

Tambahkan ssh-rsa ke file sshd_config Anda

OpenSSH telah menonaktifkan ssh-rsa secara default, yang dapat menyebabkan error saat menyiapkan tunnel SSH. Untuk mengatasinya, tambahkan ssh-rsa ke daftar algoritma yang diterima server Anda. Berikut caranya:

  1. Edit file sshd_config Anda. Informasi ini biasanya dapat ditemukan di ~/etc/ssh/sshd_config.
  2. Tambahkan kode berikut ke file sshd_config Anda:

       HostKeyAlgorithms +ssh-rsa
       PubKeyAcceptedAlgorithms +ssh-rsa
    

Setelan MTU Redshift

Pengguna Amazon Redshift harus menetapkan klien Redshift dan server SSH mereka ke MTU 1500.

Catatan keamanan tunnel

Saat tunnel SSH dihentikan di server database, koneksi dari Looker akan tampak sebagai koneksi lokal di server database. Oleh karena itu, hal ini mengabaikan mekanisme keamanan berbasis koneksi yang ada di platform database seperti MySQL. Misalnya, akses lokal sangat umum diberikan kepada pengguna root tanpa sandi.

Secara default, membuka akses SSH juga memungkinkan penerusan port apa pun, sehingga mengabaikan firewall antara Looker dan host database yang menghentikan tunnel SSH. Risiko keamanan ini mungkin dianggap tidak dapat diterima. Penerusan port ini, dan kemampuan untuk login ke server tunnel Anda, dapat dikontrol dengan mengonfigurasi entri .ssh/authorized_keys dengan benar untuk kunci publik Looker.

Misalnya, teks berikut dapat ditambahkan ke kunci SSH Looker di file authorized_keys Anda. Perhatikan bahwa teks ini HARUS disesuaikan untuk lingkungan Anda.

no-pty,no-X11-forwarding,permitopen="localhost:3306",permitopen="localhost:3307",
command="/bin/echo Login Not Permitted"

Lihat dokumentasi Linux man ssh dan man authorized_keys untuk mengetahui contoh dan detail selengkapnya.

Langkah berikutnya

Jika tab SSH Servers diaktifkan di instance Anda, kembali ke halaman Add SSH Server, lalu pilih Test & Request Fingerprint untuk memverifikasi koneksi Anda ke server SSH. Looker akan menampilkan layar dengan konfigurasi SSH baru dan opsi untuk mendownload atau melihat kunci publik, serta untuk melihat sidik jari unik konfigurasi server SSH.

Kemudian, di halaman Connection Settings database Anda:

  1. Aktifkan tombol SSH Server dan pilih konfigurasi server SSH Anda dari menu drop-down.
  2. Di kolom Remote Host dan Port, masukkan alamat IP atau nama host dan nomor port database Anda.

Jika Anda mengonfigurasi tunnel SSH dengan bantuan analis Looker, beri tahu analis Looker bahwa Anda siap menguji tunnel SSH. Setelah mengonfirmasi bahwa tunnel telah dibuat, mereka akan memberi Anda nomor port untuk sisi Looker dari tunnel SSH.

Kemudian, di halaman Connection Settings database Anda:

  1. Masukkan localhost di kolom Remote Host.
  2. Di kolom Port, masukkan nomor port untuk sisi Looker dari tunnel SSH yang diberikan oleh analis Looker Anda.
  3. Nonaktifkan Verify SSL Cert di halaman Connections database Anda.

    Sertifikat SSL tidak didukung saat menyiapkan tunnel SSH ke database Anda dari Looker. Sebagai gantinya, kunci SSH yang Anda tambahkan di langkah 4 memberikan keamanan handshake antara Looker dan database Anda.