Cerrar
InicioAzureAzure: Private Link

Azure: Private Link

Recientemente Microsoft ha publicado Private Link como GA (regiones habilitadas: Productos disponibles por región), algo que nos permite securizar el acceso a servicios PaaS de Azure. Dentro de los servicios disponibles vía Private Link tenemos los siguientes:

  • Servicios Private Link detrás de Standard Load Balancer
  • Azure Storage
  • Azure Data Lake Storage Gen2
  • Azure SQL Database
  • Azure SQL Data Warehouse
  • Azure Cosmos DB
  • Azure Database for PostgreSQL: servidor único
  • Azure Database for MySQL
  • Azure Database for MariaDB
  • Azure Key Vault

Todos ellos sujetos a disponibilidad geográfica: Disponibilidad , para este artículo voy a mostrar como podemos conectarnos a una cuenta de almacenamiento vía vNet de Azure y desde On-Premises, evitando así conectarnos desde Internet a dichas cuentas.

Antes de nada, aquí tenemos la descripción de las ventajas de Private Link de MSFT:

  • Acceso privado a servicios en la plataforma Azure: conecte la red virtual a los servicios que se ejecutan en Azure de forma privada sin necesidad de una dirección IP pública en el origen o el destino. Los proveedores de servicios pueden representar los servicios de forma privada en su propia red virtual y los consumidores pueden acceder a esos servicios de forma privada en su red virtual local. La plataforma Private Link administrará la conectividad entre el consumidor y los servicios a través de la red troncal de Azure.

  • Redes locales y emparejadas: acceda a los servicios que se ejecutan en Azure desde el entorno local a través del emparejamiento privado de ExpressRoute y los túneles VPN (desde el entorno local) y las redes virtuales emparejadas mediante puntos de conexión privados. No es necesario configurar el emparejamiento público ni atravesar Internet para alcanzar el servicio. Esta capacidad proporciona una manera segura de migrar cargas de trabajo a Azure.
  • Protección contra la filtración de datos: con Azure Private Link, el punto de conexión privado de la red virtual se asigna a una instancia específica del recurso de PaaS del cliente, en lugar de a todo el servicio. El uso de los consumidores del punto de conexión privado solo puede conectarse al recurso específico y no a ningún otro recurso del servicio. Este mecanismo integrado proporciona protección frente a los riesgos de la filtración de datos.
  • Alcance global: conéctese de forma privada a los servicios que se ejecutan en otras regiones. Esto significa que la red virtual del consumidor podría estar en la región A y puede conectarse a los servicios detrás de Private Link en la región B.
  • Ampliación de los propios servicios: aproveche la misma experiencia y funcionalidad para presentar su propio servicio de forma privada a los consumidores de Azure. Al colocar el servicio detrás de una instancia de Standard Load Balancer, puede habilitarlo para Private Link. Después, el consumidor puede conectarse directamente al servicio mediante un punto de conexión privado en su propia red virtual. Puede administrar estas solicitudes de conexión mediante un flujo de llamadas de aprobación simple. Azure Private Link funciona también para consumidores y servicios que pertenecen a distintos inquilinos de Active Directory.

Antes de continuar, aquí tenéis el coste de este servicio: Azure Private Link (Coste)

Como vemos, “básicamente” nos permite tener acceso a servicios PaaS  desde dentro de la red de Microsoft sin tener que exponerlos a Internet. Dicho esto, veamos la topología sobre la que voy trabajar en este artículo:

Lo que quiero mostrar es como conectarse a una cuenta de almacenamiento sin salir de la red de Microsoft pero desde varios puntos de conexión:

Los pasos a seguir serán los siguientes:

  • Crear una cuenta de almacenamiento
    • Probar accesos (Internet, vNet y VPN)
  • Configurar Private Link
    • Probar accesos (Internet, vNet y VPN)

