AWS Transfer Family 서버 엔드포인트 시작하기 - AWS Transfer Family

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

AWS Transfer Family 서버 엔드포인트 시작하기

이 자습서를 사용하여 AWS Transfer Family (Transfer Family)를 시작합니다. Amazon S3 스토리지를 사용하여 공개적으로 액세스할 수 있는 엔드포인트가 있는 SFTP지원 서버를 생성하고, 서비스 관리형 인증을 사용하여 사용자를 추가하고, Cyberduck을 사용하여 파일을 전송하는 방법을 알아봅니다.

사전 조건

시작하기 전에 먼저 사전 조건 요건을 충족해야 합니다. 이 설정의 일부로 Amazon Simple Storage Service(Amazon S3) 버킷과 AWS Identity and Access Management (IAM) 사용자 역할을 생성합니다.

AWS Transfer Family 콘솔을 사용하려면 권한이 필요하며, Amazon Simple Storage Service, Amazon Elastic File System AWS Certificate Manager, Amazon Route 53과 같이 Transfer Family가 사용하는 다른 AWS 서비스를 구성하는 데 필요한 권한이 있습니다. 예를 들어 Transfer Family를 AWS 사용하여 파일을 로 또는 밖으로 전송하는 사용자의 경우 AmazonS3FullAccess는 Amazon S3 버킷을 설정하고 사용할 수 있는 권한을 부여합니다. Amazon S3 버킷을 생성하려면 이 정책의 일부 권한이 필요합니다.

Transfer Family 콘솔을 사용하려면 다음이 필요합니다.

  • AWSTransferConsoleFullAccess 는 SFTP 사용자가 Transfer Family 리소스를 생성할 수 있는 권한을 부여합니다.

  • IAMFullAccess (또는 특히 IAM 역할 생성을 허용하는 정책)은 Transfer Family가 Amazon CloudWatch Logs에서 서버의 로깅 역할 또는 서버에 로그인하는 사용자의 사용자 역할을 자동으로 생성하도록 하려는 경우에만 필요합니다.

  • VPC 서버 유형을 생성하고 삭제하려면 ec2:CreateVpcEndpointec2:DeleteVpcEndpoints 작업을 정책에 추가해야 합니다.

참고

AmazonS3FullAccessIAMFullAccess 정책 자체는 의 일반적인 사용에 필요하지 않습니다 AWS Transfer Family. 여기에는 필요한 모든 권한이 포함되는지 확인할 수 있는 간단한 방법이 나와 있습니다. 또한 모든 AWS 고객이 사용할 수 있는 표준 정책인 AWS 관리형 정책입니다. 이러한 정책의 개별 권한을 보고 목적에 필요한 최소 권한을 결정할 수 있습니다.

1단계: AWS Transfer Family 콘솔에 로그인

Transfer Family에 로그인하려면
  1. 에 로그인 AWS Management Console 하고 에서 AWS Transfer Family 콘솔을 엽니다https://console.aws.amazon.com/transfer/.

  2. 계정 ID 또는 별칭에 AWS 계정사용자 ID를 입력합니다.

  3. IAM 사용자 이름 에 Transfer Family에 대해 생성한 사용자 역할의 이름을 입력합니다.

  4. 암호 에 AWS 계정 암호를 입력합니다.

  5. 로그인을 선택합니다.

2단계: SFTP활성화된 서버 생성

Secure Shell (SSH) 파일 전송 프로토콜(SFTP)은 인터넷을 통한 데이터 보안 전송에 사용되는 네트워크 프로토콜입니다. 프로토콜은 의 전체 보안 및 인증 기능을 지원합니다SSH. 금융 서비스, 의료, 소매 및 광고와 같은 다양한 산업의 사업 파트너 간의 민감한 정보를 비롯한 데이터를 교환하는 데 널리 사용됩니다.

