Para ter a criptografia mais forte entre o Looker e o banco de dados, crie um túnel SSH para um servidor de túnel ou para o próprio servidor.
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 devem 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 meio de um túnel SSH na Internet pública. O encerramento do banco de dados tem a vantagem da simplicidade. Há menos um host envolvido, então não há máquinas adicionais e os custos associados. Essa opção talvez não seja viável se o servidor de banco de dados estiver em uma rede protegida sem acesso direto à 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 meio de 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 pela Internet. Se o servidor de túnel estiver comprometido, será apenas uma etapa removida do servidor de banco de dados. Recomendamos que você remova todos os usuários e softwares não essenciais do servidor do túnel e o monitore de perto com ferramentas como um SDI.
O servidor do túnel pode ser qualquer host Unix/Linux que:
- Pode ser acessado pela Internet usando SSH
- 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 alcance o servidor do túnel ou o host do banco de dados por meio do 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 onde 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 ver uma lista completa de endereços IP de instâncias hospedadas no Google Cloud
Moncks Corner, Carolina do Sul, EUA (us-east1
)
34.75.58.123
35.196.30.110
35.243.254.166
34.111.239.102
35.237.174.17
34.73.200.235
35.237.168.216
Ashburn, Virgínia do Norte, EUA (us-east4
)
35.221.30.177
35.245.82.73
35.194.74.185
35.245.177.112
34.86.118.239
34.86.52.188
35.221.3.163
35.245.211.109
34.86.136.190
34.86.214.226
35.221.62.218
34.86.34.135
35.236.240.168
34.150.212.9
34.150.174.54
34.85.200.217
34.145.147.146
35.245.20.16
34.145.139.22
34.150.217.20
35.199.35.176
35.245.72.35
35.236.220.225
34.150.180.94
34.85.187.175
Council Bluffs, Iowa, EUA (us-central1
)
34.69.207.176
34.70.128.74
35.239.118.197
104.154.21.231
35.192.130.126
35.184.100.51
34.172.2.227
34.71.191.210
34.173.109.50
The Dalles, Oregon, EUA (us-west1
)
34.82.120.25
35.247.5.99
35.197.64.57
35.233.172.23
35.233.249.160
35.247.55.33
35.247.117.0
35.247.61.151
34.82.193.215
35.233.222.226
34.83.94.151
35.203.184.48
34.83.138.105
35.197.35.188
34.127.116.85
34.145.90.83
34.127.41.199
34.82.57.225
35.197.66.244
34.105.127.122
35.233.191.84
34.145.93.130
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.234.252.150
35.203.0.6
35.203.96.235
Londres, Inglaterra, Reino Unido (europe-west2
)
35.189.94.105
35.246.36.67
35.234.140.77
34.142.77.18
34.105.131.133
34.89.54.84
34.89.124.139
34.89.25.5
34.105.209.44
34.105.181.133
35.242.138.133
34.105.219.154
34.89.127.51
35.246.10.206
35.189.111.173
35.197.222.220
34.105.198.151
35.246.117.58
34.142.123.96
34.105.176.209
35.189.95.167
34.89.55.2
35.197.199.20
35.242.174.158
34.89.3.120
Frankfurt, Alemanha (europe-west3
)
34.159.224.187
34.159.10.59
34.159.72.77
35.242.243.255
34.159.247.211
35.198.128.126
34.89.159.138
34.159.253.103
34.159.244.43
Mumbai, Índia (asia-south1
)
34.93.221.137
35.244.24.198
35.244.52.179
Eemshaven, Holanda (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
Condado de Changhua, 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
35.200.82.72
34.84.163.27
34.85.31.212
Jurong West, Singapura (asia-southeast1
)
34.143.210.116
34.143.132.206
34.87.134.202
35.197.143.5
35.247.186.68
34.142.215.26
35.198.246.81
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
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 ver 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
Á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 das 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 obter 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 SSH
Se a guia Servidores SSH estiver ativada, siga as instruções nesta 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 apenas 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, na seção Administrador do Looker, selecione a guia Servidor SSH.
Em seguida, selecione Adicionar servidor. O Looker exibe a página Adicionar servidor SSH:
- Digite um nome para a configuração do servidor SSH.
- 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 autorizado do servidor SSH posteriormente.
- Digite o nome de usuário que o Looker usará para se conectar ao servidor SSH.
- Digite o endereço IP ou o nome do host do servidor SSH.
- 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 de túnel SSH, o Looker requer uma chave pública exclusiva (o Looker não é compatível com login com senha). Se a guia Servidores SSH estiver ativada em sua instância, faça o download da chave pública em um arquivo de texto selecionando o botão Fazer o download da chave ao digitar as informações de configuração do SSH. Se você estiver configurando seu túnel SSH com a ajuda de um analista do Looker, ele fornecerá uma chave pública exclusiva.
Você precisará preparar seu host (o servidor de banco de dados ou o servidor 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:
Na linha de comando, crie um grupo chamado
looker
:sudo groupadd looker
Crie o usuário
looker
e o diretório principal dele:sudo useradd -m -g looker looker
Mude para o usuário
looker
.sudo su - looker
Crie o diretório
.ssh
:mkdir ~/.ssh
Definir permissões:
chmod 700 ~/.ssh
Altere para o diretório
.ssh
:cd ~/.ssh
Crie o arquivo
authorized_keys
:touch authorized_keys
Definir permissões:
chmod 600 authorized_keys
Usando seu editor de texto favorito, adicione a chave SSH fornecida pelo seu 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 removê-los, 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 o ssh-rsa
à lista de algoritmos aceitos do seu servidor. Siga estas etapas:
- Edite seu arquivo
sshd_config
. Normalmente, é possível encontrar em~/etc/ssh/sshd_config
. 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 uma conexão local no servidor de banco de dados. Por isso, ele elimina os mecanismos de segurança baseados em conexão incorporados em plataformas de banco de dados, como o MySQL. Por exemplo, é muito comum conceder acesso local ao usuário root sem senha.
Por padrão, a abertura do acesso SSH também permite o encaminhamento de qualquer porta, evitando 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. É possível controlar esse encaminhamento de portas e a capacidade de fazer login no servidor do túnel 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
. Este 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 do man ssh
e do man authorized_keys
para ver exemplos e detalhes completos.
Próximas etapas
Se a guia Servidores SSH estiver ativada em sua instância, volte para a página Adicionar servidor SSH e selecione Testar e solicitar impressão digital para verificar sua conexão com o servidor SSH. O Looker mostra 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:
- Ative a opção Servidor SSH e selecione a configuração do servidor SSH na lista suspensa.
- 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.
Conexões de banco de dados que usam um túnel SSH não podem aplicar um atributo de usuário aos campos Remote Host e Port.
Se você estiver configurando seu túnel SSH com a ajuda de um analista do Looker, informe a ele que está tudo pronto para testar o túnel SSH. Depois de confirmar a criação do túnel, ele vai informar o número da porta do Looker no túnel SSH.
Em seguida, na página Configurações de conexão do banco de dados:
- Digite
localhost
no campo Host remoto. - No campo Porta, digite o número da porta do Looker fornecida pelo analista da Looker.
Desative a opção Verificar o 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 Looker a partir do Looker. Em vez disso, a chave SSH que você adicionou na etapa 4 fornece a segurança do handshake entre o Looker e seu banco de dados.