View a markdown version of this page

Creación de un conector SFTP con salida VPC-based - 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.

Creación de un conector SFTP con salida VPC-based

En este tema se proporcionan instrucciones paso a paso para crear conectores SFTP con conectividad de VPC. LATTICE-enabled Los conectores VPC_ utilizan Amazon VPC Lattice para dirigir el tráfico a través de su nube privada virtual, lo que permite establecer conexiones seguras a puntos finales privados o utilizar sus propias pasarelas NAT para acceder a Internet.

¿Cuándo usar la conectividad de VPC

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

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

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

  • Direcciones IP personalizadas: utilice sus propias pasarelas 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 VPC-based salida de los conectores SFTP e ilustra cómo Cross-VPC Resource Access permite conexiones seguras a través de su nube privada virtual.

Requisitos previos para los conectores VPC_ SFTP LATTICE-enabled

Antes de crear un conector VPC_ LATTICE-enabled SFTP, debe cumplir los siguientes requisitos previos:

VPC-based Cómo funciona la conectividad

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. La creas en tu 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 LATTICE-enabled conector VPC_, 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, las tablas de enrutamiento y los grupos de seguridad necesarios para los requisitos de conectividad de su 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 en 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 Lattice. create-resource-configuration Puede especificar:

    • Una dirección IP privada para puntos finales privados

    • Un nombre DNS público para terminales públicos (las direcciones IP no son compatibles con los terminales públicos)

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

importante

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

Para obtener más información sobre las configuraciones de recursos de la VPC, consulte las 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 Regiones de AWS lugares donde estén disponibles los recursos de Amazon VPC Lattice. Para obtener más información, consulte las preguntas frecuentes sobre VPC Lattice. 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 VPC_ SFTP LATTICE-enabled

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

Console
Para crear un conector VPC_ SFTP LATTICE-enabled
  1. Abra la consola en AWS Transfer Family . https://console.aws.amazon.com/transfer/

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

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

    Esta opción dirige el tráfico a través de su VPC mediante Amazon VPC Lattice para acceder 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 pasarelas NAT y direcciones IP elásticas. La dirección del servidor SFTP remoto se representa como una configuración de recursos en su VPC. Para obtener más información sobre las configuraciones de recursos, consulte las configuraciones de recursos para los 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 desee 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 añade al nombre 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 para acceder a los AWS Secrets Manager secretos de los usuarios de una cuenta diferente.

    • Para ver el ARN de la configuración de recursos, introduzca el ARN de la configuración de recursos de VPC Lattice 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 del conector que utilizará para incluir los eventos en 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:

    • En el caso de las credenciales del conector, elija el nombre de un código 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 usa 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 obtener el número máximo de conexiones simultáneas, elija el número de conexiones simultáneas que su conector crea con el servidor remoto (el valor predeterminado es 5).

    • (Opcional) Para las etapas de la versión secreta ordenada, introduzca una lista ordenada de las etiquetas de las etapas de la versión de Secrets Manager. El conector intenta la autenticación utilizando cada etapa en orden durante las transferencias de archivos. Si no especificas las etapas de versión, el conector solo las usaAWSCURRENT. Por ejemploAWSCURRENT, especifique si desea AWSPREVIOUS habilitar el respaldo automático durante la rotación secreta.

  6. En la sección de opciones del algoritmo criptográfico, 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. Elija Crear conector SFTP para crear el conector SFTP LATTICE-enabled VPC_.

El conector se creará con el estado PENDING Mientras se aprovisiona la asociación de recursos, lo que normalmente tarda varios minutos. Una vez que el estado cambie aACTIVE, el conector estará listo para usarse.

CLI

Utilice el siguiente comando para crear un conector VPC_ LATTICE-enabled SFTP:

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, que especifica el ARN de configuración de recursos que define el destino del servidor SFTP.

Supervisión del estado del conector de la VPC

LATTICE-enabled Los conectores VPC_ 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 usarse y puede transferir archivos.

  • ERROR: el conector no se pudo aprovisionar. Consulte 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 «El conector no está disponible» hasta que se complete el aprovisionamiento.

Limitaciones y consideraciones

  • Terminales públicos: cuando te conectes a puntos finales públicos a través de una VPC, debes proporcionar un nombre de DNS en la configuración de recursos. No se admiten las direcciones IP públicas.

  • Disponibilidad regional: la conectividad de la VPC está disponible en algunos lugares. Regiones de AWS Cross-region No se admite el uso compartido de recursos.

  • Requisitos de la zona de disponibilidad: las pasarelas de recursos deben estar asociadas a subredes en 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 de 350 conexiones por recurso con un tiempo de espera de inactividad de 350 segundos para las conexiones TCP.

Consideraciones sobre costos

No hay cargos adicionales que vayan 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 por compartir 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 cómo crear 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 y 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 su VPC.

Requisitos previos
  1. Cree una puerta de enlace 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 VPC_ LATTICE-enabled
  1. Cree el conector SFTP con conectividad 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 que provienen de la dirección IP de Resource Gateway dentro del rango de CIDR de su VPC.

Ejemplo: punto final público a través de una VPC

Este ejemplo muestra cómo enrutar las conexiones a un servidor SFTP público a través de su VPC para aprovechar los controles de seguridad centralizados y usar sus propias direcciones IP de NAT Gateway.

Requisitos previos
  1. Crea una puerta de enlace de recursos en tu 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 terminales 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 a su puerta de enlace de recursos y, luego, a través de su puerta de enlace NAT para llegar al servidor SFTP público. El servidor remoto verá la dirección IP elástica de su NAT Gateway como fuente.

Ejemplo: punto final Cross-account privado

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

nota

Si ya tienes habilitado el uso compartido de recursos entre VPC mediante otros mecanismos, por ejemplo, no necesitas configurar el uso compartido de recursos que se describe aquí. AWS Transit Gateway Los conectores SFTP utilizan automáticamente los mecanismos de enrutamiento existentes, como las tablas de rutas 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): comparta la configuración de recursos
  1. Cree la puerta de enlace 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 (consumidor de recursos): acepte y use el recurso compartido
  1. Acepta 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 VPC_LATTICE-enabled :

  • El conector está bloqueado en estado PENDIENTE: compruebe que su Resource Gateway esté ACTIVO y tenga subredes en las zonas de disponibilidad compatibles. Si el conector sigue atascado 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 terminales 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.

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