Pues vamos a ello, lo primero, crear una cuenta de almacenamiento, para ello desde el Portal de Azure nos vamos a nuestro grupo de recursos donde queremos crear nuestra cuenta de almacenamiento (si lo tenemos creados, sino lo crearemos más adelante):

Pulsamos en Agregar

Escribimos Storage Account o Cuenta de Almacenamiento en el buscador

Pulsamos en Crear

Definimos un nombre (no puede existir en Azure), elegimos las características que necesitemos para nuestra cuenta y pulsamos en Siguiente: Redes >

Lo dejamos por defecto (para este artículo), pulsamos en Siguiente: Opciones avanzadas >

Habilitamos la transferencia segura y el resto lo dejaremos por defecto y pulsamos en Siguiente: Etiquetas >

Establecemos nuestras etiquetas (Azure AD: Gobernanza de Office 365 y Recursos de Azure (Parte 4)) y pulsamos en Siguiente: Revisar y crear >

Revisamos que todo esté correcto y pulsamos en Crear

Una vez creado pulsaremos en Ir al recurso  para acceder a su configuración

Si nos vamos a la sección de Propiedades podemos ver la URL del punto de conexión

Si ahora ejecutamos un nslookup con el nombre de la cuenta, podemos ver que resuelve ese registro como un alias y su dirección IP Pública

Ahora vamos a probar que tenemos acceso y que podemos subir y bajar contenido, para ello podemos utilizar AzCopy u otra herramienta gráfica como Microsoft Azure Storage ExplorerDescarga. Una vez instalado, desde la sección de Storage Accounts pulsamos con el botón secundario del ratón y pulsamos en Conectar a Azure Storage:

Elegimos que nos queremos conectar con una cadena de conexión y pulsamos en Siguiente

La cadena de conexión la conseguimos desde la sección de Claves de acceso en la configuración de la cuenta de almacenamiento, copiaremos cualquiera de las cadenas de conexión:

Ahora definimos un nombre para esta conexión y pegamos la cadena de conexión que antes hemos copiado y pulsamos en Siguiente:

Nos ofrece un resumen de la conexión y si todo está correcto, pulsamos en Conectar

Y si los datos están correctos, ya tenemos nuestra cuenta de almacenamiento conectada

Voy a crear un contenedor de blobs para subir unos ficheros

Y ahora dentro del contenedor (Folder1) pulsamos en cargar:

Buscamos los ficheros que queremos subir y pulsamos en Cargar:

En función de la conexión a Internet que tengáis pues subirá con más o menos celeridad: 

Y como podemos apreciar, la cuenta está 100% disponible y operativa, pero .. siempre a través de Internet

Pues lo comentado, hasta aquí todo fácil, operativo y aunque cifrado, las conexiones se realizan a servicios PaaS publicados en Internet y queremos que no sea así y ahí es donde entra en juego Azure Private Link.

Una vez que ya tenemos la cuenta de almacenamiento disponible (u otro servicio PaaS), veamos como configurar Private Link. Lo primero que debemos hacer (hay varias vías de acceso a lo mismo), nos vamos a Todos los servicios – Redes y elegimos Private Link:

Desde aquí podemos ver las conexiones de cada servicio (es lo que tenemos que hacer de momento):

Podemos ver todos los puntos de conexión disponibles, pero también los podemos agregar desde la opción Puntos de conexión Privados:

La creación de un punto de conexión es muy sencilla, pulsamos en Agregar (captura anterior) y ahora definimos los siguientes parámetros:

  • Suscripción donde crear el punto de conexión
  • Grupos de recursos donde crearemos el punto de conexión
  • Nombre: definimos un nombre para el punto de conexión, que sea corto y claro para que podamos distinguirlo a posteriori

Una vez cubierto todo, pulsamos en Siguiente: Recurso >

Definimos el tipo de recurso, en mi caso MicrosoftStorage/storageAccounts

Definimos el recurso a proteger, en este caso la cuenta de almacenamiento previamente creada:

Y por último el subrecurso de destino, en mi caso Blob:

Una vez que hayamos completado todo lo necesario, pulsamos en Siguiente: Configuración >

