View a markdown version of this page

Tutorial: Configurar el acceso a una red privada mediante un AWS Client VPN - Amazon Managed Workflows para Apache Airflow

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Tutorial: Configurar el acceso a una red privada mediante un AWS Client VPN

En este tutorial, se explican los pasos necesarios para crear un túnel de VPN desde su equipo hasta el servidor web de Apache Airflow para su entorno de Amazon Managed Workflows para Apache Airflow. Para conectarte a Internet a través de un túnel VPN, primero tendrás que crear un AWS Client VPN punto final. Una vez configurado, un punto de conexión Client VPN actúa como servidor VPN, lo que permite una conexión segura desde el equipo a los recursos de la VPC. A continuación, se conectará a la Client VPN desde su equipo mediante la AWS Client VPN para escritorio.

nota

Este tutorial se aplica al modo de acceso a la red privada. Si eliges el acceso a redes públicas y privadas, no necesitas una VPN para acceder a la interfaz de usuario de Apache Airflow, ya que se puede acceder a ella a través de Internet.

Red privada

En este tutorial, se asume que ha elegido el modo de acceso red privada para su servidor web de Apache Airflow.

Esta imagen muestra la arquitectura de un entorno de Amazon MWAA con acceso a una red privada.

El modo de acceso de red privada limita el acceso a la UI de Apache Airflow a los usuarios de su Amazon VPC a los que se les ha concedido acceso a la política de IAM de su entorno.

Al crear un entorno con acceso a una red privada, debe empaquetar todas sus dependencias en un archivo de Python wheel (.whl) y, a continuación, hacer referencia a él en su. .whl requirements.txt Para obtener instrucciones sobre cómo empaquetar e instalar sus dependencias mediante el archivo wheel, consulte cómo administrar dependencias con archivos wheel de Python.

En la siguiente imagen, se muestra dónde se encuentra la opción de red privada en la consola de Amazon MWAA.

En la imagen, se muestra dónde se encuentra la opción de red privada en la consola de Amazon MWAA.

Casos de uso

Puede utilizar este tutorial antes o después de haber creado un entorno Amazon MWAA. Debe usar la misma Amazon VPC, los mismos grupos de seguridad de VPC y las mismas subredes privadas que su entorno. Si usa este tutorial después de haber creado un entorno de Amazon MWAA, una vez que haya completado los pasos, podrá volver a la consola de Amazon MWAA y cambiar el modo de acceso al servidor web Apache Airflow a red privada.

Antes de empezar

  1. Compruebe los permisos de usuario. Asegúrate de que tu cuenta en AWS Identity and Access Management (IAM) tenga los permisos suficientes para crear y administrar los recursos de la VPC.

  2. Utilice su VPC de Amazon MWAA. En este tutorial, se asume que está asociando la Client VPN a una VPC existente. La Amazon VPC debe estar en el Región de AWS mismo entorno que un Amazon MWAA y tener dos subredes privadas. Si no ha creado una Amazon VPC, utilice la plantilla en. CloudFormation Opción tres: crear una red de Amazon VPC sin acceso a Internet

Objetivos

En este tutorial, hará lo siguiente:

  1. Cree un AWS Client VPN punto final con una CloudFormation plantilla para una Amazon VPC existente.

  2. Genere certificados y claves de servidor y cliente y, a continuación, cargue el certificado y la clave del servidor AWS Gestor de certificados en el Región de AWS mismo entorno que en un entorno de Amazon MWAA.

  3. Descargar y modificar un archivo de configuración de punto de conexión de Client VPN para su Client VPN y utilizar el archivo para crear un perfil de VPN para conectarse mediante Client VPN para escritorio.

(Opcional) Paso uno: identificar la VPC, las reglas de CIDR y la seguridad de la VPC

En la siguiente sección, se describe cómo encontrar los ID de su Amazon VPC, su grupo de seguridad de VPC y una forma de identificar las reglas de CIDR que necesitará para crear su Client VPN en los pasos siguientes.