SFTP활성화 서버를 생성하려면
  1. 탐색 창에서 서버를 선택한 다음 서버 생성을 선택합니다.

  2. 프로토콜 선택 에서 SFTP를 선택한 다음 다음 를 선택합니다.

  3. 자격 증명 제공자 선택에서 Transfer Family에 사용자 ID 및 키를 저장하도록 관리 서비스를 선택한 후 다음을 선택합니다.

  4. 엔드포인트 선택에서 다음을 수행합니다.

    1. 엔드포인트 타입으로는 공적으로 액세스 가능 엔드포인트 타입을 선택합니다.

    2. 사용자 지정 호스트 이름의 경우 없음을 선택합니다.

    3. 다음을 선택합니다.

  5. 도메인 선택에서 Amazon S3를 선택합니다.

  6. 추가 상세 정보 구성에서 다음을 수행합니다.

    1. CloudWatch 로깅의 경우 새 역할을 생성할 수 있는 적절한 권한이 있는 한 Transfer Family가 IAM 자동으로 역할을 생성하도록 허용하려면 새 역할 생성을 선택합니다. 생성된 IAM 역할을 라고 합니다AWSTransferLoggingAccess.

    2. 암호화 알고리즘 옵션의 경우 서버에서 사용하도록 설정된 암호화 알고리즘이 포함된 보안 정책을 선택합니다. 기본 보안 정책은 TransferSecurityPolicy-2020-06입니다.

    3. Next(다음)를 선택합니다.

  7. 검토 및 생성에서 서버 생성을 선택합니다. 서버 페이지로 이동합니다.

새 서버 상태가 온라인으로 변경되기까지 몇 분 정도 걸릴 수 있습니다. 이때 서버에서 파일 작업을 수행할 수 있지만 먼저 사용자를 만들어야 합니다.

3단계: 서비스 관리 사용자 추가

SFTP활성화된 서버에 사용자를 추가하려면
  1. 서버 페이지에서 사용자를 추가할 서버의 확인란을 선택합니다.

  2. 사용자 추가를 선택합니다.

  3. 사용자 구성 섹션의 사용자 이름에 사용자 이름을 입력합니다. 이 사용자 이름은 3~100자여야 합니다. 사용자 이름에는 a~z, A~Z, 0~9, 밑줄(_)와 하이픈(-), 마침표(.) 및 골뱅이 기호(@) 등의 문자를 사용할 수 있습니다. 사용자 이름은 하이픈, 마침표 및 @ 기호로 시작할 수 없습니다.

  4. 액세스 에서 Amazon S3 버킷에 대한 액세스를 제공하는 이전에 생성한 IAM 역할을 선택합니다.

    의 절차를 사용하여 이 IAM 역할을 생성했습니다IAM 역할 및 정책 생성. 이 IAM 역할에는 Amazon S3 버킷에 대한 액세스를 제공하는 IAM 정책이 포함됩니다. 또한 다른 IAM 정책에 정의된 AWS Transfer Family 서비스와의 신뢰 관계도 포함됩니다.

    참고

    서비스 관리형 사용자의 IAM 역할에는 원하는 버킷에 액세스할 수 있는 권한이 포함되어야 합니다. 원하는 버킷에 액세스할 수 있는 권한은 S3FullAccess 리소스에 대한 관리자 수준 권한을 부여하는 S3에서 다룹니다.

  5. 정책에서 없음을 선택합니다.

  6. 홈 디렉터리 에서 Amazon S3 버킷을 선택하여 를 사용하여 전송할 데이터를 저장합니다 AWS Transfer Family. 사용자가 클라이언트를 이용해 로그인하면 도착하게 되는 home 디렉터리의 경로를 입력합니다.

    이 파라미터를 입력하지 않으면 Amazon S3 버킷의 root 디렉터리가 사용됩니다. 이 경우 IAM 역할이 이 root 디렉터리에 대한 액세스 권한을 제공하는지 확인하세요.

    참고

    사용자의 사용자 이름을 포함하는 디렉터리 경로 선택을 권장합니다. 이 경로를 통해 세션 정책을 효과적으로 사용할 수 있습니다. 세션 정책은 사용자의 home 디렉터리에 대한 Amazon S3 버킷에서의 사용자 액세스를 제한합니다.

  7. 제한됨에서 사용자가 해당 폴더 외부에 액세스할 수 없고 Amazon S3 버킷 또는 폴더 이름을 볼 수 없도록 확인란을 선택합니다.

    참고

    사용자에게 홈 디렉터리를 할당하고 해당 홈 디렉터리로 사용자를 제한하는 경우 이 정도면 지정된 폴더에 대한 사용자 액세스를 잠그기에 충분합니다. 추가 통제를 적용해야 하는 경우 세션 정책을 사용하세요.

  8. SSH 퍼블릭 키 의 경우 SSH 키 페어의 퍼블릭 SSH 키 부분을 입력합니다.

    서비스에서 사용자의 키를 확인해야 새 사용자를 추가할 수 있습니다.

    중요

    SSH 퍼블릭 키의 형식은 입니다ssh-rsa <string>. SSH 키 페어를 생성하는 방법에 대한 지침은 섹션을 참조하세요서비스 관리 사용자를 위한 SSH 키 생성.

  9. (옵션) 에 하나 이상의 태그를 키-값 쌍로 입력하고 태그 추가를 선택합니다.

  10. 추가를 선택해 새 사용자를 원하는 서버에 추가합니다.

    새 사용자는 서버 세부 정보 페이지의 사용자 섹션에 나타납니다.