Paso importante, definimos la Red Virtual y Subred donde se creará el punto de conexión privada (luego lo comento con detalle), si tenéis una red con topología Hub-Spoke (+ NVA), se recomienda colocar estos puntos de conexión en el Hub.

Por último, vamos a definir que se integre en la zona DNS privada (sino tenemos una, se creará automáticamente). Esto es muy importante, porque nos creará un nuevo alias del registro de la cuenta pero ya con una IP Privada.

Pulsamos en Siguiente: Etiquetas >

Definimos etiquetas y pulsamos en Siguiente: Revisar y crear >

Si todo está correcto, pulsamos en Crear:

Una vez creado, podemos acceder a su configuración desde Ir al recurso

Antes de continuar con la configuración del Private Link, voy a comentaros que la cuenta de almacenamiento que yo había creado no la había filtrado (sección Firewall y redes virtuales) en cuanto a que IPs o servicios de puedan conectar, por lo que, será lo primero que haré para filtrar que nadie se pueda conectar desde Internet:

Si ahora tratamos de conectarnos desde Internet con el Microsoft Azure Explorer Storage, debemos ver que  no nos podemos conectar:

Bien, continuando con el Private Link, vemos que se le ha asignado una dirección IP de la subred de la vNet en la que lo hayamos configurado.

Y en la configuración de los puntos de conexión podemos ver nuestro Private Link y auto-probado (lo comentaré en otro artículo)

En un momento de la configuración si lo recordáis, nos comentaba la creación de un registro DNS  en la zona interna, pues si ahora volvemos a lanzar un nslookup (desde Internet ) a la cuenta de almacenamiento, veremos que sigue resolviendo con la IP Pública:

Pero desde un equipo ubicado en las vNet de Azure veremos que resuelve la cuenta de almacenamiento (sbrsaprivatelink.blob.core.windows.net) con la IP Privada que tiene asignado el punto de conexión privado (Private Link). Aquí os lo muestro en una captura de pantalla desde un equipo en Azure utlizando el Microsoft Azure Storage Explorer resolviendo ya la IP Privada (172.17.1.4 en mi caso):  

Si buscamos la zona DNS InternaPodemos ver el registro creado para el recurso de Private Link:

Como os he comentado, las conexiones a los Private Link se pueden realizar desde:

Pues bien, como llega a conectarse a otras vNet emparejadas, utilizando una vNet y además con esta ruta que os muestro a continuación desde las Rutas Eficaces de una de las vNets que tengo en Azure:  

Claramente, en función de la topología de vNets que tengamos, pues tendremos que ir configurar ciertos servicios ya previamente para la interconexión entre vNets,  lo que quiero decir, es que no hay nada que hacer adicional a esa configuración.

Si ahora, desde cualquier equipo On-Premises o desde un cliente VPN tenemos acceso a la vNet donde está el punto de conexión privado, tendremos acceso, únicamente debemos tener acceso al DNS de la zona Privada o bien configurar los DNS para resolver el registro sbrsaprivatelink.blob.core.windows.net con la IP Privada correspondiente. Si es así, como os muestro a continuación, es un equipo conectado a los servicios de Azure mediante una VPN IPSec Site-to-Site:

Comentar que, desde la cuenta de almacenamiento podemos ver las Conexiones de puntos de conexión privadas, las cuales podemos aprobar o rechazar (próximo artículo)

Como veis es muy sencillo securizar el acceso al PaaS de Azure, dejando todo el tráfico en la red de Azure o mediante acceso VPN.

Espero que, si tenéis servicios en PaaS os pongáis manos a la obra cuanto antes!!!

SharePoint le dice a
Bloquear aplicacione
NO HAY COMENTARIOS

DEJA UN COMENTARIO

Este sitio web utiliza cookies. Si continúas navegando, consideramos que aceptas su uso. Puedes obtener más información en nuestra política de cookies. ACEPTAR

Aviso de cookies
Share This