Crie um conector SFTP com saída gerenciada por serviços - AWS Transfer Family

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Crie um conector SFTP com saída gerenciada por serviços

Este procedimento explica como criar conectores SFTP usando o AWS Transfer Family console ou. AWS CLI

Console
Para criar um conector STFP
  1. Abra o AWS Transfer Family console em https://console.aws.amazon.com/transfer/.

  2. No painel de navegação esquerdo, escolha Conectores SFTP e, em seguida, escolha Criar conector SFTP.

  3. Na seção Configuração do conector, em Tipo de saída, escolha Serviço gerenciado. Essa opção usa infraestrutura de saída AWS Transfer Family gerenciada. O serviço Transfer Family fornece e gerencia endereços IP estáticos para cada conector SFTP.

  4. Na seção Configuração do conector, forneça as seguintes informações:

    O console do conector SFTP Transfer Family, mostrando as configurações do Connector.
    • Para URL, insira o URL de um servidor SFTP remoto. Esse URL deve ser formatado como sftp://partner-SFTP-server-url, por exemplo, sftp://AnyCompany.com.

      nota

      Como opção, é possível fornecer um número de porta no seu URL. O formato é sftp://partner-SFTP-server-url:port-number. O número da porta padrão (quando nenhuma porta é especificada) é a porta 22.

    • Para a função Access, escolha o Amazon Resource Name (ARN) da função AWS Identity and Access Management (IAM) a ser usada.

      • Assegure que esta função forneça acesso de leitura e gravação ao diretório principal do local do arquivo usado na solicitação do StartFileTransfer.

      • Essa função deve dar permissão para secretsmanager:GetSecretValue para acessar o segredo.

        nota

        Na política, você deve especificar o ARN para o segredo. O ARN contém o nome secreto, mas acrescenta ao nome seis caracteres alfanuméricos aleatórios. Um ARN para um segredo tem o seguinte formato.

        arn:aws:secretsmanager:region:account-id:secret:aws/transfer/SecretName-6RandomCharacters
      • Certifique-se de que essa função contenha uma relação de confiança que permite que o conector acesse os recursos quando estiver atendendo ás solicitações de transferência dos seus usuários. Para obter informações sobre como estabelecer um relacionamento de confiança, consulte Estabelecer um relacionamento de confiança.

      { "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 a função de acesso, o exemplo concede acesso a um único segredo. Porém, é possível usar um caractere curinga, que pode poupar trabalho se você quiser reutilizar o mesmo perfil do IAM para vários usuários e segredos. Por exemplo, a declaração de recurso a seguir concede permissões para todos os segredos que têm nomes começando com aws/transfer.

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

      Você também pode armazenar segredos contendo suas credenciais de SFTP em outra Conta da AWS. Para obter detalhes sobre como ativar o acesso secreto entre contas, consulte Permissões para AWS Secrets Manager segredos para usuários em uma conta diferente.

  5. Conclua a configuração do conector:

    • (Opcional) Para a função Logging, escolha a função do IAM para o conector usar para enviar eventos aos seus CloudWatch registros. O exemplo de política a seguir lista as permissões necessárias para registrar eventos para conectores SFTP.

      { "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/*" } ] }
  6. No painel Configuração do SFTP, forneça as seguintes informações:

    O console do conector SFTP Transfer Family, mostrando as configurações do SFTP.
    • Para credenciais do Connector, na lista suspensa, escolha o nome de um segredo AWS Secrets Manager que contenha a chave privada ou a senha do usuário do SFTP. Você precisa criar um segredo e armazená-lo de uma maneira específica. Para obter detalhes, consulte Armazene credenciais de autenticação para conectores SFTP no Secrets Manager .

    • (Opcional) Você tem a opção de criar seu conector deixando o TrustedHostKeys parâmetro vazio. No entanto, seu conector não poderá transferir arquivos com o servidor remoto até que você forneça esse parâmetro na configuração do conector. Você pode inserir as chaves de host confiáveis no momento da criação do conector ou atualizá-lo posteriormente usando as informações da chave do host retornadas pela ação do TestConnection console ou pelo comando da API. Ou seja, para a caixa de texto Chaves de host confiáveis, você pode fazer o seguinte:

      • Forneça as chaves de host confiáveis no momento da criação do conector. Cole a parte pública da chave do host usada para identificar o servidor externo. É possível adicionar mais de uma chave escolhendo Adicionar chave de host confiável para adicionar uma chave adicional. Você pode usar o comando ssh-keyscan no servidor SFTP para recuperar a chave necessária. Para obter detalhes sobre o formato e o tipo de chaves de host confiáveis compatíveis com o Transfer Family, consulte SFTPConnectorConfig.

      • Deixe a caixa de texto Trusted Host Key (s) vazia ao criar seu conector e atualize-o posteriormente com essas informações. Se você não tiver as informações da chave do host no momento da criação do conector, deixe esse parâmetro vazio por enquanto e continue com a criação do conector. Depois que o conector for criado, use o ID do novo conector para executar o TestConnection comando, na página de detalhes do conector AWS CLI ou a partir dela. Se for bem-sucedido, TestConnection retornará as informações necessárias da chave do host. Em seguida, você pode editar seu conector usando o console (ou executando o UpdateConnector AWS CLI comando) e adicionar as informações da chave do host que foram retornadas quando você executouTestConnection.

      Importante

      Se você recuperar a chave do host do servidor remoto executandoTestConnection, certifique-se de realizar a out-of-band validação na chave retornada.

      Você deve aceitar a nova chave como confiável ou verificar a impressão digital apresentada com uma impressão digital conhecida anteriormente que você recebeu do proprietário do servidor SFTP remoto ao qual está se conectando.

    • (Opcional) Para Máximo de conexões simultâneas, na lista suspensa, escolha o número de conexões simultâneas que seu conector cria com o servidor remoto. A seleção padrão no console é 5.

      Essa configuração especifica o número de conexões ativas que seu conector pode estabelecer com o servidor remoto ao mesmo tempo. A criação de conexões simultâneas pode melhorar o desempenho do conector ao permitir operações paralelas.

  7. Na seção Opções de algoritmo criptográfico, escolha uma política de segurança na lista suspensa no campo Política de segurança. A política de segurança permite que você selecione os algoritmos criptográficos que seu conector suporta. Para obter detalhes sobre as políticas e algoritmos de segurança disponíveis, consultePolíticas de segurança para conectores AWS Transfer Family SFTP.

  8. (Opcional) Na seção Tags para Chave e Valor, insira uma ou mais tags como pares de chave/valor.

  9. Depois de confirmar todas as configurações, escolha Criar conector SFTP para criar o conector SFTP. Se o conector for criado com sucesso, uma tela será exibida com uma lista dos endereços IP estáticos atribuídos e um botão Testar conexão. Use o botão para testar a configuração do seu novo conector.

    A tela de criação do conector que aparece quando um conector SFTP é criado com sucesso. Ele contém um botão para testar a conexão e uma lista dos endereços IP estáticos gerenciados pelo serviço desse conector.

