

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

# AWS Transfer Family SFTP 커넥터
<a name="creating-connectors"></a>

SFTP 커넥터는 AWS Transfer Family SFTP 프로토콜을 사용하여 Amazon 스토리지와 원격 서버 간에 파일을 전송하기 위해 원격 SFTP 서버와의 연결을 설정합니다. Amazon S3에서 파트너 소유의 외부 SFTP 서버로 파일을 보내거나, 파트너의 SFTP 서버에서 Amazon S3로 파일을 검색하거나, 원격 서버에서 파일을 나열, 삭제, 이름 바꾸기 또는 이동할 수 있습니다. SFTP 커넥터는 서비스 관리형( AWS 관리형 인프라 사용)과 VPC(Amazon VPC Lattice를 사용하여 VPC를 통해 라우팅)의 두 가지 송신 유형을 지원합니다. SFTP 커넥터를 사용하면에서 자동화된 이벤트 기반 파일 전송 워크플로를 구축할 수 있습니다 AWS .

다음 동영상은 Transfer Family SFTP 커넥터를 간단히 소개합니다.

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/Gm-FMGrVpAg/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/Gm-FMGrVpAg)


**Topics**
+ [SFTP 커넥터 생성](configure-sftp-connector.md)
+ [SFTP 커넥터에 대한 VPC 연결](sftp-connectors-vpc-overview.md)
+ [SFTP 커넥터 사용](transfer-sftp-connectors.md)
+ [SFTP 커넥터 모니터링](track-connector-progress.md)
+ [SFTP 커넥터 관리](manage-sftp-connectors.md)
+ [SFTP 커넥터의 크기 조정 및 할당량](scale-and-limits-sftp-connector.md)
+ [SFTP 커넥터를 사용한 참조 아키텍처](reference-architectures.md)

# SFTP 커넥터 생성
<a name="configure-sftp-connector"></a>

이 주제에서는 SFTP 커넥터를 생성하는 방법을 설명합니다. 각 커넥터는 하나의 원격 SFTP 서버에 연결할 수 있는 기능을 제공합니다. 다음과 같은 상위 수준 작업을 수행하여 SFTP 커넥터를 구성합니다.

**참고**  
Virtual Private Cloud를 통해 트래픽을 라우팅하는 VPC 기반 커넥터는 섹션을 참조하세요[VPC 기반 송신을 사용하여 SFTP 커넥터 생성](create-vpc-sftp-connector-procedure.md).

1. 커넥터의 인증 자격 증명을에 저장합니다 AWS Secrets Manager.

1. 보안 암호 ARN, 원격 서버의 URL 또는 리소스 구성 ARN, 커넥터에서 지원할 알고리즘이 포함된 보안 정책 및 기타 구성 설정을 지정하여 커넥터를 생성합니다.

1. 커넥터를 생성한 후 테스트하여 원격 SFTP 서버와의 연결을 설정할 수 있는지 확인할 수 있습니다.

## SFTP 커넥터 송신 유형 선택
<a name="choosing-egress-type"></a>

SFTP 커넥터를 생성할 때 "서비스 관리형"과 "VPC Lattice" 중에서 송신 유형을 선택합니다.
+ **서비스 관리**형(기본값): 커넥터는 NAT 게이트웨이와가 소유한 IP 주소를 사용하여 퍼블릭 인터넷 AWS Transfer Family 을 통해 연결을 라우팅합니다. 이 서비스는 연결을 설정하기 위해 원격 서버에 허용 목록에 등록해야 하는 커넥터에 대해 3개의 고정 IP 주소를 제공합니다.
+ **VPC Lattice**: 커넥터는 Amazon VPC Lattice를 사용하여 VPC 환경을 통해 트래픽을 라우팅합니다. 다음 시나리오에서는 SFTP 커넥터에 VPC 연결을 사용합니다.
  + **프라이빗 SFTP 서버**: VPC에서만 액세스할 수 있는 SFTP 서버에 연결
  + **온프레미스 연결**: AWS Direct Connect 또는 AWS Virtual Private Network 연결을 통해 온프레미스 SFTP 서버에 연결
  + **사용자 지정 IP 주소**: 자체 NAT 게이트웨이와 탄력적 IP 주소를 원격 서버에 제공합니다.
  + **중앙 집중식 보안 제어**: 조직의 중앙 수신/송신 제어를 통해 파일 전송 라우팅

다음 매트릭스는 사용 사례에 적합한 커넥터 유형을 선택하는 데 도움이 됩니다.


**SFTP 커넥터 송신 유형 매트릭스**  

| 기능 | 송신 유형 = 서비스 관리형 | 송신 유형 = VPC Lattice | 
| --- | --- | --- | 
| 퍼블릭 호스팅(인터넷 액세스 가능) SFTP 서버에 대한 연결 | 지원됨 | 지원1 | 
| 프라이빗 호스팅(온프레미스) SFTP 서버에 연결 | 지원되지 않음 | 지원됨2 | 
| 프라이빗 호스팅(VPC 내) SFTP 서버에 대한 연결 | 지원되지 않음 | 지원됨 | 
| 원격 SFTP 서버에 표시되는 고정 IP 주소 | 서비스 제공 고정 IP 주소를 통해 지원됨 | 고객 소유 고정 IP 주소를 통해 지원됨 | 
| 대역폭 사용 가능 | 계정당 50MBPS | 고객 소유 Resource Gateway 및 NAT Gateway에서 사용할 수 있는 더 높은 대역폭 | 
| 고객 소유 NAT 게이트웨이 및 네트워크 방화벽을 통해 인터넷으로 트래픽 라우팅 | 지원되지 않음. NAT 게이트웨이는 Transfer Family 서비스에서 소유하고 관리합니다. | 지원됨 | 

1 *송신 유형 = VPC Lattice를 사용하면 송신 VPCs의 송신 인프라(NAT 게이트웨이) 설정을 사용하여 공개적으로 호스팅되는 서버에 대한 연결이 지원됩니다.*

2 *송신 유형 = VPC Lattice를 사용하면 AWS Direct Connect 또는 VPN과 같은 VPC의 기존 네트워크를 사용하여 프라이빗 호스팅 서버에 대한 연결이 지원됩니다.*