Identificación de las reglas de su CIDR

En la siguiente sección, se muestra cómo identificar las reglas de su CIDR, que necesitará para crear su Client VPN.

Identificación del CIDR de su Client VPN
  1. Abra la página Sus Amazon VPC en la consola de Amazon VPC.

  2. Utilice el selector de región de la barra de navegación para elegir lo Región de AWS mismo que un entorno de Amazon MWAA.

  3. Elija su Amazon VPC.

  4. Supongamos que los CIDR de sus subredes privadas son:

    • Subred privada 1: 10.192.10.0 /24

    • Subred privada 2: 10.192.11.0 /24

    Si el CIDR de su Amazon VPC es 10.192.0.0/16, el CIDR de IPv4 de cliente que especificaría para su VPN de cliente sería 172.16.0.0. /22

  5. Guarde este valor de CIDR y el valor de su ID de VPC para los pasos siguientes.

Identifique su VPC y los grupos de seguridad

En la siguiente sección, se muestra cómo encontrar el identificador de VPC de Amazon y de sus grupos de seguridad, que necesitará para crear su Client VPN.

nota

Puede que esté usando varios grupos de seguridad. Deberá especificar todos los grupos de seguridad de la VPC en los pasos siguientes.

Pasos para identificar los grupos de seguridad
  1. Abra la página Grupos de seguridad en la consola de Amazon VPC.

  2. En la barra de navegación, use el selector de región para elegir la Región de AWS.

  3. Busque la VPC de Amazon en el identificador de la VPC e identifique los grupos de seguridad asociados a la VPC.

  4. Guarde el identificador de sus grupos de seguridad y de la VPC para los pasos siguientes.

Paso dos: crear los certificados de servidor y cliente

Los puntos de enlace de Client VPN solo admiten claves RSA con un tamaño de 1024 bits y 2048 bits. En la siguiente sección se explica cómo usar OpenVPN easy-rsa para generar los certificados y las claves del servidor y del cliente y, a continuación, cargar los certificados en ACM mediante el (). AWS Command Line Interface AWS CLI

Creación de certificados de cliente
  1. Siga estos pasos rápidos para crear y cargar los certificados en ACM mediante la sección Autenticación y autorización del AWS CLI cliente: Autenticación mutua.

  2. En estos pasos, debe especificar lo Región de AWS mismo que un entorno de Amazon MWAA en el AWS CLI comando al cargar los certificados de servidor y cliente. A continuación, se muestran algunos ejemplos de cómo especificar la región en estos comandos:

    1. ejemplo región para el certificado de servidor
      aws acm import-certificate --certificate fileb://server.crt --private-key fileb://server.key --certificate-chain fileb://ca.crt --region us-west-2
    2. ejemplo región para el certificado de cliente
      aws acm import-certificate --certificate fileb://client1.domain.tld.crt --private-key fileb://client1.domain.tld.key --certificate-chain fileb://ca.crt --region us-west-2
    3. Tras estos pasos, guarde el valor devuelto en la AWS CLI respuesta para los ARN del certificado de servidor y del certificado de cliente. Especificará estos ARN en su CloudFormation plantilla para crear la VPN de cliente.

  3. En estos pasos, se guardan un certificado de cliente y una clave privada en su equipo. A continuación, se muestra un ejemplo de dónde encontrar estas credenciales:

    1. ejemplo en macOS

      En macOS, el contenido se guarda en /Users/your-user/custom_folder. Si incluye todos los contenidos (ls -a) de este directorio, debería ver algo parecido a lo siguiente:

      . .. ca.crt client1.domain.tld.crt client1.domain.tld.key server.crt server.key
    2. Tras estos pasos, guarde el contenido o anote la ubicación del certificado de cliente en client1.domain.tld.crt y la clave privada en client1.domain.tld.key. Deberá agregar estos valores al archivo de configuración de su Client VPN.

Paso tres: Guarde el CloudFormation plantilla localmente