A página Conectores é exibida, com o ID do seu novo conector SFTP adicionado à lista. Para visualizar os detalhes de seus conectores, consulte Exibir detalhes do conector SFTP.

CLI

Você usa o comando create-connector para criar um conector. Para usar esse comando para criar um conector SFTP, forneça as seguintes informações.

  • O URL de um servidor SFTP remoto. Esse URL deve ser formatado como sftp://partner-SFTP-server-url, por exemplo, sftp://AnyCompany.com

  • A função de acesso. O nome do recurso da Amazon (ARN) do perfil do (IAM) AWS Identity and Access Management a ser usado.

    • Assegure que esta função forneça acesso de leitura e gravação ao diretório principal do local do arquivo usado na solicitação do StartFileTransfer.

    • Essa função deve dar permissão para secretsmanager:GetSecretValue para acessar o segredo.

      nota

      Na política, você deve especificar o ARN para o segredo. O ARN contém o nome secreto, mas acrescenta ao nome seis caracteres alfanuméricos aleatórios. Um ARN para um segredo tem o seguinte formato.

      arn:aws:secretsmanager:region:account-id:secret:aws/transfer/SecretName-6RandomCharacters
    • Certifique-se de que essa função contenha uma relação de confiança que permite que o conector acesse os recursos quando estiver atendendo ás solicitações de transferência dos seus usuários. Para obter informações sobre como estabelecer um relacionamento de confiança, consulte Estabelecer um relacionamento de confiança.

    { "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 a função de acesso, o exemplo concede acesso a um único segredo. Porém, é possível usar um caractere curinga, que pode poupar trabalho se você quiser reutilizar o mesmo perfil do IAM para vários usuários e segredos. Por exemplo, a declaração de recurso a seguir concede permissões para todos os segredos que têm nomes começando com aws/transfer.

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

    Você também pode armazenar segredos contendo suas credenciais de SFTP em outra Conta da AWS. Para obter detalhes sobre como ativar o acesso secreto entre contas, consulte Permissões para AWS Secrets Manager segredos para usuários em uma conta diferente.

  • (Opcional) Escolha a função do IAM que o conector usará para enviar eventos aos seus CloudWatch registros. O exemplo de política a seguir lista as permissões necessárias para registrar eventos para conectores SFTP.

    { "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/*" } ] }
  • Forneça as seguintes informações de configuração do SFTP.

    • O ARN de um segredo AWS Secrets Manager que contém a chave privada ou a senha do usuário do SFTP.

    • A parte pública da chave do host que é usada para identificar o servidor externo. É possível fornecer várias chaves de host confiáveis, se quiser.

    A maneira mais fácil de fornecer as informações do SFTP é salvá-las em um arquivo. Por exemplo, copie o texto de exemplo a seguir em um arquivo chamado testSFTPConfig.json.

    // Listing for testSFTPConfig.json { "UserSecretId": "arn:aws::secretsmanager:us-east-2:123456789012:secret:aws/transfer/example-username-key", "TrustedHostKeys": [ "sftp.example.com ssh-rsa AAAAbbbb...EEEE=" ] }
  • Especifique uma política de segurança para seu conector, inserindo o nome da política de segurança.

