Usa un túnel SSH

Para obtener la encriptación más sólida entre Looker y tu base de datos, puedes crear un túnel SSH a un servidor de túnel o al servidor de la base de datos.

Los túneles SSH no están disponibles para las bases de datos que no tienen una sola dirección de host, como las de Google BigQuery y Amazon Athena. Los usuarios de BigQuery y Athena deben pasar directamente a la configuración de la base de datos.

Paso 1: Elige un host para finalizar el túnel

El primer paso para configurar el acceso al túnel SSH de tu base de datos es elegir el host que se usará para finalizar el túnel. El túnel puede finalizarse en el host de la base de datos o en un host independiente (el servidor del túnel).

Usa el servidor de base de datos

Cuando no usas un servidor de túnel, Looker se conecta directamente al servidor de tu base de datos a través de un túnel SSH a través de la Internet pública. Finalizar la base de datos tiene la ventaja de ser más simple. Se requiere un host menos, por lo que no hay máquinas adicionales ni sus costos asociados. Es posible que esta opción no sea factible si el servidor de la base de datos se encuentra en una red protegida que no tiene acceso directo desde Internet.

Usa un servidor de túnel

Cuando usas un servidor de túnel, Looker se conecta al servidor de tu base de datos a través de un servidor de túnel independiente en una red restringida. Finalizar el túnel en un servidor independiente tiene la ventaja de mantener inaccesible al servidor de la base de datos desde Internet. Si el servidor del túnel se ve comprometido, se quita un paso del servidor de la base de datos. Te recomendamos que quites del servidor del túnel todo el software y los usuarios no esenciales y que lo supervises de cerca con herramientas como un IDS.

El servidor de túnel puede ser cualquier host Unix/Linux que realice lo siguiente:

  1. Se puede acceder desde Internet a través de SSH
  2. Puede acceder a la base de datos

Paso 2: Crea una lista de IP permitidas

El segundo paso es permitir que el tráfico de red llegue al servidor del túnel o al host de la base de datos a través de SSH, que generalmente se encuentra en el puerto TCP 22.

Permite el tráfico de red desde cada una de las direcciones IP que aparecen aquí para la región en la que se aloja tu instancia de Looker. De forma predeterminada, corresponderá a Estados Unidos.

Instancias alojadas en Google Cloud

Las instancias alojadas en Looker se alojan en Google Cloud de forma predeterminada. Para las instancias alojadas en Google Cloud, agrega a la lista de entidades permitidas las direcciones IP que coincidan con tu región.

Haz clic aquí para obtener una lista completa de las direcciones IP de las instancias alojadas en Google Cloud

