Usa un túnel SSH

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

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

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

El primer paso a fin de configurar el acceso de túnel SSH para tu base de datos es elegir el host que se usará para finalizar el túnel. El túnel se puede finalizar 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

Terminar en la base de datos tiene la ventaja de la simplicidad. Hay un host menos involucrado, por lo que no hay máquinas adicionales y sus costos asociados. La desventaja es que tu servidor de base de datos puede estar en una red protegida que no tiene acceso directo desde Internet.

Usa un servidor de túnel

Terminar el túnel en un servidor independiente tiene la ventaja de mantener el servidor de base de datos inaccesible desde Internet. Si el servidor del túnel se ve comprometido, es un paso que se quitó del servidor de base de datos. Te recomendamos quitar todo el software y los usuarios que no sean esenciales del servidor del túnel y supervisarlo de cerca con herramientas como un IDS.

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

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

Paso 2: Crea una lista de IP de anunciantes permitidos

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 mediante SSH, que suele estar en el puerto TCP 22.

Permita el tráfico de red de cada una de las direcciones IP enumeradas aquí para la región en la que se aloja la instancia de Looker. De manera predeterminada, este será "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.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, Virginia del Norte, EE.UU. (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, EE.UU. (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, Oregón, EE.UU. (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 Á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.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

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

Bombay, India (asia-south1)

  • 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

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
  • 35.200.82.72
  • 34.84.163.27
  • 34.85.31.212

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

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

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

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í a fin de obtener una lista completa de direcciones IP para instancias alojadas en Microsoft Azure

Virginia, EE.UU. (us-east2)

  • 52.147.190.201

Hosting heredado

Use estas direcciones IP para todas las instancias alojadas en AWS y que se crearon antes del 7 de julio de 2020.

Haz clic aquí a fin de 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: Uso de túneles SSH

Si la pestaña Servidores SSH está habilitada, siga las instrucciones de esta página para agregar la información de configuración de su 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 tu administrador de cuentas de Looker o abre una solicitud de asistencia en el Centro de ayuda de Looker.

En la página Conexiones de la sección Administrador de Looker, haz clic en la pestaña Servidor SSH:

Luego, haz clic en Agregar servidor. Looker muestra la página Agregar servidor SSH:

  1. Ingresa un nombre para la configuración del servidor SSH.
  2. Haz clic en Descargar clave para descargar la clave pública en un archivo de texto. Asegúrese de guardar este archivo, ya que deberá agregar la clave pública al archivo de claves autorizadas del servidor SSH más adelante.
  3. Ingresa el nombre de usuario que usará Looker para conectarse al servidor SSH.
  4. Ingresa la dirección IP o el nombre de host del servidor SSH.
  5. Ingresa el número de puerto que usas para conectarte 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 accesos con contraseña). Si la pestaña Servidores SSH está habilitada en su instancia, puede descargar la clave pública en un archivo de texto haciendo clic en el botón Descargar clave cuando ingrese la información de su configuración SSH. Si configuras tu túnel SSH con la asistencia de un analista de Looker, tu analista de Looker te proporcionará una clave pública única.

Deberá preparar su host (el servidor de la base de datos o el servidor del túnel) creando un usuario looker y agregando la clave pública de Looker al archivo .ssh/authorized_keys de Looker. A continuación, le indicamos cómo hacerlo:

  1. En la 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. Configurar permisos:

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

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

    touch authorized_keys
    
  8. Configurar permisos:

    chmod 600 authorized_keys
    

Con tu editor de texto favorito, agrega la llave SSH que te proporcionó tu analista de Looker al archivo authorized_keys. La clave debe estar todas en una línea. En algunos casos, cuando recuperes la clave de tu correo electrónico, el cliente de correo electrónico insertará los saltos de línea. Si no las 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, le indicamos cómo hacerlo:

  1. Edita el archivo sshd_config. Por lo general, puedes encontrarla 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 base de datos, como MySQL. Por ejemplo, es muy común que se otorgue acceso local al usuario root sin contraseña.

De forma predeterminada, abrir el acceso SSH también permite reenviar cualquier puerto, lo que evita cualquier firewall entre Looker y el host de la base de datos que finaliza el túnel SSH. Es posible que este riesgo de seguridad se considere inaceptable. Esta redirección de puertos y la capacidad de acceder a tu servidor del túnel se pueden controlar si configuras de forma adecuada la entrada .ssh/authorized_keys de la clave pública de Looker.

Por ejemplo, el siguiente texto puede anteponerse a la Llave SSH de Looker en el archivo authorized_keys. Tenga en cuenta que este texto DEBE personalizarse para su entorno.

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

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

Próximos pasos

Si la pestaña Servidores SSH está habilitada en tu instancia, regresa a la página Agregar servidor SSH y haz clic en Probar y solicitar huella digital para verificar la conexión al servidor SSH. Looker mostrará una pantalla con la nueva configuración de SSH y opciones para descargar o ver la clave pública, y ver la huella digital única de la configuración del servidor SSH.

Luego, en la página Configuración de la 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 del servidor SSH en la lista desplegable.
  2. En el campo Remote Host:Port, ingresa la dirección IP o el nombre de host y el número de puerto de la base de datos.

Las conexiones de bases de datos que usan un túnel SSH no pueden aplicar un atributo de usuario al campo Host remoto:puerto.

Si estás configurando tu túnel SSH con la ayuda de un analista de Looker, notifícale que estás listo para probar el túnel SSH. Una vez que confirme que se estableció el túnel, te proporcionará el número de puerto para el lado de Looker del túnel SSH.

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

  1. Ingresa localhost en el campo Host remoto.
  2. En el campo Puerto, ingrese el número de puerto del lado de Looker del túnel SSH que proporcionó su 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 para tu base de datos desde Looker. En cambio, la llave SSH que agregó en el paso 4 proporciona la seguridad del protocolo de enlace entre Looker y su base de datos.