Cree un conector SFTP con salida basada en VPC - AWS Transfer Family

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.

Cree un conector SFTP con salida basada en VPC

En este tema se proporcionan step-by-step instrucciones para crear conectores SFTP con conectividad de VPC. Los conectores compatibles con VPC_Lattice utilizan Amazon VPC Lattice para enrutar el tráfico a través de su nube privada virtual, lo que permite conexiones seguras a puntos de conexión privados o utiliza sus propias puertas de enlace NAT para el acceso a Internet.

Cuándo usar la conectividad de VPC

Utilice la conectividad de VPC para los conectores SFTP en los siguientes escenarios:

  • Servidores SFTP privados: Conéctese a servidores SFTP a los que solo se puede acceder desde su VPC.

  • Conectividad local: conéctese a servidores SFTP locales mediante conexiones VPN o AWS Site-to-Site Direct AWS Connect.

  • Direcciones IP personalizadas: utilice sus propias puertas de enlace NAT y direcciones IP elásticas, incluidos los escenarios de BYOIP.

  • Controles de seguridad centralizados: dirija las transferencias de archivos a través de los controles centrales de su organización. ingress/egress

Diagrama de arquitectura que muestra la salida basada en VPC para los conectores SFTP, que ilustra cómo el acceso a recursos entre VPC permite conexiones seguras a través de su nube privada virtual.

Requisitos previos para los conectores SFTP compatibles con VPC_Lattice

Antes de crear un conector SFTP compatible con VPC_Lattice, debe cumplir los siguientes requisitos previos:

Cómo funciona la conectividad basada en VPC

VPC Lattice le permite compartir de forma segura los recursos de VPC con otros servicios. AWS AWS Transfer Family utiliza una red de servicios para simplificar el proceso de intercambio de recursos. Los componentes clave son:

  • Resource Gateway: sirve como punto de acceso a su VPC. Esto se crea en la VPC con un mínimo de dos zonas de disponibilidad.

  • Configuración de recursos: contiene la dirección IP privada o el nombre DNS público del servidor SFTP al que desea conectarse.

Al crear un conector compatible con VPC_Lattice, AWS Transfer Family utiliza la sesión de acceso directo (FAS) para obtener temporalmente las credenciales y asociar la configuración de recursos a nuestra red de servicios.

Pasos de configuración necesarios

  1. Infraestructura de VPC: asegúrese de tener una VPC correctamente configurada con las subredes, tablas de enrutamiento y grupos de seguridad necesarios para los requisitos de conectividad del servidor SFTP.

  2. Puerta de enlace de recursos: cree una puerta de enlace de recursos en su VPC mediante el comando VPC Lattice. create-resource-gateway La puerta de enlace de recursos debe estar asociada a subredes de al menos dos zonas de disponibilidad. Para obtener más información, consulte Resource Gateways en la Guía del usuario de Amazon VPC Lattice.

  3. Configuración de recursos: cree una configuración de recursos que represente el servidor SFTP de destino mediante el comando VPC Latticecreate-resource-configuration. Puede especificar una de las siguientes opciones:

    • Una dirección IP privada para puntos finales privados

    • Un nombre DNS público para los puntos finales públicos (las direcciones IP no se admiten en los puntos finales públicos)

  4. Credenciales de autenticación: almacene las credenciales de usuario de SFTP AWS Secrets Manager como se describe en. Almacene las credenciales de autenticación para los conectores SFTP en Secrets Manager

importante

La puerta de enlace de recursos y la configuración de recursos deben crearse en la misma AWS cuenta. Al crear una configuración de recursos, primero debe disponer de una puerta de enlace de recursos.

Para obtener más información sobre las configuraciones de recursos de VPC, consulte Configuraciones de recursos en la Guía del usuario de Amazon VPC Lattice.

nota

