일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 개발
- 자료구조
- 조인
- HackerRank
- 알고리즘
- 오라클
- Index
- 백트래킹
- Join
- 코딩
- sql
- AWS
- DB
- 인덱스
- snowflake
- 인덱스튜닝
- S3
- 데이터베이스
- 결합인덱스란
- storage_integration
- Oracle
- dfs
- 문제풀이
- 쿼리
- 결합인덱스조건
- 율코딩
- 백준
- 데이터분석
- dbeaber
- MySQL
- Today
- Total
율코딩
AWS Transfer Family 로 SFTP 서버 구축하기 본문
AWS Transfer Family : AWS Transfer Family는 SFTP, FTPS, FTP 및 AS2 프로토콜을 사용하여 Amazon 심플 스토리지 서비스 (Amazon S3) 또는 Amazon 엘라스틱 파일 시스템 (Amazon EFS) 파일 시스템에서 파일을 송수신하는 데 사용할 수 있는 서비스입니다.
SFTP란?
SFTP는 인터넷을 통해 데이터를 안전하게 전송하는 데 사용되는 네트워크 프로토콜인 SSH(Secure Shell) File Transfer Protocol의 약자입니다.
이 프로토콜은 SSH의 모든 보안 및 인증 기능을 지원하며, 금융 서비스, 의료 서비스, 미디어 및 엔터테인먼트, 소매 및 광고 등 다양한 산업에서 비즈니스 파트너 간 데이터 교환에 널리 사용됩니다.
1. Architecture
AWS Transfer Family 를 활용하여 SFTP 서버를 구축하고 AWS S3와 Snowflake를 연동하여 자유롭게 Snowflake에서 데이터를 S3 내보내거나 로드할 수 있도록 합니다. 또 AWS Transfer Family 와 Cloudwatch를 연동하여 서버 모니터링 및 유저 활동 로그를 기록하고도록 합니다.
구성
- AWS Transfer Family
- VPC
- CloudWatch
- S3

2. AWS Transfer Family 구성하기
1. SFTP 서버 생성

2. SFTP 프로토콜을 선택

3. 외부에서 접속할 사용자를 직접 생성하기 위해서 자격 증명 공급자에서 서비스 관리형을 선택

4-1. SFTP에 접근할 엔드포인트를 선택
보안그룹을 사용하여 액세스를 제어하기 위해서 VPC 호스팅을 선택합니다.
또 외부에서 접근하기 위해 인터넷 연결을 선택합니다.

4-2. 선택한 VPC의 가용영역을 선택하고 엔드포인트로 이용한 EIP를 지정
vpc가 없다면 vpc 생성을 눌러서 vpc와 subnet를 먼저 생성해줘야합니다.
또한, 지정한 IP주소 외에는 접근할 수 없도록 하기 위해서는 보안그룹을 생성하여 인바운드 규칙을 만들어야합니다.


5. 도메인 선택

6. CloudWatch 로그를 남기기 위해서 역할을 생성하거나 권한이 있는 기존 역할 중 선택


7. SFTP 서버 생성 완료

8. S3 버킷 생성
SFTP 서버와 연결하여 데이터를 송수신할 S3 버킷을 생성합니다.

9. 생성한 서버에 액세스를 위한 사용자를 추가

9-1. 사용자 역할과 액세스할 S3를 선택하고 SFTP접근 시 이용한 퍼블릭키를 입력
정보를 클릭하여 사용자에 대한 SSH 키 페어를 생성하는 방법을 보고 따라한 후 해당 빈칸에 SSH 퍼블릭 키를 입력합니다.

9-2. 사용자의 역할에는 신뢰관계와 접속하려는 S3에 대한 접근 권한과 CloudWatch 로그 권한 필요


9. 생성한 사용자와 엔드포인트를 이용하여 S3에 접속

10. SFTP 클라이언트 연결 방법
Case 1. 터미널 이용
- ssh key 파일을 저장합니다.
- Window cmd 혹은 mac (iterm2) 에서 sftp -i 키파일경로 접속아이디@접속주소(서버엔드포인트 or public ip)
sftp -i sftp-key 사용자명@퍼블릭 IPv4 주소
sftp -i sftp-key 사용자명@서버엔드포인트주소
Case 2. Cyberduck 이용
- cyberduck 설치하기
- 연결하기
- 서버에 엔드포인트 주소와 사용자를 입력하고 SSH 개인키를 이용하여 S3에 액세스합니다.