**Topics**
+ [SFTP 커넥터 송신 유형 선택](#choosing-egress-type)
+ [Secrets Manager에 SFTP 커넥터의 인증 자격 증명 저장](sftp-connector-secret-procedure.md)
+ [서비스 관리형 송신을 사용하여 SFTP 커넥터 생성](create-sftp-connector-procedure.md)
+ [VPC 기반 송신을 사용하여 SFTP 커넥터 생성](create-vpc-sftp-connector-procedure.md)
+ [SFTP 커넥터를 테스트합니다.](test-sftp-connector.md)

# Secrets Manager에 SFTP 커넥터의 인증 자격 증명 저장
<a name="sftp-connector-secret-procedure"></a>

Secrets Manager를 사용하여 SFTP 커넥터의 사용자 자격 증명을 저장할 수 있습니다. 암호를 생성할 때 사용자 이름을 입력해야 합니다. 또한 암호, 프라이빗 키 또는 둘 다 제공할 수 있습니다. 자세한 내용은 [Transfer for SFTP 커넥터 할당량](scale-and-limits-sftp-connector.md#limits-sftp-connector)을 참조하세요.

**참고**  
Secrets Manager에 암호를 저장하면 AWS 계정 에 요금이 발생합니다. 요금에 대한 자세한 내용은 [AWS Secrets Manager 요금](https://aws.amazon.com/secrets-manager/pricing)을 참조하세요.

**SFTP 커넥터의 사용자 자격 증명을 Secrets Manager에 저장하려면**

1. 에 로그인 AWS Management Console 하고 [https://console.aws.amazon.com/secretsmanager/](https://console.aws.amazon.com/secretsmanager/) AWS Secrets Manager 콘솔을 엽니다.

1. 왼쪽 탐색 창에서 **암호**를 선택합니다.

1. **암호** 페이지에서 **새 암호 저장**을 선택합니다.

1. **암호 선택** 페이지의 **암호 타입**에서 **다른 타입의 암호**를 선택합니다.

1. 보안 암호의 키/값 정보를 제공합니다. 사용자 이름과 프라이빗 키 또는 암호를 제공해야 합니다.

   1. **키/값 쌍** 섹션에서 **키/값** 탭을 선택합니다.
      + **키** - **Username**를 입력합니다.
      + **value** - 파트너의 서버에 연결할 권한이 있는 사용자의 이름을 입력합니다.

   1. 키 페어를 제공하려면 **행 추가**를 선택하고 **키/값 페어** 섹션에서 **키/값** 탭을 선택합니다.
      + **키** - **PrivateKey**를 입력합니다.
      + **value** - 프라이빗 키에 붙여 넣습니다.

      **팁**: 입력하는 프라이빗 키 데이터는 원격 SFTP 서버에이 사용자에 대해 저장된 퍼블릭 키와 일치해야 합니다.
**참고**  
 AWS Transfer Family SFTP 커넥터를 사용한 인증에는 암호로 보호되는 프라이빗 키를 사용할 수 없습니다.

      퍼블릭/프라이빗 키 페어를 생성하는 방법에 대한 자세한 내용은 섹션을 참조하세요[macOS, Linux 또는 Unix에서 SSH 키 생성](macOS-linux-unix-ssh.md).

   1. 암호를 제공하려면 **행 추가**를 선택하고 **키/값 쌍** 섹션에서 **키/값** 탭을 선택합니다.
      + **키** - **Password**를 입력합니다.
      + **값** – 사용자의 암호를 입력합니다.

1. **다음**을 선택합니다.

1. **암호 구성** 페이지에 암호를 위한 명칭과 설명을 입력합니다. 이름에 **aws/transfer/**이라는 접두사를 사용하는 것이 좋습니다. 예컨대, 암호 **aws/transfer/connector-1**을 지정할 수 있습니다.

1. **다음**을 선택한 후 **교체 구성** 페이지의 기본값을 그대로 사용합니다. 그 다음 **다음**을 선택합니다.

1. **검토** 페이지에서 **저장**을 선택하여 암호를 만들고 저장합니다.

# 서비스 관리형 송신을 사용하여 SFTP 커넥터 생성
<a name="create-sftp-connector-procedure"></a>

이 절차에서는 AWS Transfer Family 콘솔 또는를 사용하여 SFTP 커넥터를 생성하는 방법을 설명합니다 AWS CLI.

------
#### [ Console ]<a name="create-sftp-connector"></a>

**SFTP 커넥터를 생성하려면**

1. [https://console.aws.amazon.com/transfer/](https://console.aws.amazon.com/transfer/) AWS Transfer Family 콘솔을 엽니다.

1. 왼쪽 탐색 창에서 **SFTP 커넥터를** 선택한 다음 **SFTP 커넥터 생성을** 선택합니다.

1. **커넥터 구성** 섹션의 **송신 유형**에서 **서비스 관리를** 선택합니다. 이 옵션은 AWS Transfer Family 관리형 송신 인프라를 사용합니다. Transfer Family 서비스는 각 SFTP 커넥터에 대한 고정 IP 주소를 제공하고 관리합니다.

1. **커넥터 구성** 섹션에서 다음 정보를 제공합니다:  
![\[커넥터 구성 설정을 보여주는 Transfer Family SFTP 커넥터 콘솔.\]](http://docs.aws.amazon.com/ko_kr/transfer/latest/userguide/images/create-connector-example-config.png)
   + **URL**에는 원격 SFTP 서버의 URL을 입력합니다. 이 URL은 `sftp://partner-SFTP-server-url`와 같은 형식(예: `sftp://AnyCompany.com`)이어야 합니다.
**참고**  
경우에 따라 URL에 포트 번호를 제공할 수 있습니다. 형식은 `sftp://partner-SFTP-server-url:port-number`입니다. 기본 포트 번호(지정된 포트가 없는 경우)는 포트 22입니다.
   + **액세스 역할**에서 사용할 (IAM) 역할의 Amazon 리소스 이름 AWS Identity and Access Management (ARN)을 선택합니다.
     + 이 역할이 `StartFileTransfer` 요청에서 사용된 파일 위치의 상위 디렉터리에 대한 **읽기 및 쓰기 액세스 권한을 이 역할이 제공하는지 확인하세요**.
     + 이 역할이 `secretsmanager:GetSecretValue`에 대해 암호에 액세스할 수 있는 **권한을 제공하는지 확인하세요.**
**참고**  
정책에서 보안 암호의 ARN을 지정해야 합니다. ARN에는 보안 암호 이름이 포함되지만 이름에 임의의 영숫자 6자를 추가합니다. 보안 암호의 ARN 형식은 다음과 같습니다.  

       ```
       arn:aws:secretsmanager:region:account-id:secret:aws/transfer/SecretName-6RandomCharacters
       ```
     + 사용자의 이전 요청을 처리할 때 커넥터가 리소스에 액세스할 수 있도록 허용하는 신뢰 관계가 **이 역할에 포함되어 있는지 확인하세요**. 신뢰 관계 설정에 대한 자세한 내용은 [신뢰 관계를 구축하기 위해](requirements-roles.md#establish-trust-transfer)을 참조하세요.   
****  

     ```
     {
       "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"
         }
       ]
     }
     ```
**참고**  
액세스 역할의 경우, 예는 단일 암호에 대한 액세스 권한을 부여합니다. 하지만 와일드카드 문자를 사용하면 여러 사용자 및 암호에 대해 동일한 IAM 역할을 재사용하려는 경우 작업을 줄일 수 있습니다. 예컨대, 다음 리소스 명령문은 `aws/transfer`으로 시작하는 이름을 가진 모든 암호에 대한 권한을 부여합니다.  

     ```
     "Resource": "arn:aws:secretsmanager:region:account-id:secret:aws/transfer/*"
     ```
SFTP 자격 증명이 포함된 암호를 다른 AWS 계정에 저장할 수도 있습니다. 교차 계정 보안 암호 액세스를 활성화하는 방법에 대한 자세한 내용은 [다른 계정의 사용자에 대한 AWS Secrets Manager 보안 암호 권한을 참조하세요](https://docs.aws.amazon.com/secretsmanager/latest/userguide/auth-and-access_examples_cross.html).

1. 커넥터 구성을 완료합니다.
   + (옵션) **로깅 역할에서** 커넥터가 CloudWatch 로그에 이벤트를 푸시하는 데 사용할 IAM 역할을 선택합니다. 다음 예제 정책은 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/*"
             }
         ]
     }
     ```

1. **SFTP 구성** 섹션에 다음 정보를 제공합니다.  
![\[SFTP 구성 설정을 보여주는 Transfer Family SFTP 커넥터 콘솔.\]](http://docs.aws.amazon.com/ko_kr/transfer/latest/userguide/images/create-connector-example-sftp-config.png)
   + **커넥터 자격 증명**의 드롭다운 목록에서 SFTP 사용자의 프라이빗 키 또는 암호 AWS Secrets Manager 가 포함된의 보안 암호 이름을 선택합니다. 암호를 생성하여 특정 방식으로 저장해야 합니다. 자세한 내용은 [Secrets Manager에 SFTP 커넥터의 인증 자격 증명 저장](sftp-connector-secret-procedure.md)을 참조하세요.
   + (선택 사항) `TrustedHostKeys` 파라미터를 비워 두고 커넥터를 생성할 수 있습니다. 그러나 커넥터 구성에이 파라미터를 제공할 때까지 커넥터가 원격 서버로 파일을 전송할 수 없습니다. 커넥터를 생성할 때 신뢰할 수 있는 호스트 키(들)를 입력하거나 나중에 `TestConnection` 콘솔 작업 또는 API 명령에서 반환된 호스트 키 정보를 사용하여 커넥터를 업데이트할 수 있습니다. 즉, **신뢰할 수 있는 호스트 키** 텍스트 상자의 경우 다음 중 하나를 수행할 수 있습니다.
     + **커넥터를 생성할 때 신뢰할 수 있는 호스트 키(들)를 제공합니다.** 외부 서버를 식별하는 데 사용되는 호스트 키의 퍼블릭 부분에 붙여 넣습니다. **신뢰 호스트 키 추가**를 선택하여 키를 더 추가하면 키를 두 개 이상 추가할 수 있습니다. SFTP 서버에 대해 `ssh-keyscan` 명령을 사용하여 필요한 키를 검색할 수 있습니다. Transfer Family가 지원하는 신뢰 호스트 키의 형식 및 타입에 대한 자세한 설명은 [https://docs.aws.amazon.com//transfer/latest/APIReference/API_SftpConnectorConfig.html](https://docs.aws.amazon.com//transfer/latest/APIReference/API_SftpConnectorConfig.html) 섹션을 참조하세요.
     + *커넥터를 생성할 때 신뢰할 수 있는 호스트 키(들) 텍스트 상자를 비워 두고 나중에이 정보로 커넥터를 업데이트합니다.* 커넥터를 생성할 때 호스트 키 정보가 없는 경우 지금은이 파라미터를 비워 두고 커넥터 생성을 진행할 수 있습니다. 커넥터를 생성한 후 새 커넥터의 ID를 사용하여 AWS CLI 또는 커넥터의 세부 정보 페이지에서 `TestConnection` 명령을 실행합니다. 성공하면 `TestConnection`가 필요한 호스트 키 정보를 반환합니다. 그런 다음 콘솔을 사용하여(또는 `UpdateConnector` AWS CLI 명령을 실행하여) 커넥터를 편집하고 실행 시 반환된 호스트 키 정보를 추가할 수 있습니다`TestConnection`.
**중요**  
를 실행하여 원격 서버의 호스트 키를 검색하는 경우 반환된 키에 대해 out-of-band 검증을 수행해야 `TestConnection`합니다.  
새 키를 신뢰할 수 있는 것으로 수락하거나 연결하려는 원격 SFTP 서버의 소유자로부터 받은 이전에 알려진 지문으로 제시된 지문을 확인해야 합니다.
   + (선택 사항) **최대 동시 연결**의 드롭다운 목록에서 커넥터가 원격 서버에 생성하는 동시 연결 수를 선택합니다. 콘솔의 기본 선택은 **5**입니다.

     이 설정은 커넥터가 원격 서버와 동시에 설정할 수 있는 활성 연결 수를 지정합니다. 동시 연결을 생성하면 병렬 작업을 활성화하여 커넥터 성능을 향상시킬 수 있습니다.

1. **암호화 알고리즘 옵션** 섹션의 **보안 정책** 필드의 드롭다운 목록에서 **보안 정책을** 선택합니다. 보안 정책을 사용하면 커넥터가 지원하는 암호화 알고리즘을 선택할 수 있습니다. 사용 가능한 보안 정책 및 알고리즘에 대한 자세한 내용은 섹션을 참조하세요[AWS Transfer Family SFTP 커넥터에 대한 보안 정책](security-policies-connectors.md).

1. (옵션) **태그** 섹션에서 **키** 및 **값**에 하나 이상의 태그를 키-값 쌍을 입력합니다.

1. 모든 설정을 확인한 후 **SFTP 커넥터 생성을** 선택하여 SFTP 커넥터를 생성합니다. 커넥터가 성공적으로 생성되면 할당된 고정 IP 주소 목록과 **연결 테스트** 버튼이 있는 화면이 나타납니다. 버튼을 사용하여 새 커넥터의 구성을 테스트합니다.  
![\[SFTP 커넥터가 성공적으로 생성되면 나타나는 커넥터 생성 화면입니다. 연결을 테스트하기 위한 버튼과이 커넥터의 서비스 관리형 고정 IP 주소 목록이 포함되어 있습니다.\]](http://docs.aws.amazon.com/ko_kr/transfer/latest/userguide/images/connector-success-ip.png)

새 SFTP 커넥터의 ID가 목록에 추가된 **커넥터** 페이지가 나타납니다. 커넥터에 대한 세부 정보를 보려면 [SFTP 커넥터 세부 정보 보기](manage-sftp-connectors.md#sftp-connectors-view-info) 섹션을 참조하세요.

------
#### [ CLI ]

커넥터를 생성할 때는 [https://docs.aws.amazon.com/transfer/latest/APIReference/API_CreateConnector.html](https://docs.aws.amazon.com/transfer/latest/APIReference/API_CreateConnector.html) 명령을 사용합니다. 이 명령을 사용하여 SFTP 커넥터를 생성하려면 다음 정보를 제공해야 합니다.
+ 원격 SFTP 서버의 URL입니다. 이 URL은 `sftp://partner-SFTP-server-url`와 같은 형식(예: `sftp://AnyCompany.com`)이어야 합니다.
+ 액세스 역할입니다. 사용할 AWS Identity and Access Management (IAM) 역할의 Amazon 리소스 이름(ARN)을 선택합니다.
  + 이 역할이 `StartFileTransfer` 요청에서 사용된 파일 위치의 상위 디렉터리에 대한 **읽기 및 쓰기 액세스 권한을 이 역할이 제공하는지 확인하세요**.
  + 이 역할이 `secretsmanager:GetSecretValue`에 대해 암호에 액세스할 수 있는 **권한을 제공하는지 확인하세요.**
**참고**  
정책에서 보안 암호의 ARN을 지정해야 합니다. ARN에는 보안 암호 이름이 포함되지만 이름에 임의의 영숫자 6자를 추가합니다. 보안 암호의 ARN 형식은 다음과 같습니다.  

    ```
    arn:aws:secretsmanager:region:account-id:secret:aws/transfer/SecretName-6RandomCharacters
    ```
  + 사용자의 이전 요청을 처리할 때 커넥터가 리소스에 액세스할 수 있도록 허용하는 신뢰 관계가 **이 역할에 포함되어 있는지 확인하세요**. 신뢰 관계 설정에 대한 자세한 내용은 [신뢰 관계를 구축하기 위해](requirements-roles.md#establish-trust-transfer)을 참조하세요.   
****  

  ```
  {
    "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"
      }
    ]
  }
  ```
**참고**  
액세스 역할의 경우, 예는 단일 암호에 대한 액세스 권한을 부여합니다. 하지만 와일드카드 문자를 사용하면 여러 사용자 및 암호에 대해 동일한 IAM 역할을 재사용하려는 경우 작업을 줄일 수 있습니다. 예컨대, 다음 리소스 명령문은 `aws/transfer`으로 시작하는 이름을 가진 모든 암호에 대한 권한을 부여합니다.  

  ```
  "Resource": "arn:aws:secretsmanager:region:account-id:secret:aws/transfer/*"
  ```
SFTP 자격 증명이 포함된 암호를 다른 AWS 계정에 저장할 수도 있습니다. 교차 계정 보안 암호 액세스를 활성화하는 방법에 대한 자세한 내용은 [다른 계정의 사용자에 대한 AWS Secrets Manager 보안 암호 권한을 참조하세요](https://docs.aws.amazon.com/secretsmanager/latest/userguide/auth-and-access_examples_cross.html).
+ (옵션) CloudWatch 로그에 이벤트를 푸시하는 데 사용할 커넥터의 IAM 역할을 선택합니다. 다음 예제 정책은 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/*"
          }
      ]
  }
  ```
+ 다음 SFTP 구성 정보를 제공하세요.
  + SFTP 사용자의 프라이빗 키 또는 암호 AWS Secrets Manager 가 포함된의 보안 암호 ARN입니다.
  + 외부 서버를 식별하는 데 사용되는 호스트 키의 공개 부분입니다. 원하는 경우 신뢰 호스트 키를 여러 개 제공할 수 있습니다.

  SFTP 정보를 제공하는 가장 쉬운 방법은 SFTP 정보를 파일에 저장하는 것입니다. 예컨대, 다음 예 텍스트를 `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="
     ]
  }
  ```
+ 커넥터의 보안 정책을 지정하고 보안 정책 이름을 입력합니다.

**참고**  
`SecretId`는 전체 ARN이거나 암호 이름(이전 목록의 *example-username-key*)일 수 있습니다.

그런 다음 다음 명령을 실행하여 커넥터를 생성합니다.

```
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
```

VPC 송신 유형 커넥터를 설명할 때 응답에는 새 필드가 포함됩니다.

```
{
   "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"
   }
}
```

트래픽`ServiceManagedEgressIpAddresses`이 AWS 관리형 인프라 대신 VPC를 통해 라우팅되므로 VPC 송신 유형 커넥터의 경우는 null입니다.

------

# VPC 기반 송신을 사용하여 SFTP 커넥터 생성
<a name="create-vpc-sftp-connector-procedure"></a>

이 주제에서는 VPC 연결을 사용하여 SFTP 커넥터를 생성하기 위한 step-by-step 지침을 제공합니다. VPC\$1LATTICE 지원 커넥터는 Amazon VPC Lattice를 사용하여 가상 프라이빗 클라우드를 통해 트래픽을 라우팅하므로 프라이빗 엔드포인트에 안전하게 연결하거나 인터넷 액세스를 위해 자체 NAT 게이트웨이를 사용할 수 있습니다.

**VPC 연결을 사용해야 하는 경우**

다음 시나리오에서는 SFTP 커넥터에 VPC 연결을 사용합니다.
+ **프라이빗 SFTP 서버**: VPC에서만 액세스할 수 있는 SFTP 서버에 연결합니다.
+ **온프레미스 연결**: AWS Direct Connect 또는 AWS Site-to-Site VPN 연결을 통해 온프레미스 SFTP 서버에 연결합니다.
+ **사용자 지정 IP 주소**: BYOIP 시나리오를 포함하여 자체 NAT 게이트웨이와 탄력적 IP 주소를 사용합니다.
+ **중앙 집중식 보안 제어**: 조직의 중앙 수신/송신 제어를 통해 파일 전송을 라우팅합니다.

![\[VPC 기반 SFTP 커넥터 송신을 보여주는 아키텍처 다이어그램은 VPC 간 리소스 액세스를 통해 가상 프라이빗 클라우드를 통해 보안 연결을 활성화하는 방법을 보여줍니다.\]](http://docs.aws.amazon.com/ko_kr/transfer/latest/userguide/images/vpc-egress-diagram.png)


## VPC\$1LATTICE 지원 SFTP 커넥터의 사전 조건
<a name="vpc-connector-prerequisites"></a>

VPC\$1LATTICE 지원 SFTP 커넥터를 생성하기 전에 다음 사전 조건을 완료해야 합니다.

**VPC 기반 연결 작동 방식**

VPC Lattice를 사용하면 VPC 리소스를 다른 AWS 서비스와 안전하게 공유할 수 있습니다. AWS Transfer Family 는 서비스 네트워크를 사용하여 리소스 공유 프로세스를 간소화합니다. 주요 구성 요소는 다음과 같습니다.
+ **Resource Gateway**: VPC에 대한 액세스 지점 역할을 합니다. 최소 2개의 가용 영역으로 VPC에서 이를 생성합니다.
+ **리소스 구성**: 연결하려는 SFTP 서버의 프라이빗 IP 주소 또는 퍼블릭 DNS 이름을 포함합니다.

VPC\$1LATTICE 지원 커넥터를 생성할 때는 전달 액세스 세션(FAS)을 AWS Transfer Family 사용하여 일시적으로 자격 증명을 얻고 리소스 구성을 서비스 네트워크와 연결합니다.

**필수 설정 단계**

1. **VPC 인프라**: SFTP 서버 연결 요구 사항에 필요한 서브넷, 라우팅 테이블 및 보안 그룹이 있는 VPC가 올바르게 구성되어 있는지 확인합니다.

1. **Resource Gateway**: VPC Lattice `create-resource-gateway` 명령을 사용하여 VPC에서 Resource Gateway를 생성합니다. Resource Gateway는 두 개 이상의 가용 영역에 있는 서브넷과 연결되어야 합니다. 자세한 내용은 *Amazon VPC Lattice 사용 설명서*의 [리소스 게이트웨이](https://docs.aws.amazon.com/vpc-lattice/latest/ug/resource-gateway.html)를 참조하세요.

1. **리소스 구성**: VPC Lattice `create-resource-configuration` 명령을 사용하여 대상 SFTP 서버를 나타내는 리소스 구성을 생성합니다. 다음 중 하나를 지정할 수 있습니다.
   + 프라이빗 엔드포인트의 프라이빗 IP 주소
   + 퍼블릭 엔드포인트의 퍼블릭 DNS 이름(퍼블릭 엔드포인트에는 IP 주소가 지원되지 않음)

1. **인증 자격 증명**:에 설명된 AWS Secrets Manager 대로 SFTP 사용자 자격 증명을에 저장합니다[Secrets Manager에 SFTP 커넥터의 인증 자격 증명 저장](sftp-connector-secret-procedure.md).

**중요**  
Resource Gateway 및 리소스 구성은 동일한 AWS 계정에서 생성해야 합니다. 리소스 구성을 생성할 때 먼저 Resource Gateway가 있어야 합니다.

VPC 리소스 구성에 대한 자세한 내용은 *Amazon VPC Lattice 사용 설명서*의 [리소스 구성을](https://docs.aws.amazon.com/vpc-lattice/latest/ug/resource-configuration.html) 참조하세요.

**참고**  
SFTP 커넥터에 대한 VPC 연결은 Amazon VPC Lattice 리소스를 사용할 수 AWS 리전 있는에서 사용할 수 있습니다. 자세한 내용은 [VPC Lattice FAQs](https://aws.amazon.com/vpc/lattice/faqs/#topic-0). 가용 영역 지원은 리전에 따라 다르며 Resource Gateway에는 최소 2개의 가용 영역이 필요합니다.

## VPC\$1LATTICE 지원 SFTP 커넥터 생성
<a name="create-vpc-connector-procedure"></a>

사전 조건을 완료한 후, AWS CLI AWS 관리 콘솔 또는 AWS SDKs.

------
#### [ Console ]<a name="create-vpc-sftp-connector"></a>

**VPC\$1LATTICE 지원 SFTP 커넥터를 생성하려면**

1. [https://console.aws.amazon.com/transfer/](https://console.aws.amazon.com/transfer/) AWS Transfer Family 콘솔을 엽니다.

1. 왼쪽 탐색 창에서 **SFTP 커넥터를** 선택한 다음 **SFTP 커넥터 생성을** 선택합니다.

1. **커넥터 구성** 섹션의 **송신 유형**에서 **VPC Lattice**를 선택합니다.

   이 옵션은 VPC 간 리소스 액세스를 위해 Amazon VPC Lattice를 사용하여 VPC를 통해 트래픽을 라우팅합니다. 이 옵션을 사용하여 프라이빗 호스팅 서버 엔드포인트에 연결하거나, VPC의 보안 제어를 통해 트래픽을 라우팅하거나, 자체 NAT 게이트웨이 및 탄력적 IP 주소를 사용할 수 있습니다. 원격 SFTP 서버의 주소는 VPC에서 리소스 구성으로 표시됩니다. 리소스 구성에 대한 자세한 내용은 Amazon [VPC Lattice 사용 설명서의 VPC 리소스에 대한 리소스 구성을](https://docs.aws.amazon.com/vpc-lattice/latest/ug/resource-configuration.html) 참조하세요.

1. 커넥터 구성을 완료합니다.
   + **액세스 역할**에서 사용할 (IAM) 역할의 Amazon 리소스 이름 AWS Identity and Access Management (ARN)을 선택합니다.
     + 이 역할이 `StartFileTransfer` 요청에서 사용된 파일 위치의 상위 디렉터리에 대한 **읽기 및 쓰기 액세스 권한을 이 역할이 제공하는지 확인하세요**.
     + 이 역할이 `secretsmanager:GetSecretValue`에 대해 암호에 액세스할 수 있는 **권한을 제공하는지 확인하세요.**
**참고**  
정책에서 보안 암호의 ARN을 지정해야 합니다. ARN에는 보안 암호 이름이 포함되지만 이름에 임의의 영숫자 6자를 추가합니다. 보안 암호의 ARN 형식은 다음과 같습니다.  

       ```
       arn:aws:secretsmanager:region:account-id:secret:aws/transfer/SecretName-6RandomCharacters
       ```
     + 사용자의 이전 요청을 처리할 때 커넥터가 리소스에 액세스할 수 있도록 허용하는 신뢰 관계가 **이 역할에 포함되어 있는지 확인하세요**. 신뢰 관계 설정에 대한 자세한 내용은 [신뢰 관계를 구축하기 위해](requirements-roles.md#establish-trust-transfer)을 참조하세요.   
****  

     ```
     {
       "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"
         }
       ]
     }
     ```
**참고**  
액세스 역할의 경우, 예는 단일 암호에 대한 액세스 권한을 부여합니다. 하지만 와일드카드 문자를 사용하면 여러 사용자 및 암호에 대해 동일한 IAM 역할을 재사용하려는 경우 작업을 줄일 수 있습니다. 예컨대, 다음 리소스 명령문은 `aws/transfer`으로 시작하는 이름을 가진 모든 암호에 대한 권한을 부여합니다.  

     ```
     "Resource": "arn:aws:secretsmanager:region:account-id:secret:aws/transfer/*"
     ```
SFTP 자격 증명이 포함된 암호를 다른 AWS 계정에 저장할 수도 있습니다. 교차 계정 보안 암호 액세스 활성화에 대한 자세한 내용은 [다른 계정의 사용자에 대한 AWS Secrets Manager 보안 암호 권한을 참조하세요](https://docs.aws.amazon.com/secretsmanager/latest/userguide/auth-and-access_examples_cross.html).
   + **리소스 구성 ARN**에 SFTP 서버를 가리키는 VPC Lattice 리소스 구성의 ARN을 입력합니다.

     ```
     arn:aws:vpc-lattice:region:account-id:resourceconfiguration/rcfg-12345678
     ```
   + (옵션) **로깅 역할에서** 커넥터가 CloudWatch 로그에 이벤트를 푸시하는 데 사용할 IAM 역할을 선택합니다.  
****  

     ```
     {
         "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/*"
             }
         ]
     }
     ```

1. **SFTP 구성** 섹션에 다음 정보를 제공합니다.
   + **커넥터 자격 증명**에서 SFTP 사용자의 프라이빗 키 또는 암호 AWS Secrets Manager 가 포함된의 보안 암호 이름을 선택합니다.
   + **신뢰할 수 있는 호스트 키**의 경우 외부 서버를 식별하는 데 사용되는 호스트 키의 퍼블릭 부분에 붙여넣거나 나중에 `TestConnection` 명령을 사용하여 구성하려면 비워 둡니다.

     이 호스트 키는 VPC\$1LATTICE 커넥터용이므로 키에서 호스트 이름을 제거합니다.
   + (선택 사항) **최대 동시 연결**에서 커넥터가 원격 서버에 생성하는 동시 연결 수를 선택합니다(기본값은 5).

1. **암호화 알고리즘 옵션** 섹션의 드롭다운 목록에서 **보안 정책을** 선택합니다.

1. (선택 사항) **태그** 섹션에서 태그를 키-값 페어로 추가합니다.

1. **SFTP 커넥터 생성을** 선택하여 VPC\$1LATTICE 지원 SFTP 커넥터를 생성합니다.

리소스 연결이 프로비저닝되는 `PENDING` 동안 커넥터가 생성되며, 일반적으로 몇 분 정도 걸립니다. 상태가 로 변경되면 커넥터를 사용할 준비가 `ACTIVE`된 것입니다.

------
#### [ CLI ]

다음 명령을 사용하여 VPC\$1LATTICE 지원 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
```

VPC 연결을 위한 키 파라미터는 SFTP 서버 대상을 정의하는 리소스 구성 ARN을 `--egress-config`지정하는 입니다.

------

## VPC 커넥터 상태 모니터링
<a name="vpc-connector-status-monitoring"></a>

VPC\$1LATTICE 지원 커넥터에는 비동기식 설정 프로세스가 있습니다. 생성 후 커넥터 상태를 모니터링합니다.
+ **보류 중**: 커넥터가 프로비저닝되고 있습니다. 서비스 네트워크 프로비저닝이 진행 중이며 일반적으로 몇 분 정도 걸립니다.
+ **ACTIVE**: 커넥터를 사용할 준비가 되었으며 파일을 전송할 수 있습니다.
+ **ERRORED**: 커넥터가 프로비저닝되지 않았습니다. 오류 세부 정보에서 문제 해결 정보를 확인합니다.

`describe-connector` 명령을 사용하여 커넥터 상태를 확인합니다.

```
aws transfer describe-connector --connector-id c-1234567890abcdef0
```

PENDING 상태에서 `test-connection` API는 프로비저닝이 완료될 때까지 "Connector not available"를 반환합니다.

## 제한 사항 및 고려 사항
<a name="vpc-connectivity-limitations"></a>
+ **퍼블릭 엔드포인트**: VPC를 통해 퍼블릭 엔드포인트에 연결할 때 리소스 구성에 DNS 이름을 제공해야 합니다. 퍼블릭 IP 주소는 지원되지 않습니다.
+ **리전별 가용성**: 일부에서 VPC 연결을 사용할 수 있습니다 AWS 리전. 교차 리전 리소스 공유는 지원되지 않습니다.
+ **가용 영역 요구 사항**: Resource Gateway는 두 개 이상의 가용 영역에 있는 서브넷과 연결되어야 합니다. 모든 가용 영역이 모든 리전에서 VPC Lattice를 지원하는 것은 아닙니다.
+ **연결 제한**: TCP 연결의 유휴 제한 시간이 350초인 리소스당 최대 350개의 연결.

## 비용 고려 사항
<a name="vpc-connectivity-costs"></a>

일반 서비스 요금 AWS Transfer Family 외에의 추가 요금은 없습니다. 그러나 고객은 Amazon Virtual Private Cloud 리소스 공유와 관련된 Amazon VPC Lattice의 추가 요금이 부과될 수 있으며, 인터넷으로 송신하기 위해 자체 NAT 게이트웨이를 사용하는 경우 NAT 게이트웨이 요금이 부과될 수 있습니다.

전체 AWS Transfer Family 요금 정보는 [AWS Transfer Family 요금 페이지를](https://aws.amazon.com/aws-transfer-family/pricing/) 참조하세요.

## SFTP 커넥터의 VPC 연결 예제
<a name="sftp-connectors-vpc-examples"></a>

이 섹션에서는 다양한 시나리오에 대해 VPC 연결을 사용하여 SFTP 커넥터를 생성하는 예제를 제공합니다. 이러한 예제를 사용하기 전에 VPC 연결 설명서에 설명된 대로 VPC 인프라 설정을 완료했는지 확인합니다.

### 예: 프라이빗 엔드포인트 연결
<a name="vpc-connector-private-endpoint-example"></a>

이 예제에서는 VPC에서만 액세스할 수 있는 프라이빗 SFTP 서버에 연결하는 SFTP 커넥터를 생성하는 방법을 보여줍니다.

**사전 조건**

1. VPC에서 Resource Gateway를 생성합니다.

   ```
   aws vpc-lattice create-resource-gateway \
       --name my-private-server-gateway \
       --vpc-identifier vpc-1234567890abcdef0 \
       --subnet-ids subnet-1234567890abcdef0 subnet-0987654321fedcba0
   ```

1. 프라이빗 SFTP 서버에 대한 리소스 구성을 생성합니다.

   ```
   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
   ```

**VPC\$1LATTICE 지원 커넥터 생성**

1. VPC 연결을 사용하여 SFTP 커넥터를 생성합니다.

   ```
   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}
   ```

1. 커넥터 상태가 될 때까지 모니터링합니다`ACTIVE`.

   ```
   aws transfer describe-connector --connector-id c-1234567890abcdef0
   ```

원격 SFTP 서버에는 VPC CIDR 범위 내에서 Resource Gateway의 IP 주소에서 오는 연결이 표시됩니다.

### 예: VPC를 통한 퍼블릭 엔드포인트
<a name="vpc-connector-public-endpoint-example"></a>

이 예제에서는 VPC를 통해 퍼블릭 SFTP 서버로 연결을 라우팅하여 중앙 집중식 보안 제어를 활용하고 자체 NAT 게이트웨이 IP 주소를 사용하는 방법을 보여줍니다.

**사전 조건**

1. VPC에서 Resource Gateway를 생성합니다(프라이빗 엔드포인트 예제와 동일).

1. DNS 이름을 사용하여 퍼블릭 SFTP 서버에 대한 리소스 구성을 생성합니다.

   ```
   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
   ```
**참고**  
퍼블릭 엔드포인트의 경우 IP 주소가 아닌 DNS 이름을 사용해야 합니다.

**커넥터 생성**
+ 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}
  ```

트래픽은 커넥터에서 Resource Gateway로 흐른 다음 NAT 게이트웨이를 통해 퍼블릭 SFTP 서버에 도달합니다. 원격 서버는 NAT 게이트웨이의 탄력적 IP 주소를 소스로 볼 수 있습니다.

### 예: 교차 계정 프라이빗 엔드포인트
<a name="vpc-connector-cross-account-example"></a>

이 예제에서는 리소스 공유를 사용하여 다른 AWS 계정의 프라이빗 SFTP 서버에 연결하는 방법을 보여줍니다.

**참고**  
와 같은 다른 메커니즘을 통해 VPC 간 리소스 공유가 이미 활성화된 경우 여기에 설명된 리소스 공유를 구성할 필요가 AWS Transit Gateway없습니다. Transit Gateway 라우팅 테이블과 같은 기존 라우팅 메커니즘은 SFTP 커넥터에서 자동으로 사용됩니다. SFTP 커넥터를 생성하는 계정과 동일한 계정에서만 리소스 구성을 생성하면 됩니다.

**계정 A(리소스 공급자) - 리소스 구성 공유**

1. 계정 A에서 리소스 게이트웨이 및 리소스 구성을 생성합니다(이전 예제와 동일).

1. Resource Access Manager를 사용하여 계정 B와 AWS 리소스 구성을 공유합니다.

   ```
   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
   ```

**계정 B(리소스 소비자) - 공유 수락 및 사용**

1. 리소스 공유 초대를 수락합니다.

   ```
   aws ram accept-resource-share-invitation \
       --resource-share-invitation-arn arn:aws:ram:us-east-1:111111111111:resource-share-invitation/invitation-id
   ```

1. 계정 B에서 SFTP 커넥터를 생성합니다.

   ```
   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}
   ```

이제 계정 B의 커넥터가 공유 리소스 구성을 통해 계정 A의 프라이빗 SFTP 서버에 액세스할 수 있습니다.

### 일반적인 문제 해결 시나리오
<a name="vpc-connector-troubleshooting-examples"></a>

다음은 VPC\$1LATTICE 지원 커넥터를 생성할 때 발생하는 일반적인 문제에 대한 해결 방법입니다.
+ **커넥터가 보류 중 상태로 멈춤**: Resource Gateway가 활성 상태이고 지원되는 가용 영역에 서브넷이 있는지 확인합니다. 커넥터가 여전히 PENDING 상태로 멈춘 경우 처음에 사용한 것과 동일한 구성 파라미터를 `UpdateConnector` 사용하여를 호출합니다. 그러면 문제를 해결할 수 있는 새 상태 이벤트가 트리거됩니다.
+ **연결 제한 시간**: 보안 그룹 규칙이 포트 22의 트래픽을 허용하고 VPC 라우팅이 올바른지 확인합니다.
+ **DNS 해결 문제**: 퍼블릭 엔드포인트의 경우 VPC가 NAT 게이트웨이 또는 인터넷 게이트웨이를 통해 인터넷에 연결되어 있는지 확인합니다.
+ **교차 계정 액세스 거부**됨: 리소스 공유가 수락되고 리소스 구성 ARN이 올바른지 확인합니다. 오리진 계정이 리소스 공유를 생성할 때 리소스 구성에 적절한 권한 정책이 연결된 경우 , `vpc-lattice:AssociateViaAWSService`, `vpc-lattice:AssociateViaAWSService-EventsAndStates``vpc-lattice:CreateServiceNetworkResourceAssociation`, 권한이 필요합니다`vpc-lattice:GetResourceConfiguration`.

# SFTP 커넥터를 테스트합니다.
<a name="test-sftp-connector"></a>

SFTP 커넥터를 만든 후에는 새 커넥터를 사용하여 파일을 전송하기 전에 테스트해 보는 것이 좋습니다.

**SFTP 커넥터를 테스트하려면**

1. [https://console.aws.amazon.com/transfer/](https://console.aws.amazon.com/transfer/) AWS Transfer Family 콘솔을 엽니다.

1. 왼쪽 탐색 창에서 **SFTP 커넥터를** 선택하고 커넥터를 선택합니다.

1. **작업** 메뉴에서 **테스트 연겨**을 선택합니다.  
![\[선택된 SFTP 커넥터가 표시된 Transfer Family 콘솔과 연결 테스트 연결 작업이 강조 표시되어 있습니다.\]](http://docs.aws.amazon.com/ko_kr/transfer/latest/userguide/images/connector-test-choose.png)

시스템은 테스트의 통과 또는 실패 여부를 나타내는 메시지를 반환합니다. 테스트가 실패하면 시스템은 테스트 실패 이유를 기반으로 오류 메시지를 제공합니다.

![\[SFTP 커넥터 테스트 연결 패널은 성공적인 테스트를 보여줍니다.\]](http://docs.aws.amazon.com/ko_kr/transfer/latest/userguide/images/connector-test-success.png)


![\[실패한 테스트가 표시된 SFTP 커넥터 테스트 연결 패널: 오류 메시지는 커넥터의 액세스 역할이 잘못되었음을 나타냅니다.\]](http://docs.aws.amazon.com/ko_kr/transfer/latest/userguide/images/connector-test-fail-role.png)


**참고**  
API를 사용하여 커넥터를 테스트하려면 [https://docs.aws.amazon.com/transfer/latest/APIReference/API_TestConnection](https://docs.aws.amazon.com/transfer/latest/APIReference/API_TestConnection) API 설명서를 참조하세요.

# SFTP 커넥터에 대한 VPC 연결
<a name="sftp-connectors-vpc-overview"></a>

AWS Transfer Family SFTP 커넥터는 Amazon VPC Lattice를 사용하여 VPC 환경을 통해 원격 SFTP 서버에 대한 연결을 지원합니다. 이를 통해 프라이빗 호스팅 SFTP 서버에 연결하거나 VPC의 보안 제어를 통해 인터넷 트래픽을 라우팅하고 자체 NAT 게이트웨이와 탄력적 IP 주소를 사용할 수 있습니다.

**송신 유형**

SFTP 커넥터는 다음 두 가지 송신 유형 중 하나를 사용할 수 있습니다.
+ **서비스 관리**형(기본값): 커넥터는가 소유한 NAT 게이트웨이와 IP 주소를 사용하여 퍼블릭 인터넷 AWS Transfer Family 을 통해 연결을 라우팅합니다.
+ **VPC\$1LATTICE**: 커넥터는 교차 VPC 리소스 액세스를 사용하여 VPC 환경을 통해 트래픽을 라우팅합니다.

**VPC 연결을 사용해야 하는 경우**

다음 시나리오에서는 SFTP 커넥터에 VPC 연결을 사용합니다.
+ **프라이빗 SFTP 서버**: VPC에서만 액세스할 수 있는 SFTP 서버에 연결합니다.
+ **온프레미스 연결**: AWS Direct Connect 또는 AWS Site-to-Site VPN 연결을 통해 온프레미스 SFTP 서버에 연결합니다.
+ **사용자 지정 IP 주소**: BYOIP 시나리오를 포함하여 자체 NAT 게이트웨이와 탄력적 IP 주소를 사용합니다.
+ **중앙 집중식 보안 제어**: 조직의 중앙 수신/송신 제어를 통해 파일 전송을 라우팅합니다.

**요구 사항**

VPC\$1LATTICE 지원 SFTP 커넥터를 생성하기 전에 다음이 필요합니다.
+ VPC 및 관련 인프라(서브넷, 라우팅 테이블, 보안 그룹)
+ VPC의 Resource Gateway(최소 2개의 가용 영역)
+ 대상 SFTP 서버를 지정하는 리소스 구성

자세한 설정 지침은 섹션을 참조하세요[VPC\$1LATTICE 지원 SFTP 커넥터 생성](create-vpc-sftp-connector-procedure.md#create-vpc-connector-procedure). 그리고 예제는 단원을 참조하십시오[SFTP 커넥터의 VPC 연결 예제](create-vpc-sftp-connector-procedure.md#sftp-connectors-vpc-examples).

# SFTP 커넥터 사용
<a name="transfer-sftp-connectors"></a>

이 주제에서는 SFTP 커넥터를 사용하여 지원되는 파일 작업을 수행하는 방법을 설명합니다. [https://console.aws.amazon.com/transfer/](https://console.aws.amazon.com/transfer/) AWS Transfer Family 콘솔에서 커넥터의 세부 정보를 선택하여 이러한 작업을 수행하는 예제 명령을 찾을 수도 있습니다.

SFTP 커넥터를 생성한 후이 커넥터를 사용하여 연결된 원격 SFTP 서버에서 다음 파일 작업을 수행할 수 있습니다.
+ Amazon S3에서 원격 SFTP 서버로 파일을 전송합니다.
+ 원격 SFTP 서버에서 Amazon S3로 파일을 검색합니다.
+ 원격 SFTP 서버의 디렉터리에서 파일 및 하위 폴더를 나열합니다.
+ 원격 SFTP 서버에서 파일 및 디렉터리를 삭제, 이름 바꾸기 또는 이동합니다.

커넥터 생성에 대한 자세한 설명은 [SFTP 커넥터 생성](configure-sftp-connector.md) 섹션을 참조하세요.

**Topics**
+ [파일 전송](transfer-files-and-track.md)
+ [원격 디렉터리의 콘텐츠 나열](sftp-connector-list-dir.md)
+ [원격 서버에서 파일 또는 디렉터리 이동, 이름 바꾸기 또는 삭제](move-delete-remote-files.md)

# 파일 전송
<a name="transfer-files-and-track"></a>

**Topics**
+ [SFTP 커넥터를 사용하여 파일을 보내고 검색합니다.](#send-retrieve-connector-details)

## SFTP 커넥터를 사용하여 파일을 보내고 검색합니다.
<a name="send-retrieve-connector-details"></a>

SFTP 커넥터를 사용하여 파일을 전송하고 검색하려면 [https://docs.aws.amazon.com/transfer/latest/APIReference/API_StartFileTransfer.html](https://docs.aws.amazon.com/transfer/latest/APIReference/API_StartFileTransfer.html) API 작업을 사용하고 *파일 전송*(아웃바운드 전송) 또는 *파일 수신*(인바운드 전송) 여부에 따라 다음 파라미터를 지정합니다. 각 `StartFileTransfer` 요청에는 10개의 개별 경로가 포함될 수 있습니다.

**참고**  
 기본적으로 SFTP 커넥터는 한 번에 하나의 파일을 처리하여 파일을 순차적으로 전송합니다. 커넥터가 동일한 사용자의 동시 세션을 지원하는 원격 서버와 동시 세션을 생성하고 최대 5개의 파일을 병렬로 처리하도록 하여 전송 성능을 가속화할 수 있습니다.  
 커넥터에 대한 동시 연결을 활성화하려면 커넥터를 생성하거나 업데이트할 때 **최대 동시 연결** 설정을 편집할 수 있습니다. 자세한 내용은 [서비스 관리형 송신을 사용하여 SFTP 커넥터 생성](create-sftp-connector-procedure.md)을 참조하세요.
+ **아웃바운드 전송** 
  + `send-file-paths`에는 파트너의 SFTP 서버로 전송할 파일을 위한 1\$110개의 소스 파일 경로가 포함됩니다.
  + `remote-directory-path`는 고객의 SFTP 서버에서 파일을 전송할 원격 경로입니다.
+ **인바운드 전송** 
  + `retrieve-file-paths`에는 1\$110개의 원격 경로가 포함됩니다. 각 경로는 파트너의 SFTP 서버에서 Transfer Family 서버로 파일을 전송할 위치를 지정합니다.
  + `local-directory-path`는 파일이 저장되는 Amazon S3 위치 (버킷 및 선택적 접두사) 입니다.

파일을 보내려면 `send-file-paths` 및 `remote-directory-path` 파라미터를 지정합니다. 최대 10개의 파일을 `send-file-paths` 파라미터에 지정할 수 있습니다. 다음 예 명령은 Amazon S3 스토리지에 있는 `/amzn-s3-demo-source-bucket/file1.txt` 및 `/amzn-s3-demo-source-bucket/file2.txt`라는 파일을 파트너의 SFTP 서버의 `/tmp` 디렉터리로 보냅니다. 이 예 명령을 사용하려면 `amzn-s3-demo-source-bucket`를 실제 버킷으로 대체하세요.

```
aws transfer start-file-transfer --send-file-paths /amzn-s3-demo-source-bucket/file1.txt /amzn-s3-demo-source-bucket/file2.txt \
    --remote-directory-path /tmp --connector-id c-1111AAAA2222BBBB3 --region us-east-2
```

파일을 검색하려면 `retrieve-file-paths` 및 `local-directory-path` 파라미터를 지정합니다. 다음 예제에서는 `/my/remote/file2.txt` 파트너의 SFTP 서버에서 `/my/remote/file1.txt` 및 파일을 검색하여 Amazon S3 위치 /amzn-s3-demo-bucket/*prefix*에 배치합니다. 이 예 명령을 사용하려면 `user input placeholders`를 실제 정보로 대체하세요.

```
aws transfer start-file-transfer --retrieve-file-paths /my/remote/file1.txt  /my/remote/file2.txt \
   --local-directory-path /amzn-s3-demo-bucket/prefix --connector-id c-2222BBBB3333CCCC4 --region us-east-2
```

이전 예는 SFTP 서버의 절대 경로를 지정합니다. 상대 경로, 즉 SFTP 사용자의 홈 디렉터리를 기준으로 하는 경로를 사용할 수도 있습니다. 예컨대, SFTP 사용자가 `marymajor`이고 SFTP 서버의 홈 디렉터리가 `/users/marymajor/`인 경우 다음 명령은 `/amzn-s3-demo-source-bucket/file1.txt`을 `/users/marymajor/test-connectors/file1.txt`으로 전송합니다.

```
aws transfer start-file-transfer --send-file-paths /amzn-s3-demo-source-bucket/file1.txt \
   --remote-directory-path test-connectors --connector-id c-2222BBBB3333CCCC4 --region us-east-2
```

# 원격 디렉터리의 콘텐츠 나열
<a name="sftp-connector-list-dir"></a>

원격 SFTP 서버에서 파일을 검색하기 전에 원격 SFTP 서버의 디렉터리 콘텐츠를 검색할 수 있습니다. 이렇게 하려면 [https://docs.aws.amazon.com/transfer/latest/APIReference/API_StartDirectoryListing.html](https://docs.aws.amazon.com/transfer/latest/APIReference/API_StartDirectoryListing.html) API 작업을 사용합니다.

다음 예시에서는 커넥터 구성에 지정된 원격 SFTP 서버의 `home` 폴더 콘텐츠를 나열합니다. 결과는 Amazon S3 위치 `/amzn-s3-demo-bucket/connector-files`, 라는 파일에 배치됩니다`c-AAAA1111BBBB2222C-6666abcd-11aa-22bb-cc33-0000aaaa3333.json`.

```
aws transfer start-directory-listing  \
   --connector-id c-AAAA1111BBBB2222C  \ 
   --output-directory-path /amzn-s3-demo-bucket/example/connector-files  \
   --remote-directory-path /home
```

이 AWS CLI 명령은 결과가 포함된 파일 이름과 목록 ID를 반환합니다.

```
{
    "ListingId": "6666abcd-11aa-22bb-cc33-0000aaaa3333",
    "OutputFileName": "c-AAAA1111BBBB2222C-6666abcd-11aa-22bb-cc33-0000aaaa3333.json"
}
```

**참고**  
출력 파일의 이름 지정 규칙은 입니다`connector-ID-listing-ID.json`.

JSON 파일에는 다음 정보가 포함되어 있습니다.
+ `filePath`: 원격 서버의 SFTP 커넥터에 대한 목록 요청 디렉터리를 기준으로 한 원격 파일의 전체 경로입니다.
+ `modifiedTimestamp`: 파일이 마지막으로 수정된 시간, 초 단위, 협정 세계시(UTC) 형식. 이 필드는 선택 사항입니다. 원격 파일 속성에 타임스탬프가 포함되어 있지 않으면 파일 목록에서 생략됩니다.
+ `size`: 바이트 단위의 파일 크기입니다. 이 필드는 선택 사항입니다. 원격 파일 속성에 파일 크기가 포함되어 있지 않으면 파일 목록에서 생략됩니다.
+ `path`: 원격 서버의 SFTP 커넥터에 대한 목록 요청의 디렉터리를 기준으로 한 원격 디렉터리의 전체 경로입니다.
+ `truncated`: 목록 출력에 원격 디렉터리에 포함된 모든 항목이 포함되어 있는지 여부를 나타내는 플래그입니다. `truncated` 출력 값이 true인 경우 선택적 `max-items` 입력 속성에 제공된 값을 늘려 더 많은 항목을 나열할 수 있습니다(최대 허용 목록 크기인 항목 10,000개까지).

다음은 원격 디렉터리에 두 개의 파일과 두 개의 하위 디렉터리(경로`c-AAAA1111BBBB2222C-6666abcd-11aa-22bb-cc33-0000aaaa3333.json`)가 포함된 출력 파일()의 내용의 예입니다.

```
{
    "files": [
        {
            "filePath": "/home/what.txt",
            "modifiedTimestamp": "2024-01-30T20:34:54Z",
            "size" : 2323
        },
        {
            "filePath": "/home/how.pgp",
            "modifiedTimestamp": "2024-01-30T20:34:54Z",
            "size" : 4691
        }
    ],
    "paths": [
        {
            "path": "/home/magic"
        },
        {
            "path": "/home/aws"
        },
    ],
    "truncated": "false"
}
```

# 원격 서버에서 파일 또는 디렉터리 이동, 이름 바꾸기 또는 삭제
<a name="move-delete-remote-files"></a>

**Topics**
+ [원격 SFTP 서버에서 파일 또는 디렉터리 이동 또는 이름 바꾸기](#move-remote-file)
+ [원격 SFTP 서버에서 파일 또는 디렉터리 삭제](#delete-remote-file)

## 원격 SFTP 서버에서 파일 또는 디렉터리 이동 또는 이름 바꾸기
<a name="move-remote-file"></a>

SFTP 커넥터를 사용하여 원격 SFTP 서버에서 파일 및 디렉터리를 이동하거나 이름을 바꿀 수 있습니다. 커넥터를 사용하여 성공적으로 처리하려면 원격 서버가 이러한 작업을 지원해야 합니다.

몇 가지 일반적인 사용 사례는 다음과 같습니다.
+ 원격 서버는 매시간 동일한 파일 이름이지만 타임스탬프가 다른 새 파일을 생성하거나 수신합니다. 기본 폴더를 최신 상태로 유지하려면(최신 파일만 포함) 커넥터를 사용하여 이전 파일을 아카이브된 폴더로 이동할 수 있습니다.
+ 커넥터를 사용하여 원격 디렉터리의 모든 파일을 나열한 다음 모든 파일을 로컬 스토리지로 전송합니다. 그런 다음 커넥터를 사용하여 파일을 원격 서버의 아카이브된 폴더로 이동할 수 있습니다.

명령은 단일 소스 및 대상 파일 또는 디렉터리를 인수로 취하므로 처리하려는 각 파일 또는 디렉터리에 대해 `StartRemoteMove` 호출을 사용해야 합니다. 그러나 커넥터가 동일한 사용자의 동시 세션을 지원하는 원격 서버와 동시 세션을 생성하고 최대 5개의 파일을 병렬로 이동/이름 변경하도록 하여 성능을 가속화할 수 있습니다.

다음 예제에서는 원격 SFTP 서버의 파일을에서 `/source/folder/sourceFile` 로 이동`/destination/targetFile`하고 작업에 대한 고유 식별자를 반환합니다.

```
aws transfer --connector-id c-AAAA1111BBBB2222C start-remote-move \
   --source-path /source/folder/sourceFile --target-path /destination/targetFile
```

**참고**  
이동/이름 변경 작업의 경우 Transfer Family는 표준 `SFTP SSH_FXP_RENAME` 명령을 사용하여 이동/이름 변경 작업을 수행합니다.

## 원격 SFTP 서버에서 파일 또는 디렉터리 삭제
<a name="delete-remote-file"></a>

SFTP 커넥터를 사용하여 원격 SFTP 서버의 파일 또는 디렉터리를 삭제할 수 있습니다. 커넥터를 사용하여 성공적으로 처리하려면 원격 서버가 이러한 작업을 지원해야 합니다.

**참고**  
원격 디렉터리에 대한 삭제 작업은 빈 디렉터리에만 지원됩니다.

몇 가지 일반적인 사용 사례는 다음과 같습니다.
+ 커넥터를 사용하여 원격 SFTP 서버에서 파일을 검색하고 Amazon S3 버킷에 저장한 다음 암호화합니다. 마지막으로 커넥터를 사용하여 원격 서버에서 암호화되지 않은 파일을 삭제할 수 있습니다.
+ 커넥터를 사용하여 원격 디렉터리의 모든 파일을 나열한 다음 모든 파일을 로컬 스토리지로 전송합니다. 그런 다음 커넥터를 사용하여 전송한 모든 파일을 삭제할 수 있습니다. 원한다면 원격 디렉터리를 삭제할 수도 있습니다.

명령은 단일 파일 또는 디렉터리를 인수로 취하므로 삭제하려는 각 파일 또는 디렉터리에 대해 `StartRemoteDelete` 호출을 사용해야 합니다. 그러나 커넥터가 동일한 사용자의 동시 세션을 지원하는 원격 서버와 동시 세션을 생성하고 최대 5개의 파일/디렉터리를 병렬로 삭제하도록 하여 성능을 가속화할 수 있습니다.

다음 예제에서는 경로의 원격 SFTP 서버에서 파일을 삭제`/delete/folder/deleteFile`하고 작업에 대한 고유 식별자를 반환합니다.

```
aws transfer start-remote-delete --connector-id c-AAAA1111BBBB2222C \
   --delete-path /delete/folder/deleteFile
```

**참고**  
삭제 작업의 경우 Transfer Family는 표준 `SSH_FXP_REMOVE` 명령을 사용하여 파일을 삭제하고 디렉터리`SSH_FXP_RMDIR`를 삭제합니다.

# SFTP 커넥터 모니터링
<a name="track-connector-progress"></a>

다음 방법 중 하나를 사용하여 커넥터 작업의 상태를 모니터링할 수 있습니다. 필요에 맞는 접근 방식을 선택합니다.

## 커넥터 API를 사용하여 파일 전송 요청 상태 쿼리
<a name="sftp-connector-api-query"></a>

파일 전송 작업의 진행 상황을 추적하려면 특정 파일 전송 작업에서 전송 중인 각 개별 파일의 상태에 대한 실시간 업데이트 및 세부 정보를 반환하는 [https://docs.aws.amazon.com//transfer/latest/APIReference/API_ListFileTransferResults.html](https://docs.aws.amazon.com//transfer/latest/APIReference/API_ListFileTransferResults.html) API 작업을 사용합니다. 커넥터 ID와 전송 ID를 제공하여 파일 전송을 지정합니다. 다음 예제에서는 커넥터 ID `a-11112222333344444` 및 transfer-ID에 대한 파일 목록을 반환합니다`aa1b2c3d4-5678-90ab-cdef-EXAMPLE11111`.

```
aws transfer list-file-transfer-results --connector-id a-11112222333344444 --transfer-id a1b2c3d4-5678-90ab-cdef-EXAMPLE11111
```

**참고**  
파일 전송 결과는 `ListFileTransferResults` API 작업을 호출한 후 최대 7일까지 사용할 수 있습니다.

SFTP 커넥터를 사용하는 파일 전송 요청에 대한 로그 및 이벤트를 볼 수도 있습니다. Transfer Family에 대한 Amazon EventBridge 이벤트는에 설명되어 있습니다[SFTP 커넥터 이벤트](events-detail-reference.md#event-detail-sftp-connector-events). Transfer Family CloudWatch 로그 항목을 보는 방법은 섹션을 참조하세요[Transfer Family 로그 스트림 보기](view-log-entries.md).

## Amazon EventBridge에서 SFTP 커넥터 이벤트 보기
<a name="track-connector-progress-eventbridge"></a>

SFTP 커넥터에서 수행하는 각 작업에 대해 Transfer Family는 자동으로 이벤트를 생성하고 Amazon EventBridge 계정의 기본 이벤트 버스로 전송합니다. 이벤트에는 작업 상태를 포함하여 작업에 대한 자세한 메타데이터가 포함됩니다. EventBridge에서 이러한 이벤트를 구독하고, 작업 상태와 같은 특정 이벤트 기준에 필터를 적용하고, 상태에 따라 다운스트림 작업을 자동으로 트리거할 수 있습니다. SFTP 커넥터 작업에서 생성된 이벤트에 대한 자세한 내용은 섹션을 참조하세요[SFTP 커넥터 이벤트](events-detail-reference.md#event-detail-sftp-connector-events).

## Amazon CloudWatch에서 SFTP 커넥터 로그 보기
<a name="track-connector-cloudwatch"></a>

모든 SFTP 커넥터 작업은 CloudWatch에서 세부 로그를 생성합니다. SFTP 커넥터에서 생성된 로그 항목의 예는 섹션을 참조하세요[SFTP 커넥터의 로그 항목 예](cw-example-logs.md#example-sftp-connector-logs).

## VPC 송신 유형 커넥터 모니터링
<a name="vpc-connector-monitoring"></a>

VPC 송신 유형 커넥터는 표준 서비스 관리형 커넥터 외에 추가 모니터링 기능과 고려 사항을 제공합니다.

### 커넥터 상태 모니터링
<a name="vpc-connector-status-monitoring"></a>

VPC\$1LATTICE 커넥터에는 프로비저닝 및 운영 상태를 모니터링하는 데 도움이 되는 추가 정보가 포함되어 있습니다.
+ **EgressType 필드**: VPC\$1LATTICE 송신 유형 커넥터`VPC`에 대해 표시됩니다.
+ **EgressConfig 필드**: 리소스 구성 ARN 및 포트 정보를 포함합니다.

`describe-connector` API를 사용하여 커넥터 상태를 모니터링합니다.

```
aws transfer describe-connector --connector-id c-1234567890abcdef0
```

### VPC Lattice 비용 모니터링
<a name="vpc-lattice-cost-monitoring"></a>

VPC 송신 유형 커넥터에는 모니터링해야 하는 추가 VPC Lattice 요금이 발생합니다.
+ **리소스 공급자 요금**: 리소스 공급자로서 데이터 처리에 대해 0.006/GB의 요금이 청구됩니다(VPC Lattice에서 직접 청구).
+ **리소스 소비자 요금**: AWS Transfer Family는 0.01 USD/GB 리소스 소비자 비용(첫 1PB)을 흡수합니다.
+ **NAT 게이트웨이 요금**: VPC를 통해 액세스하는 퍼블릭 엔드포인트의 경우 추가 NAT 게이트웨이 및 데이터 전송 요금이 적용될 수 있습니다.
+ **Transfer Family 요금**: 표준 0.40 USD/GB 데이터 처리 요금이 계속 적용됩니다.

 AWS 비용 및 결제 콘솔을 통해 VPC Lattice 사용 및 비용을 모니터링하고 VPC Lattice 서비스를 기준으로 필터링합니다.

### VPC 커넥터에 대한 네트워크 모니터링
<a name="vpc-network-monitoring"></a>

VPC 송신 유형 커넥터의 네트워크 활동 및 성능을 모니터링합니다.
+ **VPC 흐름 로그**: VPC 흐름 로그를 활성화하여 Resource Gateway와 SFTP 서버 간의 네트워크 트래픽 패턴 모니터링
+ **VPC Lattice 액세스 로그**: VPC Lattice는 소스/대상 IP 주소, 연결 타이밍 및 데이터 전송 볼륨을 보여주는 액세스 로그를 제공합니다.
+ **보안 그룹 모니터링**: 보안 그룹 규칙 및 트래픽 패턴을 모니터링하여 적절한 네트워크 액세스 제어를 보장합니다.
+ **DNS 확인 모니터링**: 서비스 네트워크 엔드포인트의 DNS 확인 시간 및 장애 모니터링

VPC Lattice 액세스 로그 항목의 예:

```
{
  "eventTimestamp": "2025-01-16T20:59:08.531Z",
  "serviceNetworkArn": "arn:aws:vpc-lattice:us-east-1:123456789012:servicenetwork/sn-1234567890abcdef0",
  "sourceVpcArn": "arn:aws:ec2:us-east-1:123456789012:vpc/vpc-12345678",
  "resourceConfigurationArn": "arn:aws:vpc-lattice:us-east-1:123456789012:resourceconfiguration/rcfg-12345678",
  "protocol": "tcp",
  "sourceIpPort": "10.0.1.100:33760",
  "destinationIpPort": "10.0.2.200:22",
  "gatewayIpPort": "10.0.1.150:1769",
  "resourceIpPort": "10.0.2.200:22"
}
```

### 모니터링을 통한 문제 해결
<a name="vpc-connector-troubleshooting-monitoring"></a>

모니터링 데이터를 사용하여 일반적인 VPC 커넥터 문제를 해결합니다.
+ **보류 중 상태**: DNS 확인 진행 상황을 모니터링하고 전송을 시도하기 전에 ACTIVE 상태를 기다립니다.
+ **연결 제한 시간**: 포트 22에서 차단된 트래픽에 대한 VPC 흐름 로그 및 보안 그룹 규칙 확인
+ **전송 실패**: CloudWatch 로그에서 자세한 오류 메시지를 검토하고 VPC Lattice 액세스 로그에서 네트워크 수준 문제를 검토합니다.
+ **성능 문제**: VPC Lattice 액세스 로그에서 연결 타이밍 및 처리량 지표 모니터링

# SFTP 커넥터 관리
<a name="manage-sftp-connectors"></a>

이 주제에서는 SFTP 커넥터를 보고 업데이트하는 방법을 설명합니다.

**참고**  
각 커넥터에는 커넥터 수명 동안 변경되지 않은 상태로 유지되는 고정 IP 주소가 자동으로 할당됩니다. 이렇게 하면 알려진 IP 주소의 인바운드 연결만 허용하는 원격 SFTP 서버에 연결할 수 있습니다. 커넥터에는에서 동일한 프로토콜(SFTP 또는 AS2)을 사용하여 모든 커넥터가 공유하는 고정 IP 주소 세트가 할당됩니다 AWS 계정.  
VPC\$1LATTICE 지원 커넥터의 경우 원격 SFTP 서버는 AWS Transfer Family 서비스 관리형 IP 주소 대신 VPC CIDR 범위의 IP 주소를 확인합니다.

## SFTP 커넥터 업데이트
<a name="update-sftp-connector"></a>

커넥터의 기존 파라미터 값을 변경하려면 `update-connector` 명령을 실행하면 됩니다. 다음 명령은 지역의 커넥터 `connector-id`의 암호를 `region-id`에서 `secret-ARN`로 업데이트합니다. 이 예 명령을 사용하려면 `user input placeholders`를 실제 정보로 대체하세요.

```
aws transfer update-connector --sftp-config '{"UserSecretId":"secret-ARN"}' \
   --connector-id connector-id --region region-id
```

### VPC 연결 설정 업데이트
<a name="update-vpc-connector"></a>

서비스 관리형 및 VPC 송신 유형 간 전환 또는 리소스 구성 ARN 변경을 포함하여 기존 커넥터에 대한 VPC 연결 설정을 업데이트할 수 있습니다.

커넥터를 서비스 관리형에서 VPC 송신으로 전환하려면:

```
aws transfer update-connector \
   --connector-id connector-id \
   --egress-type VPC \
   --egress-config ResourceConfigurationArn=resource-configuration-arn
```

VPC\$1LATTICE 지원 커넥터의 리소스 구성 ARN을 업데이트하려면

```
aws transfer update-connector \
   --connector-id connector-id \
   --egress-config ResourceConfigurationArn=new-resource-configuration-arn
```

**참고**  
VPC 연결 설정을 업데이트할 때 재구성 프로세스 `PENDING` 중에 커넥터 상태가 로 변경됩니다. `describe-connector` 명령을 사용하여 커넥터 상태를 모니터링합니다.

## SFTP 커넥터 세부 정보 보기
<a name="sftp-connectors-view-info"></a>

 AWS Transfer Family 콘솔에서 SFTP 커넥터의 세부 정보 및 속성 목록을 찾을 수 있습니다.

**커넥터 세부 정보를 보려면**

1. [https://console.aws.amazon.com/transfer/](https://console.aws.amazon.com/transfer/) AWS Transfer Family 콘솔을 엽니다.

1. 왼쪽 탐색 창에서 **커넥터**를 선택합니다.

1. **커넥터 ID** 열에서 식별자를 선택하면 선택한 커넥터의 세부 정보 페이지가 표시됩니다.

커넥터 세부 정보 페이지에서 **편집**을 선택하여 SFTP 커넥터의 속성을 변경할 수 있습니다.

### VPC 커넥터 상태 모니터링
<a name="vpc-connector-status-monitoring"></a>

VPC\$1LATTICE 지원 커넥터에는 프로비저닝 프로세스를 모니터링하는 데 도움이 되는 추가 상태 정보가 포함되어 있습니다.
+ **상태**: `PENDING`, `ACTIVE`또는를 표시합니다. `ERRORED` 
+ **EgressType**: `VPC` 또는를 표시합니다. `SERVICE_MANAGED` 
+ **EgressConfig**: VPC 커넥터에 대한 리소스 구성 ARN 포함
+ **오류**: 커넥터가 `ERRORED` 상태인 경우 자세한 오류 정보를 제공합니다.

VPC 커넥터의 경우 트래픽이 VPC IP 주소를 대신 사용하기 때문에 `ServiceManagedEgressIpAddresses` 필드는 null입니다.

**참고**  
다음 AWS Command Line Interface (AWS CLI) 명령을 실행하면 다른 형식이긴 하지만이 정보의 대부분을 얻을 수 있습니다. 이 예 명령을 사용하려면 `user input placeholders`를 실제 정보로 대체하세요.  

```
aws transfer describe-connector --connector-id your-connector-id
```
자세한 내용은 API 참조의 [https://docs.aws.amazon.com/transfer/latest/APIReference/API_DescribeConnector.html](https://docs.aws.amazon.com/transfer/latest/APIReference/API_DescribeConnector.html)를 참조하세요.

# SFTP 커넥터의 크기 조정 및 할당량
<a name="scale-and-limits-sftp-connector"></a>

**Topics**
+ [Transfer for SFTP 커넥터 할당량](#limits-sftp-connector)
+ [SFTP 커넥터 크기 조정](#scaling-sftp-connector)

## Transfer for SFTP 커넥터 할당량
<a name="limits-sftp-connector"></a>

SFTP 커넥터에는 다음과 같은 할당량이 적용됩니다.

**참고**  
SFTP 커넥터에 대한 추가 서비스 할당량은 [AWS Transfer Family 의 엔드포인트 및 할당량](https://docs.aws.amazon.com//general/latest/gr/transfer-service.html)에 나열되어 있습니다*Amazon Web Services 일반 참조*.


**SFTP 커넥터 할당량**  

| 이름 | 기본값 | 조정 가능 | 
| --- | --- | --- | 
| 초당 최대 테스트 연결 트랜잭션(TPS) | 계정 한 개에 대해 초당 1개의 요청 | 아니요 | 
| 보류 중인 파일 전송의 최대 대기열 크기 | 1000 | 아니요 | 
| 최대 파일 크기 | 150기가바이트(GiB) | 아니요 | 
| 파일당 최대 전송 시간 | 12시간 | 아니요 | 
| 파일당 최대 요청 대기 시간 | 12시간 | 아니요 | 
| 계정당 커넥터의 최대 대역폭(SFTP 및 AS2 커넥터 모두이 값에 기여) | 50MBps | 아니요 | 
| 디렉터리 나열 작업을 위한 최대 항목 수 | 10,000 | 아니요 | 

**참고**  
 기본적으로 SFTP 커넥터는 한 번에 하나의 파일을 처리하여 파일을 순차적으로 전송합니다. 커넥터가 동일한 사용자의 동시 세션을 지원하는 원격 서버와 동시 세션을 생성하고 최대 5개의 파일을 병렬로 처리하도록 하여 전송 성능을 가속화할 수 있습니다.  
 커넥터에 동시 연결을 활성화하려면 커넥터를 생성하거나 업데이트할 때 **최대 동시 연결** 설정을 편집할 수 있습니다. 자세한 내용은 [서비스 관리형 송신을 사용하여 SFTP 커넥터 생성](create-sftp-connector-procedure.md)을 참조하세요.

SFTP 커넥터의 자격 증명을 저장하기 위해 각 Secrets Manager 보안 암호와 연결된 할당량이 있습니다. 동일한 보안 암호를 사용하여 여러 유형의 키를 저장하는 경우 여러 용도로 이러한 할당량이 발생할 수 있습니다.
+ 단일 보안 암호의 총 길이: 12,000자
+ **Password** 문자열의 최대 길이: 1,024자
+ **PrivateKey** 문자열의 최대 길이: 8192자
+ **Username** 문자열의 최대 길이: 100자

## SFTP 커넥터 크기 조정
<a name="scaling-sftp-connector"></a>

이 섹션에서는 AWS Transfer Family SFTP 커넥터 워크로드를 확장하는 방법에 대한 고려 사항을 설명합니다. SFTP 커넥터를 사용하여 워크로드를 확장하려는 경우 적용되는 다음 세 가지 할당량을 고려해야 합니다.
+ **최대 대기열 크기입니다.** 이는 커넥터 대기열에서 요청된 대기 중인 작업의 최대 수를 나타냅니다. 보류 중인 작업은 성공 또는 실패로 아직 완료되지 않은 이전에 제출된 전송 요청을 나타냅니다.

  보류 중인 요청의 최대 대기열 깊이는 현재 커넥터당 1,000개로 설정됩니다([AWS Transfer Family 서비스 할당량](https://docs.aws.amazon.com//general/latest/gr/transfer-service.html)에 정의됨). 짧은 기간 동안 수천 개의 전송 작업을 요청하면 워크로드가이 서비스 제한을 초과할 수 있으며 대기 중인 최대 요청을 초과했습니다라는 메시지가 `ThrottlingException` 표시된를 받게 됩니다.  워크로드에이 할당량이 적용되는 경우 AWS Support 또는 계정 팀을 통해 Transfer Family 서비스 팀에 문의하여 확장성 요구 사항에 대해 논의하세요.

  다음 작업 중 하나 또는 둘 다를 수행할 수도 있습니다.
  + 파일 볼륨을 여러 커넥터에 분산합니다.
  +  커넥터가 원격 서버와 동시 세션을 생성하여 대기열의 여러 요청을 병렬로 처리하도록 합니다.
+ **동시 세션 수입니다.** 기본적으로 SFTP 커넥터는 한 번에 하나의 파일을 전송하여 대기열에서 순차적으로 파일을 전송합니다.

  커넥터가 여러 파일을 병렬로 전송하도록 하여 전송 성능을 가속화할 수 있습니다. 동일한 사용자의 동시 세션을 지원하는 원격 서버로 동시 세션을 생성하고 최대 5개의 파일을 병렬로 처리할 수 있습니다. SFTP 커넥터를 생성할 때 커넥터를 생성하거나 업데이트할 때 **최대 동시 연결** 설정에 대해 최대 5개의 값을 선택합니다. 자세한 내용은 [서비스 관리형 송신을 사용하여 SFTP 커넥터 생성](create-sftp-connector-procedure.md)을 참조하세요.
+ **`StartFileTransfer` 요청 속도입니다.** 각 SFTP 커넥터를 사용하여 초당 최대 100개의 파일 경로를 전송하도록 요청할 수 있습니다. 요청된 파일 경로는 처리를 위해 커넥터의 대기열에 추가됩니다. 개별 `StartFileTransfer` 명령에 제공된 파일 수와 관계없이 `StartFileTransfer` 명령을 반복적으로 사용하여 커넥터당 초당 최대 100개의 파일 경로를 요청할 수 있습니다.

# SFTP 커넥터를 사용한 참조 아키텍처
<a name="reference-architectures"></a>

이 섹션에서는 SFTP 커넥터를 사용하여 자동 파일 전송 워크플로를 구성하는 데 사용할 수 있는 참조 자료를 나열합니다. Amazon EventBridge의 SFTP 커넥터 이벤트를 사용하여에서 파일 전송 작업과 사전 및 사후 처리 작업 간에 오케스트레이션하여 자체 이벤트 기반 아키텍처를 설계할 수 있습니다 AWS.

## 블로그 게시물
<a name="connector-blogs"></a>

다음 블로그 게시물은 SFTP 커넥터를 사용하여 원격 SFTP 서버로 전송하기 전에 PGP를 사용한 파일 암호화를 포함하여 [AWS Transfer Family SFTP 커넥터를 사용하여 MFT 워크플로를 빌드하기 위한 참조 아키텍처를 제공합니다. SFTP 커넥터 및 PGP 암호화를 사용하여 안전하고 규정을 준수하는 관리형 파일 전송 설계](https://aws.amazon.com/blogs//storage/architecting-secure-and-compliant-managed-file-transfers-with-aws-transfer-family-sftp-connectors-and-pgp-encryption/).

## 워크숍
<a name="connector-workshops"></a>
+ 다음 워크숍에서는 SFTP 커넥터를 구성하고 커넥터를 사용하여 원격 SFTP 서버에서 파일을 보내거나 검색하기 위한 실습을 제공합니다. [Transfer Family - SFTP 워크숍](https://catalog.workshops.aws/transfer-family-sftp/en-US).
+ 다음 워크숍은 실습을 통해 외부 SFTP 서버와 Amazon S3 간의 파일 전송 및 해당 파일의 일반적인 사전 및 사후 처리와 관련된 완전 자동화된 이벤트 기반 워크플로인 [이벤트 기반 MFT 워크숍](https://catalog.us-east-1.prod.workshops.aws/workshops/e55c90e0-bbb0-47e1-be83-6bafa3a59a8a/en-US)을 구축합니다.

  이 동영상에서는이 워크숍을 안내합니다.  
[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/oojopisG4lA/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/oojopisG4lA)

## Solutions
<a name="connector-patterns"></a>

AWS Transfer Family 는 다음 솔루션을 제공합니다.
+ [파일 전송 동기화 솔루션은](https://github.com/aws-samples/file-transfer-sync-solution) SFTP 커넥터를 사용하여 전체 폴더 구조를 포함한 원격 SFTP 디렉터리를 로컬 Amazon S3 버킷과 동기화하는 프로세스를 자동화하는 참조 아키텍처를 제공합니다. 원격 디렉터리를 나열하고, 변경 사항을 감지하고, 새 파일 또는 수정된 파일을 전송하는 프로세스를 오케스트레이션합니다.
+ [서버리스랜드 -를 사용한 원격 SFTP 서버와 S3; 간의 선택적 파일 전송 AWS Transfer Family](https://serverlessland.com/patterns/awstransfer-s3-sam?ref=search)은 원격 SFTP 위치에 저장된 파일을 나열하고 선택적 파일을 Amazon S3로 전송하기 위한 샘플 패턴을 제공합니다.

## VPC 참조 아키텍처
<a name="vpc-reference-architectures"></a>

다음 참조 아키텍처는 VPC\$1LATTICE 지원 SFTP 커넥터를 배포하기 위한 일반적인 패턴을 보여줍니다. 이 예제는 전체 AWS 아키텍처에서 VPC Lattice 리소스를 생성해야 하는 위치를 이해하는 데 도움이 됩니다.

### 공유 송신 인프라가 있는 단일 계정
<a name="vpc-arch-single-account"></a>

이 아키텍처에서 송신 인프라(NAT 게이트웨이, VPN 터널 또는 Direct Connect)는 SFTP 커넥터와 동일한 계정 내의 VPC에 구성됩니다. 모든 커넥터는 동일한 리소스 게이트웨이와 NAT 게이트웨이를 공유할 수 있습니다.

![\[NAT Gateway, Resource Gateway 및 VPC Lattice 구성 요소를 포함한 공유 송신 인프라가 있는 단일 계정의 VPC_LATTICE 지원 SFTP 커넥터를 보여주는 아키텍처 다이어그램입니다.\]](http://docs.aws.amazon.com/ko_kr/transfer/latest/userguide/images/vpc-customer-architecture-1.png)


이 패턴은 다음과 같은 경우에 적합합니다.
+ 모든 SFTP 커넥터는 단일 내에서 관리됩니다. AWS 계정
+ 송신 인프라는 SFTP 커넥터와 동일한 계정 내의 VPC에 설정됩니다.

### 중앙 집중식 송신 인프라를 사용한 교차 계정
<a name="vpc-arch-cross-account"></a>

이 아키텍처에서 송신 인프라(NAT Gateway, VPN 터널, Direct Connect 또는 B2B 방화벽)는 네트워킹 팀에서 관리하는 중앙 송신 계정에 구성됩니다. SFTP 커넥터는 MFT 관리자 팀이 관리하는 MFT 애플리케이션 계정에서 생성됩니다. 교차 계정 네트워킹은 기존 네트워킹 규칙을 준수하기 위해 Transit Gateway를 사용하여 설정됩니다.

![\[별도의 네트워킹 팀 계정에서 관리하는 중앙 집중식 송신 인프라를 사용하는 교차 계정 설정의 VPC_LATTICE 지원 SFTP 커넥터를 보여주는 아키텍처 다이어그램입니다.\]](http://docs.aws.amazon.com/ko_kr/transfer/latest/userguide/images/vpc-customer-architecture-2.png)


이 패턴은 다음과 같은 경우에 적합합니다.
+ 네트워크 인프라는 전용 계정의 별도 팀에서 관리합니다.
+ SFTP 커넥터가 생성된 계정과 송신 인프라가 설정된 계정 사이에 기존 경로(예: AWS Transit Gateway )가 있습니다. SFTP 커넥터는 두 계정을 연결하는 기존 경로를 활용할 수 있습니다.
+ 중앙 집중식 보안 제어 및 B2B 방화벽 필요
+ 네트워킹 팀과 애플리케이션 팀 간의 업무 분리를 유지해야 합니다.