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 para 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 o Google BigQuery e o Amazon Athena. Os usuários do BigQuery e do Athena precisam pular diretamente para a 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).

Como usar o servidor de banco de dados

Quando você não usa um servidor de túnel, o Looker se conecta diretamente ao 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. Como há um host a menos envolvido, não há máquinas adicionais e os custos associados. Essa opção pode não ser viável se o servidor de banco de dados estiver em uma rede protegida que não tem acesso direto da Internet.

Como usar 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. O encerramento do túnel em um servidor separado tem a vantagem de manter o servidor de banco de dados inacessível na Internet. Se o servidor do túnel for comprometido, será removido apenas uma etapa do servidor de banco de dados. Recomendamos remover todo o software e os usuários não essenciais do servidor do túnel e monitorá-lo de perto com ferramentas como um IDS.

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

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

Etapa 2: criar uma lista de permissões de IP

A segunda etapa é permitir que o tráfego de rede atinja o servidor de túnel ou o host de banco de dados por 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, esse valor será "Estados Unidos".

Instâncias hospedadas em Google Cloud

As instâncias hospedadas pelo Looker são hospedadas em Google Cloud por padrão. Para instâncias hospedadas em 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 das instâncias hospedadas em 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 correspondentes à sua região.

Clique aqui para conferir uma lista completa de endereços IP de 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 correspondentes à sua região.

Clique aqui para conferir 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 7 de julho de 2020.

Clique aqui para conferir uma lista completa de endereços IP para 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 de SSH

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

A opção Servidor SSH fica disponível se a instância for implantada na infraestrutura do Kubernetes e se a opção 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, na seção Administrador do Looker, selecione a guia Servidor SSH.

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

  1. Insira um nome para a configuração do servidor SSH.
  2. Selecione Fazer o download da chave para salvar a chave pública em um arquivo de texto. Salve o arquivo, porque você vai precisar adicionar a chave pública ao arquivo de chaves autorizadas do servidor SSH mais tarde.
  3. Digite o nome de usuário que o Looker vai usar para se conectar ao servidor SSH.
  4. Insira o endereço IP ou o nome do host do servidor SSH.
  5. Insira 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 arquivo authorized_keys.

Para autenticar a sessão do túnel SSH, o Looker exige uma chave pública exclusiva. Ele não oferece suporte ao login com uma senha. Se a guia SSH Servers estiver ativada na sua instância, você poderá fazer o download da chave pública para um arquivo de texto selecionando o botão Download Key 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, ele vai fornecer uma chave pública exclusiva.

Prepare o host (servidor de banco de dados ou de 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 chamado 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. Definir permissões:

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

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

    touch authorized_keys
    
  8. Definir permissões:

    chmod 600 authorized_keys
    

Usando seu editor de texto favorito, adicione a chave SSH fornecida pelo analista do Looker ao arquivo authorized_keys. A chave precisa estar em uma linha. Em alguns casos, quando você recupera a chave do seu e-mail, os quebras de linha são inseridos pelo cliente de e-mail. Se você não remover esses arquivos, será impossível estabelecer o túnel SSH.

Adicione ssh-rsa ao arquivo sshd_config.

O OpenSSH desativou o ssh-rsa por padrão, o que pode causar erros ao configurar um túnel SSH. Para resolver esse problema, adicione o ssh-rsa à lista de algoritmos aceitos do servidor. Siga estas etapas:

  1. Edite o arquivo sshd_config. Geralmente, ele pode ser encontrado em ~/etc/ssh/sshd_config.
  2. Adicione a instrução a seguir ao seu arquivo sshd_config:

       HostKeyAlgorithms +ssh-rsa
       PubKeyAcceptedAlgorithms +ssh-rsa
    

Observações 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 uma conexão local no servidor de banco de dados. Portanto, ele derrota os mecanismos de segurança baseados em conexão integrados a plataformas de banco de dados, como o MySQL. Por exemplo, é muito comum que o acesso local seja concedido ao usuário raiz sem senha.

Por padrão, a abertura do acesso SSH também permite o encaminhamento de qualquer porta, contornando todos os firewalls entre o Looker e o host do banco de dados que está encerrando o túnel SSH. Esse risco de segurança pode ser considerado inaceitável. Esse encaminhamento de porta e a capacidade de fazer login no servidor de túnel podem ser controlados configurando corretamente a entrada .ssh/authorized_keys para a chave pública do Looker.

Por exemplo, o texto a seguir pode ser adicionado à 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 man ssh e do man authorized_keys para conferir exemplos e detalhes completos.

Próximas etapas

Se a guia Servidores SSH estiver ativada na sua instância, volte para a 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 opções para fazer o download ou visualizar a chave pública e 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, insira 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.

Se você estiver configurando o túnel SSH com a ajuda de um analista do Looker, avise-o que você está pronto para testar o túnel SSH. Depois de confirmar que o túnel foi estabelecido, eles vão fornecer o número da porta para o lado do Looker do túnel SSH.

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

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

    Não é possível usar certificados SSL ao configurar um túnel SSH para o banco de dados no Looker. Em vez disso, a chave SSH adicionada na etapa 4 fornece a segurança de handshake entre o Looker e seu banco de dados.