Moncks Corner, Carolina del Sur, EE.UU. (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 del Norte, EE.UU. (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, EE.UU. (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, Oregón, EE.UU. (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 Ángeles, California, EE.UU. (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

Fráncfort, Alemania (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

Bombay, 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

Puerto de Ems, Países Bajos (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

Condado de Changhua, Taiwán (asia-east1)

  • 104.199.206.209
  • 34.80.173.212
  • 35.185.137.114

Tokio, Japón (asia-northeast1)

  • 34.85.3.198
  • 34.146.68.203
  • 34.84.4.218

Jurong West, Singapur (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

Yakarta, Indonesia (asia-southeast2)

  • 34.101.158.88
  • 34.101.157.238
  • 34.101.184.52

Sídney, 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

Instancias alojadas en Amazon Elastic Kubernetes Service (Amazon EKS)

Para las instancias alojadas en Amazon EKS, agrega a la lista de entidades permitidas las direcciones IP que coincidan con tu región.

Haz clic aquí para obtener una lista completa de las direcciones IP de las instancias alojadas en Amazon EKS

Este de EE.UU. (Norte de 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

Este de EE.UU. (Ohio) (us-east-2)

  • 3.135.171.29
  • 18.188.208.231
  • 3.143.85.223

Oeste de EE.UU. (Oregón) (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 (Fráncfort) (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-Pacífico (Tokio) (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-Pacífico (Sídney) (ap-southeast-2)

  • 13.238.132.174
  • 3.105.238.71
  • 3.105.113.36

Sudamérica (São Paulo) (sa-east-1)

  • 54.232.58.181
  • 54.232.58.98
  • 177.71.134.208

Instancias alojadas en Microsoft Azure

Para las instancias alojadas en Azure, agrega a la lista de entidades permitidas las direcciones IP que coincidan con tu región.

Haz clic aquí para obtener una lista completa de las direcciones IP para las instancias alojadas en Microsoft Azure

Virginia, EE.UU. (us-east2)

  • 52.147.190.201

Hosting heredado

Usa estas direcciones IP para todas las instancias alojadas en AWS que se hayan creado antes del 07/07/2020.

Haz clic aquí para obtener una lista completa de las direcciones IP para hosting heredado

Estados Unidos (configuración predeterminada de 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

Asia

  • 52.68.85.40
  • 52.68.108.109

Irlanda

  • 52.16.163.151
  • 52.16.174.170

Alemania

  • 18.196.243.94
  • 18.184.246.171

Australia

  • 52.65.128.170
  • 52.65.124.87

Sudamérica

  • 52.67.8.103
  • 54.233.74.59

Paso 3: Tunelización SSH

Si la pestaña Servidores SSH está habilitada, sigue las instrucciones de esta página para agregar la información de configuración de tu servidor SSH a Looker.

La opción Servidor SSH está disponible si la instancia se implementa en la infraestructura de Kubernetes y solo si se habilitó la capacidad de agregar información de configuración del servidor SSH a tu instancia de Looker. Si esta opción no está habilitada en tu instancia de Looker y quieres habilitarla, comunícate con un especialista en ventas de Google Cloud o abre una solicitud de asistencia.

En la página Conexiones de la sección Administrador de Looker, selecciona la pestaña Servidor SSH.

Luego, selecciona Agregar servidor. Looker muestra la página Agregar servidor SSH:

  1. Ingresa un nombre para la configuración del servidor SSH.
  2. Selecciona Descargar clave para descargar la clave pública en un archivo de texto. Asegúrate de guardar este archivo, ya que más adelante deberás agregar la clave pública al archivo de claves autorizadas de tu servidor SSH.
  3. Ingresa el nombre de usuario que usará Looker para conectarse al servidor SSH.
  4. Ingresa el nombre de host o la dirección IP del servidor SSH.
  5. Ingresa el número de puerto que se usó para conectarse al servidor SSH.

Paso 4: Prepara el host del túnel

Agrega la clave pública a tu archivo authorized_keys

Para autenticar la sesión del túnel SSH, Looker requiere una clave pública única (Looker no admite el acceso con una contraseña). Si la pestaña SSH Servers está habilitada en tu instancia, puedes descargar la clave pública en un archivo de texto seleccionando el botón Download Key cuando ingreses la información de configuración de SSH. Si configuras tu túnel SSH con la ayuda de un analista de Looker, este te proporcionará una clave pública única.

Deberás preparar tu host (ya sea el servidor de la base de datos o el servidor del túnel). Para ello, crea un usuario de looker y agrega la clave pública de Looker al archivo .ssh/authorized_keys de Looker. A continuación, te indicamos cómo hacerlo:

  1. En tu línea de comandos, crea un grupo llamado looker:

    sudo groupadd looker
    
  2. Crea el usuario looker y su directorio principal:

    sudo useradd -m  -g looker  looker
    
  3. Cambia al usuario looker.

    sudo su - looker
    
  4. Crea el directorio .ssh:

    mkdir ~/.ssh
    
  5. Configura los permisos:

    chmod 700 ~/.ssh
    
  6. Cambia al directorio .ssh:

    cd ~/.ssh
    
  7. Crea el archivo authorized_keys:

    touch authorized_keys
    
  8. Configura los permisos:

    chmod 600 authorized_keys
    

Con tu editor de texto favorito, agrega la clave SSH que te proporcionó tu analista de Looker al archivo authorized_keys. La clave debe estar en una sola línea. En algunos casos, cuando recuperes la clave de tu correo electrónico, tu cliente de correo electrónico insertará saltos de línea. Si no los quitas, será imposible establecer el túnel SSH.

Agrega ssh-rsa a tu archivo sshd_config

OpenSSH inhabilitó ssh-rsa de forma predeterminada, lo que puede causar errores cuando se configura un túnel SSH. Para resolver este problema, agrega ssh-rsa a la lista de algoritmos aceptados de tu servidor. A continuación, te indicamos cómo hacerlo:

  1. Edita el archivo sshd_config. Por lo general, puedes encontrarlo en ~/etc/ssh/sshd_config.
  2. Agrega lo siguiente a tu archivo sshd_config:

       HostKeyAlgorithms +ssh-rsa
       PubKeyAcceptedAlgorithms +ssh-rsa
    

Notas de seguridad del túnel

Cuando un túnel SSH finaliza en el servidor de la base de datos, la conexión de Looker parece ser una conexión local en el servidor de la base de datos. Por lo tanto, elimina los mecanismos de seguridad basados en la conexión integrados en las plataformas de bases de datos como MySQL. Por ejemplo, es muy común que el acceso local se otorgue al usuario root sin contraseña.

De forma predeterminada, abrir el acceso SSH también permite reenviar cualquier puerto, lo que elude los firewalls entre Looker y el host de la base de datos que finaliza el túnel SSH. Este riesgo de seguridad puede considerarse inaceptable. Esta redirección de puertos y la capacidad de acceder al servidor de tu túnel se pueden controlar configurando de forma correcta la entrada .ssh/authorized_keys para la clave pública de Looker.

Por ejemplo, el siguiente texto podría anteponerse a la clave SSH de Looker en tu archivo authorized_keys. Ten en cuenta que este texto DEBE personalizarse para tu entorno.

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

Consulta la documentación de Linux de man ssh y man authorized_keys para ver ejemplos y detalles completos.

Próximos pasos

Si la pestaña SSH Servers está habilitada en tu instancia, regresa a la página Add SSH Server y selecciona Test & Request Fingerprint para verificar tu conexión al servidor SSH. Looker mostrará una pantalla con la nueva configuración de SSH y las opciones para descargar o ver la clave pública, así como la huella digital única de la configuración del servidor SSH.

Luego, en la página Configuración de conexión de tu base de datos, haz lo siguiente:

  1. Habilita el botón de activación Servidor SSH y selecciona la configuración de tu servidor SSH en la lista desplegable.
  2. En los campos Host remoto y Puerto, ingresa la dirección IP o el nombre de host y el número de puerto de tu base de datos.

Las conexiones a bases de datos que usan un túnel SSH no pueden aplicar un atributo de usuario a los campos Host remoto y Puerto.

Si estás configurando tu túnel SSH con la ayuda de un analista de Looker, avísale que ya puedes probarlo. Una vez que confirme que se estableció el túnel, te proporcionará el número de puerto del lado de Looker del túnel SSH.

Luego, en la página Configuración de conexión de tu base de datos, haz lo siguiente:

  1. Ingresa localhost en el campo Host remoto.
  2. En el campo Puerto, ingresa el número de puerto del lado de Looker del túnel SSH que proporcionó el analista de Looker.
  3. Desactiva Verificar certificado SSL en la página Conexiones de tu base de datos.

    Los certificados SSL no son compatibles cuando se configura un túnel SSH hacia tu base de datos desde Looker. En cambio, la clave SSH que agregaste en el paso 4 proporciona la seguridad del protocolo de enlace entre Looker y tu base de datos.