AWS Transfer for 를 AWS 사용하여 온프레미스 SFTP 서버를 로 마이그레이션 SFTP - AWS 권장 가이드

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

AWS Transfer for 를 AWS 사용하여 온프레미스 SFTP 서버를 로 마이그레이션 SFTP

작성자: Akash Kumar(AWS)

환경: 프로덕션

소스: 스토리지

대상: Amazon S3

R 유형: 리호스팅

기술: 마이그레이션, 스토리지 및 백업, 웹 및 모바일 앱

AWS 서비스: Amazon S3, AWS Transfer Family, Amazon CloudWatch Logs

요약

이 패턴은 서비스용 전송을 사용하여 Secure Shell(SSH) 파일 전송 프로토콜(SFTP)을 사용하는 온프레미스 파일 전송 솔루션을 Amazon Web Services(AWS) 클라우드로 마이그레이션하는 방법을 설명합니다AWSSFTP. 사용자는 일반적으로 도메인 이름 또는 고정 IP를 통해 SFTP 서버에 연결합니다. 이 패턴은 두 경우 모두에 적용됩니다.

AWS Transfer forSFTP는 AWS Transfer Family의 구성원입니다. 를 통해 AWS 스토리지 서비스 내부 및 외부로 파일을 전송하는 데 사용할 수 있는 보안 전송 서비스입니다SFTP. Amazon Simple Storage Service(Amazon S3) 또는 Amazon Elastic File System(Amazon)SFTP에서 용 AWS 전송을 사용할 수 있습니다EFS. 이 패턴은 저장용 Amazon S3을 사용합니다.

사전 조건 및 제한 사항

사전 조건 

  • 활성 상태의 AWS 계정.

  • 기존 SFTP 도메인 이름 또는 고정 SFTP IP입니다.

제한 사항

  • 한 번의 요청으로 전송할 수 있는 최대 객체는 현재 5GiB입니다. 100MiB보다 큰 파일의 경우 Amazon S3 멀티파트 업로드 사용을 고려해 보십시오.

아키텍처

소스 기술 스택  

  • 온프레미스 플랫 파일 또는 데이터베이스 덤프 파일.

대상 기술 스택  

  • AWS 에 대한 전송 SFTP

  • Amazon S3

  • Amazon Virtual Private Cloud(AmazonVPC)

  • AWS 자격 증명 및 액세스 관리(IAM) 역할 및 정책

  • 탄력적 IP 주소

  • 보안 그룹

  • Amazon CloudWatch Logs(선택 사항)

대상 아키텍처 

AWS 클라우드 architecture diagram showing VPC with availability zones, IAM, S3 bucket, and CloudWatch Logs.

자동화 및 규모 조정

이 패턴의 대상 아키텍처를 자동화하려면 연결된 AWS CloudFormation 템플릿을 사용합니다.

  • amazon-vpc-subnets.yml 는 두 개의 퍼블릭 서브넷과 두 개의 프라이빗 서브넷으로 가상 프라이빗 클라우드(VPC)를 프로비저닝합니다.

  • amazon-sftp-server.yml 는 SFTP 서버를 프로비저닝합니다.

  • amazon-sftp-customer.yml은 사용자를 추가합니다.

도구

AWS 서비스

  • Amazon CloudWatch Logs를 사용하면 모든 시스템, 애플리케이션 및 AWS 서비스의 로그를 중앙 집중화하여 안전하게 모니터링하고 보관할 수 있습니다.

  • AWS Identity and Access Management(IAM)는 AWS 리소스에 대한 액세스를 인증하고 사용할 수 있는 권한을 부여받은 사용자를 제어하여 리소스에 대한 액세스를 안전하게 관리하는 데 도움이 됩니다.

  • Amazon Simple Storage Service(S3)는 원하는 양의 데이터를 저장, 보호 및 검색하는 데 도움이 되는 클라우드 기반 객체 스토리지 서비스입니다. 이 패턴은 Amazon S3를 File Transfer를 위한 스토리지 시스템으로 사용합니다.

  • AWS 용 전송SFTP을 사용하면 SFTP 프로토콜을 통해 AWS 스토리지 서비스로 파일을 전송하거나 전송할 수 있습니다.

  • Amazon Virtual Private Cloud(Amazon VPC)를 사용하면 정의한 가상 네트워크로 AWS 리소스를 시작할 수 있습니다. 이 가상 네트워크는 자체 데이터 센터에서 운영하는 기존 네트워크와 유사하며 의 확장 가능한 인프라를 사용하면 이점이 있습니다AWS.

에픽

작업설명필요한 기술

서브넷이 VPC 있는 를 생성합니다.

에서 Amazon VPC 콘솔을 엽니다https://console.aws.amazon.com/vpc/. 두 개의 퍼블릭 서브넷을 사용하여 가상 프라이빗 클라우드(VPC)를 생성합니다. (두 번째 서브넷은 고가용성을 제공합니다.)

- 또는 -

연결된 CloudFormation 템플릿인 를 CloudFormation 콘솔amazon-vpc-subnets.yml에 배포하여 이 에픽의 태스크를 자동화할 수 있습니다.

개발자, 시스템 관리자

인터넷 게이트웨이를 추가하십시오.

인터넷 게이트웨이를 프로비저닝하고 에 연결합니다VPC.

개발자, 시스템 관리자

기존 IP를 마이그레이션하십시오.

