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 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).

Usando 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. Um host a menos está envolvido, portanto, não há máquinas adicionais e seus 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. 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 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/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 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

As instâncias hospedadas pelo Looker são hospedadas no Google Cloud por padrão. 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 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 07/07/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 Servidores SSH 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 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 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 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. Insira 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 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.

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 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 preferido, 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ê recuperar a chave do e-mail, as quebras de linha serão inseridas 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 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 derrota os mecanismos de segurança baseados em conexão integrados a 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, 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 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 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. 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 a opção Verificar certificado SSL na página Conexões do 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.