La siguiente sección contiene la CloudFormation plantilla para crear la VPN de cliente. Debe especificar la misma VPC de Amazon, los mismos grupos de seguridad de VPC y las mismas subredes privadas que su entorno Amazon MWAA.

  • Copie el contenido de la siguiente plantilla y guárdelo localmente como mwaa_vpn_client.yaml. También puede descargar la plantilla.

    Sustituya los valores siguientes:

    • YOUR_CLIENT_ROOT_CERTIFICATE_ARN: el ARN de su certificado client1.domain.tld en ClientRootCertificateChainArn.

    • YOUR_SERVER_CERTIFICATE_ARN: el ARN del certificado de su servidor en ServerCertificateArn.

    • La regla CIDR de IPv4 del cliente en ClientCidrBlock. Se proporciona una regla CIDR de 172.16.0.0/22. Este rango no debe superponerse a su CIDR de Amazon VPC.

    • Su ID de Amazon VPC en VpcId. Se proporciona un VPC de vpc-010101010101.

    • Sus identificadores de grupo de seguridad de VPC en SecurityGroupIds. Se proporciona un grupo de seguridad de sg-0101010101.

    AWSTemplateFormatVersion: 2010-09-09 Description: This template deploys a VPN Client Endpoint. Resources: ClientVpnEndpoint: Type: 'AWS::EC2::ClientVpnEndpoint' Properties: AuthenticationOptions: - Type: "certificate-authentication" MutualAuthentication: ClientRootCertificateChainArn: "YOUR_CLIENT_ROOT_CERTIFICATE_ARN" ClientCidrBlock: 172.16.0.0/22 ClientConnectOptions: Enabled: false ConnectionLogOptions: Enabled: false Description: "MWAA Client VPN" DnsServers: [] SecurityGroupIds: - sg-0101010101 SelfServicePortal: '' ServerCertificateArn: "YOUR_SERVER_CERTIFICATE_ARN" SplitTunnel: true TagSpecifications: - ResourceType: "client-vpn-endpoint" Tags: - Key: Name Value: MWAA-Client-VPN TransportProtocol: udp VpcId: vpc-010101010101 VpnPort: 443
nota

Si utiliza más de un grupo de seguridad para su entorno, puede especificar varios grupos de seguridad en el siguiente formato:

SecurityGroupIds: - sg-0112233445566778b - sg-0223344556677889f

Paso cuatro: crear la VPN de cliente CloudFormation pila

Para crear el AWS Client VPN
  1. Abra la consola de AWS CloudFormation.

  2. Seleccione La plantilla está lista y Cargar un archivo de plantilla.

  3. Seleccione Elegir archivo y seleccione su archivo mwaa_vpn_client.yaml.

  4. Seleccione Siguiente, Siguiente.

  5. Seleccione la casilla de confirmación y, a continuación, Crear pila.

Paso cinco: asociar subredes a su Client VPN

Para asociar subredes privadas a AWS Client VPN
  1. Abra la consola de Amazon VPC.

  2. Seleccione la página Puntos de enlace de Client VPN.

  3. Seleccione su Client VPN y, a continuación, elija la pestaña Asociaciones, Asociar.

  4. Elija lo siguiente en la lista desplegable:

    • Su Amazon VPC en VPC.

    • Una de sus subredes privadas en Elegir una subred para asociar.

  5. Elija Asociar.

nota

La VPC y la subred tardan varios minutos en asociarse a Client VPN.

Paso seis: agregar una regla de entrada de autorizaciones al Client VPN

Debe agregar una regla de entrada de autorización mediante la regla CIDR para su VPC a su Client VPN. Si desea autorizar a usuarios o grupos específicos de su grupo o proveedor de SAML-based identidad (IdP) de Active Directory, consulte las reglas de autorización de la guía de VPN para clientes.