La conectividad de VPC para los conectores SFTP está disponible en los lugares donde estén disponibles los recursos de Regiones de AWS Amazon VPC Lattice. Para obtener más información, consulte VPC Lattice. FAQs La compatibilidad con las zonas de disponibilidad varía según la región y las pasarelas de recursos requieren un mínimo de dos zonas de disponibilidad.

Cree un conector SFTP compatible con VPC_Lattice

Tras completar los requisitos previos, puede crear un conector SFTP con conectividad de VPC mediante la AWS CLI consola de AWS administración o. AWS SDKs

Console
Para crear un conector SFTP compatible con VPC_Lattice
  1. Abra AWS Transfer Family la consola en https://console.aws.amazon.com/transfer/.

  2. En el panel de navegación izquierdo, seleccione Conectores SFTP y, a continuación, seleccione Crear conector SFTP.

  3. En la sección Configuración del conector, para el tipo de salida, elija VPC Lattice.

    Esta opción enruta el tráfico a través de la VPC mediante Amazon VPC Lattice para el acceso a los recursos entre VPC. Puede usar esta opción para conectarse a puntos finales de servidores alojados de forma privada, enrutar el tráfico a través de los controles de seguridad de su VPC o usar sus propias puertas de enlace NAT y direcciones IP elásticas. La dirección del servidor SFTP remoto se representa como una configuración de recursos en la VPC. Para obtener más información sobre las configuraciones de recursos, consulte Configuraciones de recursos para recursos de VPC en la Guía del usuario de Amazon VPC Lattice.

  4. Complete la configuración del conector:

    • Para la función de acceso, elija el nombre de recurso de Amazon (ARN) de la función AWS Identity and Access Management (IAM) que se va a utilizar.

      • Asegúrese de que este rol proporcione acceso de lectura y escritura al directorio principal de la ubicación del archivo que se utiliza en la solicitud StartFileTransfer.

      • Asegúrese de que este rol dé permiso a secretsmanager:GetSecretValue para acceder al secreto.

        nota

        En la política, debe especificar el ARN del secreto. El ARN contiene el nombre secreto, pero lo añade con seis caracteres alfanuméricos aleatorios. El ARN de un secreto tiene el siguiente formato.

        arn:aws:secretsmanager:region:account-id:secret:aws/transfer/SecretName-6RandomCharacters
      • Asegúrese de que contiene una relación de confianza que permita que el conector tenga acceso a los recursos cuando atienda las solicitudes de transferencia de sus usuarios. Para obtener más información sobre cómo establecer una relación de confianza, consulte Para establecer una relación de confianza.

      { "Version":"2012-10-17", "Statement": [ { "Sid": "AllowListingOfUserFolder", "Action": [ "s3:ListBucket", "s3:GetBucketLocation" ], "Effect": "Allow", "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket" ] }, { "Sid": "HomeDirObjectAccess", "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:DeleteObject", "s3:DeleteObjectVersion", "s3:GetObjectVersion", "s3:GetObjectACL", "s3:PutObjectACL" ], "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*" }, { "Sid": "GetConnectorSecretValue", "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue" ], "Resource": "arn:aws:secretsmanager:us-west-2:111122223333:secret:aws/transfer/SecretName-6RandomCharacters" } ] }
      nota

      Para el rol de acceso, el ejemplo concede acceso a un único secreto. Sin embargo, puede utilizar un carácter comodín, que puede ahorrarle trabajo si quiere reutilizar el mismo rol de IAM para varios usuarios y secretos. Por ejemplo, la siguiente declaración de recursos concede permisos para todos los secretos cuyos nombres comiencen por aws/transfer.

      "Resource": "arn:aws:secretsmanager:region:account-id:secret:aws/transfer/*"

      También puede almacenar los secretos que contengan sus credenciales de SFTP en otra Cuenta de AWS. Para obtener más información sobre cómo habilitar el acceso secreto entre cuentas, consulta Permisos a los AWS Secrets Manager secretos para los usuarios de otra cuenta.

    • Para el ARN de configuración de recursos, introduzca el ARN de la configuración de recursos de red de VPC que apunta a su servidor SFTP:

      arn:aws:vpc-lattice:region:account-id:resourceconfiguration/rcfg-12345678
    • (Opcional) Para la función de registro, elija la función de IAM para que el conector la utilice para enviar eventos a sus registros. CloudWatch

      { "Version":"2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "logs:CreateLogStream", "logs:DescribeLogStreams", "logs:CreateLogGroup", "logs:PutLogEvents" ], "Resource": "arn:aws:logs:*:*:log-group:/aws/transfer/*" } ] }
  5. En el panel Configuración SFTP, proporcione la siguiente información:

    • Para las credenciales de Connector, elija el nombre de un archivo secreto AWS Secrets Manager que contenga la clave privada o la contraseña del usuario de SFTP.

    • En el caso de las claves de host confiables, pegue la parte pública de la clave de host que se utiliza para identificar el servidor externo o déjela en blanco para configurarla más adelante mediante el TestConnection comando.

      Como esta clave de host es para un conector VPC_LATTICE, elimine el nombre de host de la clave

    • (Opcional) Para el número máximo de conexiones simultáneas, elija el número de conexiones simultáneas que el conector crea al servidor remoto (el valor predeterminado es 5).

  6. En la sección de opciones de algoritmos criptográficos, elija una política de seguridad de la lista desplegable.

  7. (Opcional) En la sección Etiquetas, añada etiquetas como pares clave-valor.

  8. Seleccione Crear conector SFTP para crear el conector SFTP habilitado para VPC_Lattice.

El conector se creará con el estado de PENDING mientras se aprovisiona la asociación de recursos, lo que normalmente tarda varios minutos. Cuando el estado cambie aACTIVE, el conector estará listo para su uso.

CLI

Utilice el siguiente comando para crear un conector SFTP compatible con VPC_Lattice:

aws transfer create-connector \ --url "sftp://my.sftp.server.com:22" \ --access-role arn:aws:iam::123456789012:role/TransferConnectorRole \ --sftp-config UserSecretId=my-secret-id,TrustedHostKeys="ssh-rsa AAAAB3NzaC..." \ --egress-config VpcLattice={ResourceConfigurationArn=arn:aws:vpc-lattice:us-east-1:123456789012:resourceconfiguration/rcfg-1234567890abcdef0} \ --security-policy-name TransferSecurityPolicy-2024-01

El parámetro clave para la conectividad de la VPC es --egress-config el que especifica el ARN de la configuración de recursos que define el destino del servidor SFTP.

Supervisión del estado del conector de VPC

Los conectores compatibles con VPC_Lattice tienen un proceso de configuración asíncrono. Tras la creación, supervise el estado del conector:

  • PENDIENTE: Se está aprovisionando el conector. El aprovisionamiento de la red de servicios está en curso, lo que suele tardar varios minutos.

  • ACTIVO: el conector está listo para su uso y puede transferir archivos.

  • ERROR: el conector no se pudo aprovisionar. Compruebe los detalles del error para obtener información sobre la solución de problemas.

Compruebe el estado del conector mediante el describe-connector comando:

aws transfer describe-connector --connector-id c-1234567890abcdef0

Durante el estado PENDIENTE, la test-connection API mostrará el mensaje «Conector no disponible» hasta que se complete el aprovisionamiento.

Limitaciones y consideraciones

  • Puntos finales públicos: al conectarse a puntos finales públicos a través de la VPC, debe proporcionar un nombre DNS en la configuración de recursos. No se admiten las direcciones IP públicas.

  • Disponibilidad regional: la conectividad de VPC está disponible en una selección. Regiones de AWS No se admite el uso compartido de recursos entre regiones.

  • Requisitos de la zona de disponibilidad: las pasarelas de recursos deben estar asociadas a subredes de al menos dos zonas de disponibilidad. No todas las zonas de disponibilidad admiten VPC Lattice en todas las regiones.

  • Límites de conexión: máximo 350 conexiones por recurso con un tiempo de espera de 350 segundos para las conexiones TCP.

Consideraciones sobre costos

No hay cargos adicionales más AWS Transfer Family allá de los cargos de servicio habituales. Sin embargo, los clientes pueden estar sujetos a cargos adicionales por parte de Amazon VPC Lattice relacionados con el uso compartido de sus recursos de Amazon Virtual Private Cloud y a cargos por pasarelas de NAT si utilizan sus propias pasarelas de NAT para acceder a Internet.

Para obtener información completa sobre AWS Transfer Family los precios, consulte la página de precios.AWS Transfer Family

Ejemplos de conectividad de VPC para conectores SFTP

En esta sección se proporcionan ejemplos de creación de conectores SFTP con conectividad de VPC para varios escenarios. Antes de usar estos ejemplos, asegúrese de haber completado la configuración de la infraestructura de la VPC tal como se describe en la documentación de conectividad de la VPC.

Ejemplo: conexión de punto final privado

En este ejemplo, se muestra cómo crear un conector SFTP que se conecte a un servidor SFTP privado al que solo se pueda acceder desde la VPC.

Requisitos previos
  1. Cree una pasarela de recursos en su VPC:

    aws vpc-lattice create-resource-gateway \ --name my-private-server-gateway \ --vpc-identifier vpc-1234567890abcdef0 \ --subnet-ids subnet-1234567890abcdef0 subnet-0987654321fedcba0
  2. Cree una configuración de recursos para su servidor SFTP privado:

    aws vpc-lattice create-resource-configuration \ --name my-private-server-config \ --resource-gateway-identifier rgw-1234567890abcdef0 \ --resource-configuration-definition ipResource={ipAddress="10.0.1.100"} \ --port-ranges 22
Cree el conector habilitado para VPC_Lattice
  1. Cree el conector SFTP con conectividad de VPC:

    aws transfer create-connector \ --access-role arn:aws:iam::123456789012:role/TransferConnectorRole \ --sftp-config UserSecretId=my-private-server-credentials,TrustedHostKeys="ssh-rsa AAAAB3NzaC..." \ --egress-config VpcLattice={ResourceConfigurationArn=arn:aws:vpc-lattice:us-east-1:123456789012:resourceconfiguration/rcfg-1234567890abcdef0,PortNumber=22}
  2. Supervise el estado del conector hasta que se convierta en: ACTIVE

    aws transfer describe-connector --connector-id c-1234567890abcdef0

El servidor SFTP remoto verá las conexiones procedentes de la dirección IP de Resource Gateway dentro del rango CIDR de la VPC.

Ejemplo: punto final público mediante VPC

En este ejemplo, se muestra cómo enrutar las conexiones a un servidor SFTP público a través de la VPC para aprovechar los controles de seguridad centralizados y utilizar sus propias direcciones IP de NAT Gateway.

Requisitos previos
  1. Cree una puerta de enlace de recursos en su VPC (igual que en el ejemplo de un punto final privado).

  2. Cree una configuración de recursos para el servidor SFTP público con su nombre DNS:

    aws vpc-lattice create-resource-configuration \ --name my-public-server-config \ --resource-gateway-identifier rgw-1234567890abcdef0 \ --resource-configuration-definition dnsResource={domainName="sftp.example.com"} \ --port-ranges 22
    nota

    Para los puntos finales públicos, debe usar un nombre DNS, no una dirección IP.

Creación del conector
  • Cree el conector SFTP:

    aws transfer create-connector \ --access-role arn:aws:iam::123456789012:role/TransferConnectorRole \ --sftp-config UserSecretId=my-public-server-credentials,TrustedHostKeys="ssh-rsa AAAAB3NzaC..." \ --egress-config VpcLattice={ResourceConfigurationArn=arn:aws:vpc-lattice:us-east-1:123456789012:resourceconfiguration/rcfg-0987654321fedcba0,PortNumber=22}

El tráfico fluirá desde el conector hasta la puerta de enlace de recursos y, a continuación, a través de la puerta de enlace NAT para llegar al servidor SFTP público. El servidor remoto verá la dirección IP elástica de su puerta de enlace NAT como fuente.

Ejemplo: punto final privado entre cuentas

En este ejemplo se muestra cómo conectarse a un servidor SFTP privado de una AWS cuenta diferente mediante el uso compartido de recursos.

nota

Si ya ha habilitado el uso compartido de recursos entre VPC mediante otros mecanismos, por ejemplo AWS Transit Gateway, no necesita configurar el uso compartido de recursos que se describe aquí. Los conectores SFTP utilizan automáticamente los mecanismos de enrutamiento existentes, como las tablas de enrutamiento de Transit Gateway. Solo necesita crear una configuración de recursos en la misma cuenta en la que está creando el conector SFTP.

Cuenta A (proveedor de recursos): comparte la configuración de recursos
  1. Cree la pasarela de recursos y la configuración de recursos en la cuenta A (igual que en los ejemplos anteriores).

  2. Comparta la configuración de recursos con la cuenta B mediante AWS Resource Access Manager:

    aws ram create-resource-share \ --name cross-account-sftp-share \ --resource-arns arn:aws:vpc-lattice:us-east-1:111111111111:resourceconfiguration/rcfg-1234567890abcdef0 \ --principals 222222222222
Cuenta B (consumidora de recursos): acepta y usa el recurso compartido
  1. Acepte la invitación a compartir recursos:

    aws ram accept-resource-share-invitation \ --resource-share-invitation-arn arn:aws:ram:us-east-1:111111111111:resource-share-invitation/invitation-id
  2. Cree el conector SFTP en la cuenta B:

    aws transfer create-connector \ --access-role arn:aws:iam::222222222222:role/TransferConnectorRole \ --sftp-config UserSecretId=cross-account-server-credentials,TrustedHostKeys="ssh-rsa AAAAB3NzaC..." \ --egress-config VpcLattice={ResourceConfigurationArn=arn:aws:vpc-lattice:us-east-1:111111111111:resourceconfiguration/rcfg-1234567890abcdef0,PortNumber=22}

El conector de la cuenta B ahora puede acceder al servidor SFTP privado de la cuenta A a través de la configuración de recursos compartidos.

Situaciones comunes de solución de problemas

Estas son las soluciones para los problemas más comunes al crear conectores compatibles con VPC_Lattice:

  • Conector bloqueado en estado PENDIENTE: compruebe que su Resource Gateway esté ACTIVA y que tenga subredes en las zonas de disponibilidad compatibles. Si el conector sigue bloqueado con el estado PENDIENTE, llame UpdateConnector con los mismos parámetros de configuración que utilizó inicialmente. Esto desencadena un nuevo evento de estado que podría resolver el problema.

  • Tiempos de espera de conexión: compruebe que las reglas del grupo de seguridad permiten el tráfico en el puerto 22 y que el enrutamiento de la VPC es correcto.

  • Problemas de resolución de DNS: en el caso de los puntos finales públicos, asegúrese de que su VPC tenga conectividad a Internet a través de una puerta de enlace NAT o una puerta de enlace de Internet.

  • Acceso entre cuentas denegado: compruebe que se acepta el recurso compartido y que el ARN de configuración de recursos es correcto. Si la política de permisos adecuada se adjunta a la configuración del recurso cuando la cuenta de origen crea el recurso compartido, se requieren los siguientes permisos:vpc-lattice:AssociateViaAWSService,,vpc-lattice:AssociateViaAWSService-EventsAndStates,vpc-lattice:CreateServiceNetworkResourceAssociation. vpc-lattice:GetResourceConfiguration