nota

SecretIdPode ser o ARN inteiro ou o nome do segredo (example-username-keyna lista anterior).

Em seguida, execute o comando a seguir para criar o conector:

aws transfer create-connector --url "sftp://partner-SFTP-server-url" \ --access-role your-IAM-role-for-bucket-access \ --logging-role arn:aws:iam::your-account-id:role/service-role/AWSTransferLoggingAccess \ --sftp-config file:///path/to/testSFTPConfig.json \ --security-policy-name security-policy-name \ --maximum-concurrent-connections integer-from-1-to-5

Quando você descreve um conector do tipo de saída VPC, a resposta inclui os novos campos:

{ "Connector": { "AccessRole": "arn:aws:iam::123456789012:role/connector-role", "Arn": "arn:aws:transfer:us-east-1:123456789012:connector/c-1234567890abcdef0", "ConnectorId": "c-1234567890abcdef0", "Status": "ACTIVE", "EgressConfig": { "VpcLattice": { "ResourceConfigurationArn": "arn:aws:vpc-lattice:us-east-1:123456789012:resourceconfiguration/rcfg-12345678", "PortNumber": 22 } }, "EgressType": "VPC", "ServiceManagedEgressIpAddresses": null, "SftpConfig": { "TrustedHostKeys": [ "ssh-rsa AAAAB3NzaC..." ], "UserSecretId": "aws/transfer/connector-secret" }, "Url": "sftp://my.sftp.server.com:22" } }

Observe que isso ServiceManagedEgressIpAddresses é nulo para conectores do tipo de saída de VPC, pois o tráfego é roteado por sua VPC em vez da infraestrutura gerenciada. AWS