Como usar um túnel SSH

Para ter a criptografia mais forte entre o Looker e seu banco de dados, crie um túnel SSH para um servidor de túnel ou o próprio servidor de banco de dados.

Os túneis SSH não estão disponíveis para bancos de dados que não têm um único endereço de host, como os bancos de dados Google BigQuery e Amazon Athena. Os usuários do BigQuery e do Athena devem pular diretamente para configuração do banco de dados.

Etapa 1: escolher o host em que o túnel será encerrado

A primeira etapa para configurar o acesso ao túnel SSH para seu banco de dados é escolher o host que será usado para encerrar o túnel. O túnel pode ser encerrado no host do banco de dados ou em um host separado (o servidor do túnel).

Usando o servidor de banco de dados

Quando você não usa um servidor de túnel, o Looker se conecta diretamente ao seu servidor de banco de dados por um túnel SSH na Internet pública. O encerramento no banco de dados tem a vantagem da simplicidade. Um host a menos está envolvido, portanto, não há máquinas adicionais e os custos associados a elas. Essa opção pode não ser viável se seu servidor de banco de dados estiver em uma rede protegida sem acesso direto da Internet.

Com um servidor de túnel

Quando você usa um servidor de túnel, o Looker se conecta ao servidor de banco de dados por um servidor de túnel separado em uma rede restrita. Encerrar o túnel em um servidor separado tem a vantagem de manter seu servidor de banco de dados inacessível pela Internet. Se o servidor de túnel for comprometido, isso estará a apenas uma etapa do servidor de banco de dados. Recomendamos que você remova todos os softwares e usuários não essenciais do servidor do túnel e monitore de perto com ferramentas como o SDI.

O servidor do túnel pode ser qualquer host Unix/Linux que:

  1. Pode ser acessado pela Internet usando SSH
  2. Pode acessar o banco de dados

Etapa 2: criar lista de permissões de IP

A segunda etapa é permitir que o tráfego de rede chegue ao servidor do túnel ou ao host do banco de dados pelo SSH, que geralmente está na porta TCP 22.

Permita o tráfego de rede de cada um dos endereços IP listados aqui para a região em que sua instância do Looker está hospedada. Por padrão, serão os Estados Unidos.

Instâncias hospedadas no Google Cloud

Por padrão, as instâncias hospedadas pelo Looker são hospedadas no Google Cloud. Para instâncias hospedadas no Google Cloud, adicione à lista de permissões os endereços IP que correspondem à sua região.

Clique aqui para conferir uma lista completa de endereços IP de instâncias hospedadas no Google Cloud