4단계: 클라이언트를 사용하여 파일 전송

클라이언트에서 전송 작업을 지정하여 AWS Transfer Family 서비스를 통해 파일을 전송합니다. 는 여러 클라이언트를 AWS Transfer Family 지원합니다. 자세한 내용은 클라이언트를 사용하여 서버 엔드포인트를 통한 파일 전송을 참조하세요.

이 섹션에는 Cyberduck 및 열기 를 사용하는 절차가 포함되어 있습니다SSH.

Cyberduck 사용하기

Cyberduck을 AWS Transfer Family 사용하여 파일을 전송하려면
  1. Cyberduck 클라이언트를 엽니다.

  2. 연결 열기를 선택합니다.

  3. 연결 열기 대화 상자에서 SFTP (SSH 파일 전송 프로토콜)을 선택합니다.

  4. 서버에 서버 엔드포인트를 입력합니다. 서버 엔드포인트는 서버 세부 정보 페이지에 있습니다. SFTP, FTPS및 FTP 서버 세부 정보 보기를 참조하세요.

  5. 포트 번호 22를 입력합니다SFTP.

  6. 사용자 이름서버 엔드포인트에 대한 사용자 관리에서 생성한 사용자 이름을 입력합니다.

  7. SSH 프라이빗 키 에서 SSH 프라이빗 키를 선택하거나 입력합니다.

  8. 연결을 선택합니다.

  9. 파일 전송을 실행합니다.

    파일 위치에 따라, 다음 중 하나를 수행하세요.

    • 로컬 디렉터리(소스)에서 전송할 파일을 선택하고, Amazon S3 디렉터리(대상)로 끌어다 놓습니다.

    • Amazon S3 디렉터리(소스)에서 전송할 파일을 선택하고, 로컬 디렉터리(대상)로 끌어다 놓습니다.

열기 사용SSH

다음 지침에 따라 열기 를 사용하여 명령줄에서 파일을 전송합니다SSH.

참고

이 클라이언트는 SFTP활성화된 서버에서만 작동합니다.

OpenSSH 명령줄 유틸리티를 AWS Transfer Family 사용하여 파일을 전송하려면
  1. Linux나 Macintosh에서 명령 터미널을 엽니다.

  2. 프롬프트에서 다음 명령을 입력합니다. % sftp -i transfer-key sftp_user@service_endpoint

    앞의 명령에서 sftp_user 는 사용자 이름이고 transfer-key는 SSH 프라이빗 키입니다. 여기서 service_endpoint는 선택한 서버의 AWS Transfer Family 콘솔에 표시된 서버의 엔드포인트입니다.

    sftp 프롬프트가 나타날 것입니다.

  3. (옵션) 사용자의 홈 디렉터리를 보려면 sftp 프롬프트에 다음 명령을 입력합니다. sftp> pwd

  4. 다음 줄에 다음 텍스트를 입력합니다. sftp> cd /mybucket/home/sftp_user

    본 시작하기 실습에서는 이 Amazon S3 버킷이 파일 전송 대상입니다.

  5. 다음 줄에 다음 명령을 입력합니다. sftp> put filename.txt

    put 명령은 파일을 Amazon S3 버킷으로 전송합니다.

    파일 전송이 진행 중이거나 완료되었음을 나타내는, 다음과 비슷한 메시지가 표시됩니다.

    Uploading filename.txt to /my-bucket/home/sftp_user/filename.txt

    some-file.txt 100% 127 0.1KB/s 00:00