탄력적 IP 주소에 기존 IP를 연결합니다. 주소 풀에서 탄력적 IP 주소를 생성하여 사용하십시오.

개발자, 시스템 관리자
작업설명필요한 기술

SFTP 서버를 생성합니다.

에서 AWS Transfer Family 콘솔을 엽니다https://console.aws.amazon.com/transfer/. AWS Transfer Family 설명서의 서버에 대한 인터넷 연결 엔드포인트 생성의 지침에 따라 인터넷 연결 엔드포인트가 있는 SFTP 서버를 생성합니다. 엔드포인트 유형 에서 VPC 호스팅 을 선택합니다. 액세스 에서 인터넷 연결을 선택합니다. 에서 이전 에픽에서 VPC 생성한 를 VPC선택합니다.

- 또는 -

연결된 CloudFormation 템플릿인 를 CloudFormation 콘솔amazon-sftp-server.yml에 배포하여 이 에픽의 태스크를 자동화할 수 있습니다.

개발자, 시스템 관리자

도메인 이름을 마이그레이션합니다.

기존 도메인 이름을 사용자 지정 호스트 이름에 연결합니다. 새 도메인 이름을 사용하는 경우 Amazon Route 53DNS별칭을 사용합니다. 기존 도메인 이름에서 기타 DNS를 선택합니다. 자세한 내용은 AWS Transfer Family 설명서의 사용자 지정 호스트 이름 작업을 참조하세요.

개발자, 시스템 관리자

CloudWatch 로깅 역할을 추가합니다.

(선택 사항) CloudWatch 로깅을 활성화하려면 CloudWatch 로그 API 작업 , logs:CreateLogStream logs:DescribeLogStreamslogs:CreateLogGroupTransfer 역할을 생성합니다logs:PutLogEvents. 자세한 내용은 AWS Transfer Family 설명서의 Log activity with CloudWatch를 참조하세요.

개발자, 시스템 관리자

저장하고 제출하십시오.

저장(Save)을 선택합니다. 작업 에서 시작을 선택하고 온라인 상태로 SFTP 서버가 생성될 때까지 기다립니다.

개발자, 시스템 관리자
작업설명필요한 기술

설정을 수정할 수 있도록 서버를 중지하십시오.

AWS Transfer Family 콘솔에서 서버 를 선택한 다음 생성한 SFTP 서버를 선택합니다. 작업에서 중지를 선택합니다. 서버가 오프라인 상태이면 편집을 선택하여 설정을 수정합니다.

개발자, 시스템 관리자

가용 영역 및 서브넷을 선택합니다.

가용 영역 섹션에서 의 가용 영역 및 서브넷을 선택합니다VPC.

개발자, 시스템 관리자

탄력적 IP 주소를 추가하십시오.

IPv4 주소 에서 각 서브넷의 탄력적 IP 주소를 선택한 다음 저장을 선택합니다.

개발자, 시스템 관리자
작업설명필요한 기술

사용자가 S3 버킷에 액세스할 수 있는 IAM 역할을 생성합니다.

에 대한 IAM 역할을 생성하고 S3 버킷 이름을 리소스로 s3:PutObject 사용하여  s3:ListBucket s3:GetBucketLocation및 를 Transfer추가합니다. 자세한 내용은 AWS Transfer Family 설명서의 IAM 역할 및 정책 생성을 참조하세요.

- 또는 -

연결된 CloudFormation 템플릿인 를 CloudFormation 콘솔amazon-sftp-customer.yml에 배포하여 이 에픽의 작업을 자동화할 수 있습니다.

개발자, 시스템 관리자

S3 버킷을 생성합니다.

애플리케이션을 위한 S3 버킷을 생성합니다.

개발자, 시스템 관리자

선택형 폴더를 만듭니다.

(선택 사항) 특정 Amazon S3 폴더에 사용자용 파일을 별도로 저장하려는 경우 폴더를 적절히 추가합니다.

개발자, 시스템 관리자

SSH 퍼블릭 키를 생성합니다.

SSH 키 페어를 생성하려면 AWS Transfer Family 설명서의 SSH 키 생성을 참조하세요.

개발자, 시스템 관리자

사용자를 추가합니다.

AWS Transfer Family 콘솔에서 서버 를 선택하고 생성한 SFTP 서버를 선택한 다음 사용자 추가 를 선택합니다. 홈 디렉터리의 경우 이전에 생성한 S3 버킷을 선택합니다. SSH 퍼블릭 키 의 경우 키 페어의 퍼블릭 SSH 키 부분을 지정합니다. SFTP 서버의 사용자를 추가한 다음 추가를 선택합니다.

개발자, 시스템 관리자
작업설명필요한 기술

보안 그룹을 업데이트하십시오.

SFTP 서버의 보안 그룹 섹션에서 테스트 머신의 IP를 추가하여 SFTP 액세스 권한을 얻습니다.

개발자

SFTP 클라이언트 유틸리티를 사용하여 서버를 테스트합니다.

SFTP 클라이언트 유틸리티를 사용하여 파일 전송을 테스트합니다. 클라이언트 및 지침 목록은 Transfer Family 설명서의 클라이언트를 사용하여 파일 AWS 전송을 참조하세요.

개발자

관련 리소스

첨부

이 문서와 관련된 추가 콘텐츠에 액세스하려면 attachment.zip 파일의 압축을 풉니다.