Moncks Corner, Carolina do Sul, EUA (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, Virgínia do Norte, EUA (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, EUA (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, EUA (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, Califórnia, EUA (us-west2)

  • 35.236.22.77
  • 35.235.83.177
  • 35.236.51.71

Montreal, Quebec, Canadá (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

Londres, Inglaterra, Reino Unido (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, Alemanha (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, Índia (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, Países Baixos (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

Tóquio, Japão (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

Jacarta, Indonésia (asia-southeast2)

  • 34.101.158.88
  • 34.101.157.238
  • 34.101.184.52

Sydney, Austrália (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

Instâncias hospedadas no Amazon Elastic Kubernetes Service (Amazon EKS)

Para instâncias hospedadas no Amazon EKS, adicione à lista de permissões os endereços IP que correspondem à sua região.

Clique aqui para conferir uma lista completa de endereços IP para instâncias hospedadas no Amazon EKS

Leste dos EUA (Norte da Virgínia) (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

Leste dos EUA (Ohio) (us-east-2)

  • 3.135.171.29
  • 18.188.208.231
  • 3.143.85.223

Oeste dos EUA (Oregon) (us-west-2)

  • 44.237.129.32
  • 54.184.191.250
  • 35.81.99.30

Canadá (Central) (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 (Irlanda) (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

Ásia-Pacífico (Tóquio) (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

Ásia-Pacífico (Sydney) (ap-southeast-2)

  • 13.238.132.174
  • 3.105.238.71
  • 3.105.113.36

América do Sul (São Paulo) (sa-east-1)

  • 54.232.58.181
  • 54.232.58.98
  • 177.71.134.208

Instâncias hospedadas no Microsoft Azure

Para instâncias hospedadas no Azure, adicione à lista de permissões os endereços IP que correspondem à sua região.

Clique aqui para ver uma lista completa de endereços IP de instâncias hospedadas no Microsoft Azure

Virgínia, EUA (us-east2)

  • 52.147.190.201

Hospedagem legada

Use esses endereços IP para todas as instâncias hospedadas na AWS e criadas antes de 07/07/2020.

Clique aqui para consultar uma lista completa de endereços IP da hospedagem legada

Estados Unidos (padrão da AWS)

  • 54.208.10.167
  • 54.209.116.191
  • 52.1.5.228
  • 52.1.157.156
  • 54.83.113.5

Canadá

  • 99.79.117.127
  • 35.182.216.56

Ásia

  • 52.68.85.40
  • 52.68.108.109

Irlanda

  • 52.16.163.151
  • 52.16.174.170

Alemanha

  • 18.196.243.94
  • 18.184.246.171

Austrália

  • 52.65.128.170
  • 52.65.124.87

América do Sul

  • 52.67.8.103
  • 54.233.74.59

Etapa 3: tunelamento SSH

Se a guia Servidores SSH estiver ativada, siga as instruções desta página para adicionar as informações de configuração do servidor SSH no Looker.

A opção Servidor SSH estará disponível se a instância estiver implantada na infraestrutura do Kubernetes e somente se a capacidade de adicionar informações de configuração do servidor SSH à sua instância do Looker estiver ativada. Se essa opção não estiver ativada na sua instância do Looker e você quiser ativá-la, entre em contato com um especialista em vendas do Google Cloud ou abra uma solicitação de suporte.

Na página Conexões da seção Administrador do Looker, selecione a guia Servidor SSH.

Em seguida, selecione Adicionar servidor. O Looker exibe a página Adicionar servidor SSH:

  1. Digite um nome para a configuração do servidor SSH.
  2. Selecione Fazer o download da chave para fazer o download da chave pública em um arquivo de texto. Salve esse arquivo porque você precisará adicionar a chave pública ao arquivo de chave autorizada do servidor SSH mais tarde.
  3. Digite o nome de usuário que o Looker usará para se conectar ao servidor SSH.
  4. Digite o endereço IP ou o nome do host do servidor SSH.
  5. Digite o número da porta usada para se conectar ao servidor SSH.

Etapa 4: preparar o host do túnel

Adicione a chave pública ao seu arquivo authorized_keys.

Para autenticar a sessão do túnel SSH, o Looker exige uma chave pública exclusiva. O Looker não aceita login com uma senha. Se a guia Servidores SSH estiver ativada na sua instância, faça o download da chave pública para um arquivo de texto selecionando o botão Fazer o download da chave ao inserir as informações de configuração do SSH. Se você estiver configurando o túnel SSH com a ajuda de um analista do Looker, essa pessoa vai fornecer uma chave pública exclusiva.

Você precisa preparar seu host (o servidor do banco de dados ou o servidor do túnel) criando um usuário looker e adicionando a chave pública do Looker ao arquivo .ssh/authorized_keys do Looker. Siga estas etapas:

  1. Na linha de comando, crie um grupo com o nome looker:

    sudo groupadd looker
    
  2. Crie o usuário looker e o diretório inicial dele:

    sudo useradd -m  -g looker  looker
    
  3. Mude para o usuário looker.

    sudo su - looker
    
  4. Crie o diretório .ssh:

    mkdir ~/.ssh
    
  5. Defina as permissões:

    chmod 700 ~/.ssh
    
  6. Altere para o diretório .ssh:

    cd ~/.ssh
    
  7. Crie o arquivo authorized_keys:

    touch authorized_keys
    
  8. Defina as permissões:

    chmod 600 authorized_keys
    

Usando o editor de texto de sua preferência, adicione a chave SSH fornecida pelo analista do Looker ao arquivo authorized_keys. A chave precisa estar toda em uma linha. Em alguns casos, quando você recuperar a chave do e-mail, as quebras de linha serão inseridas pelo cliente de e-mail. Se você não os remover, será impossível estabelecer o túnel SSH.

Adicione ssh-rsa ao seu arquivo sshd_config

O OpenSSH desativou o ssh-rsa por padrão, o que pode causar erros na configuração de um túnel SSH. Para resolver isso, adicione ssh-rsa à lista de algoritmos aceitos do seu servidor. Siga estas etapas:

  1. Edite o arquivo sshd_config. Normalmente, eles podem ser encontrados em ~/etc/ssh/sshd_config.
  2. Adicione a instrução a seguir ao seu arquivo sshd_config:

       HostKeyAlgorithms +ssh-rsa
       PubKeyAcceptedAlgorithms +ssh-rsa
    

Notas de segurança do túnel

Quando um túnel SSH é encerrado no servidor de banco de dados, a conexão do Looker parece ser local no servidor de banco de dados. Portanto, ele invalida os mecanismos de segurança baseados em conexão integrados às plataformas de banco de dados, como o MySQL. Por exemplo, é muito comum conceder o acesso local ao usuário root sem senha.

Por padrão, abrir o acesso SSH também permite o encaminhamento de quaisquer portas, contornando quaisquer firewalls entre o Looker e o host do banco de dados que está encerrando o túnel SSH. Esse risco de segurança pode muito bem ser considerado inaceitável. Para controlar esse encaminhamento de portas e a capacidade de fazer login no servidor do túnel, configure corretamente a entrada .ssh/authorized_keys para a chave pública do Looker.

Por exemplo, o texto a seguir pode ser anexado à chave SSH do Looker no arquivo authorized_keys. Esse texto PRECISA ser personalizado para seu ambiente.

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

Consulte a documentação do Linux para man ssh e man authorized_keys para ver exemplos e todos os detalhes.

Próximas etapas

Se a guia Servidores SSH estiver ativada na instância, retorne à página Adicionar servidor SSH e selecione Testar e solicitar impressão digital para verificar a conexão com o servidor SSH. O Looker vai mostrar uma tela com a nova configuração do SSH e as opções para fazer o download ou acessar a chave pública e conferir a impressão digital exclusiva da configuração do servidor SSH.

Em seguida, na página Configurações de conexão do banco de dados:

  1. Ative a opção Servidor SSH e selecione a configuração do servidor SSH na lista suspensa.
  2. Nos campos Host remoto e Porta, digite o endereço IP ou o nome do host e o número da porta do seu banco de dados.

As conexões de banco de dados que usam um túnel SSH não podem aplicar um atributo de usuário aos campos Host remoto e Porta.

Para configurar o túnel SSH com a ajuda de um analista do Looker, informe a ele que você já pode testar o túnel SSH. Depois de confirmar que o túnel foi estabelecido, você vai receber o número da porta do lado do Looker no túnel SSH.

Em seguida, na página Configurações de conexão do banco de dados:

  1. Digite localhost no campo Host remoto.
  2. No campo Porta, insira o número da porta do lado do Looker do túnel SSH informado pelo analista do Looker.
  3. Desative Verificar certificado SSL na página Conexões do seu banco de dados.

    Os certificados SSL não são compatíveis com a configuração de um túnel SSH no banco de dados do Looker. Em vez disso, a chave SSH que você adicionou na etapa 4 fornece a segurança de handshake entre o Looker e o banco de dados.