Para agregar el CIDR al AWS Client VPN
  1. Abra la consola de Amazon VPC.

  2. Seleccione la página Puntos de enlace de Client VPN.

  3. Seleccione su Client VPN y, a continuación, elija la pestaña Autorización, Autorizar entrada.

  4. Especifique lo siguiente:

    • La regla CIDR de su Amazon VPC en Red de destino que se habilitará. Por ejemplo:

      10.192.0.0/16
    • En Conceder acceso a, elija Permitir el acceso a todos los usuarios.

    • En Descripción, escriba un nombre descriptivo.

  5. Seleccione Agregar regla de autorización.

nota

En función de los componentes de red de su Amazon VPC, es posible que también necesite añadir esta regla de autorización de ingreso a la lista de control de acceso a la red (NACL).

Paso siete: descargar el archivo de configuración del punto de conexión de Client VPN

Cómo descargar el archivo de configuración
  1. Siga estos pasos rápidos para descargar el archivo de configuración de Client VPN en Descargar el archivo de configuración de punto de conexión de Client VPN.

  2. En estos pasos, se le pedirá que añada una cadena al nombre de DNS del punto de conexión de Client VPN. A continuación se muestra un ejemplo:

    1. ejemplo nombre de DNS del punto de conexión

      Si el nombre de DNS del punto de conexión de Client VPN tiene el siguiente aspecto:

      remote cvpn-endpoint-0909091212aaee1.prod.clientvpn.us-west-1.amazonaws.com 443

      Puede agregar una cadena para identificar el punto de conexión de Client VPN de la siguiente manera:

      remote mwaavpn.cvpn-endpoint-0909091212aaee1.prod.clientvpn.us-west-1.amazonaws.com 443
  3. En estos pasos, se le pide que agregue el contenido del certificado de cliente entre un nuevo conjunto de etiquetas <cert></cert> y el contenido de la clave privada entre un nuevo conjunto de etiquetas <key></key>. A continuación se muestra un ejemplo:

    1. Abra un símbolo del sistema y cambie los directorios a la ubicación del certificado de cliente y la clave privada.

    2. ejemplo macOS client1.domain.tld.crt

      Para mostrar el contenido del archivo client1.domain.tld.crt en macOS, puede usar cat client1.domain.tld.crt.

      Copie el valor del terminal y péguelo en downloaded-client-config.ovpn así:

      ZZZ1111dddaBBB -----END CERTIFICATE----- </ca> <cert> -----BEGIN CERTIFICATE----- YOUR client1.domain.tld.crt -----END CERTIFICATE----- </cert>
    3. ejemplo macOS client1.domain.tld.key

      Para mostrar el contenido de client1.domain.tld.key, puede utilizar cat client1.domain.tld.key.

      Copie el valor del terminal y péguelo en downloaded-client-config.ovpn así:

      ZZZ1111dddaBBB -----END CERTIFICATE----- </ca> <cert> -----BEGIN CERTIFICATE----- YOUR client1.domain.tld.crt -----END CERTIFICATE----- </cert> <key> -----BEGIN CERTIFICATE----- YOUR client1.domain.tld.key -----END CERTIFICATE----- </key>

Paso ocho: conéctese al AWS Client VPN

El cliente para AWS Client VPN se proporciona de forma gratuita. Puede conectar su computadora directamente AWS Client VPN para disfrutar de una experiencia de VPN de extremo a extremo.

Conexión a Client VPN
  1. Descargue e instale AWS Client VPN para escritorio.

  2. Abre el AWS Client VPN.

  3. Seleccione Archivo, Perfiles administrados en el menú del cliente VPN.

  4. Seleccione Agregar perfil y, a continuación, elija downloaded-client-config.ovpn.

  5. Introduzca un nombre descriptivo en Nombre público.

  6. Seleccione Agregar perfil, Listo.

  7. Elija Conectar.

Después de conectarse a Client VPN, tendrá que desconectarse de otras VPN para ver cualquiera de los recursos de su VPC de Amazon.

nota

Es posible que tenga que salir del cliente y empezar de nuevo antes de poder conectarse.

Siguientes pasos