AWS 디렉터리 서비스 자격 증명 공급자 사용 - AWS Transfer Family

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

AWS 디렉터리 서비스 자격 증명 공급자 사용

이 주제에서는 에 대한 AWS Directory Service 자격 증명 공급자를 사용하는 방법을 설명합니다 AWS Transfer Family.

사용 AWS Directory Service for Microsoft Active Directory

를 사용하여 AWS Transfer Family 를 사용하여 파일 전송 최종 사용자를 인증할 수 있습니다 AWS Directory Service for Microsoft Active Directory. 최종 사용자의 자격 증명을 변경하거나 사용자 지정 권한 부여자를 사용하지 않고도 Active Directory 인증을 사용하는 파일 전송 워크플로를 원활하게 마이그레이션할 수 있습니다.

를 사용하면 Amazon Simple Storage Service(Amazon S3)에 저장된 데이터에 FTP 대해 FTPS, 및 SFTP를 통해 AWS Directory Service 사용자 및 그룹에 액세스 권한을 안전하게 제공할 AWS Managed Microsoft AD수 있습니다EFS. Amazon Elastic File System Active Directory를 사용하여 사용자의 자격 증명을 저장하면 이제 이러한 사용자에 대한 파일 전송을 더 쉽게 활성화할 수 있습니다.

Active Directory 커넥터를 사용하여 온프레미스 환경 또는 AWS 클라우드에서 의 Active Directory 그룹에 대한 액세스를 제공할 수 AWS Managed Microsoft AD 있습니다. AWS 클라우드 또는 온프레미스 네트워크에서 Microsoft Windows 환경에 이미 구성된 사용자에게 를 사용하여 자격 증명에 사용되는 AWS Transfer Family 서버에 AWS Managed Microsoft AD 대한 액세스 권한을 부여할 수 있습니다.

참고
  • AWS Transfer Family 는 Simple AD를 지원하지 않습니다.

  • Transfer Family는 리전 간 Active Directory 구성을 지원하지 않습니다. Transfer Family 서버와 동일한 리전에 있는 Active Directory 통합만 지원합니다.

  • Transfer Family는 AWS Managed Microsoft AD 또는 AD Connector를 사용하여 기존 RADIUS기반 MFA 인프라에 대한 다중 인증(MFA)을 활성화하는 것을 지원하지 않습니다.

  • AWS Transfer Family 는 Managed Active Directory의 복제된 리전을 지원하지 않습니다.

를 사용하려면 다음 단계를 수행해야 AWS Managed Microsoft AD합니다.

  1. AWS Directory Service 콘솔을 사용하여 하나 이상의 AWS Managed Microsoft AD 디렉터리를 생성합니다.

  2. Transfer Family 콘솔을 사용하여 를 자격 증명 공급자 AWS Managed Microsoft AD 로 사용하는 서버를 생성합니다.

  3. 하나 이상의 AWS Directory Service 그룹에서 액세스를 추가합니다.

  4. 필수 사항은 아니지만 사용자 액세스를 테스트하고 확인하는 것이 좋습니다.

사용을 시작하기 전에 AWS Directory Service for Microsoft Active Directory

AD 그룹의 고유 식별자를 입력합니다.

를 사용하려면 먼저 Microsoft AD 디렉터리의 각 그룹에 고유한 식별자를 제공해야 AWS Managed Microsoft AD합니다. 각 그룹의 보안 식별자(SID)를 사용하여 이를 수행할 수 있습니다. 연결한 그룹의 사용자는 AWS Transfer Family를 사용하여 활성화된 프로토콜을 통해 Amazon S3 또는 Amazon EFS 리소스에 액세스할 수 있습니다.

다음 Windows PowerShell 명령을 사용하여 그룹의 SID 를 검색하고 YourGroupName 그룹 이름을 사용합니다.

Get-ADGroup -Filter {samAccountName -like "YourGroupName*"} -Properties * | Select SamAccountName,ObjectSid
참고

를 자격 증명 공급자 AWS Directory Service 로 사용하고 있고 및 값이 다른 경우 userPrincipalNameSamAccountName는 의 값을 AWS Transfer Family 수락합니다SamAccountName. Transfer Family는 userPrincipalName에 지정된 값을 수락하지 않습니다.

역할에 AWS Directory Service 권한 추가

를 자격 증명 공급자 AWS Directory Service 로 사용하려면 권한도 필요합니다 AWS Directory Service API. 다음 권한이 필요하거나 제안됩니다.

  • Transfer Family에서 디렉토리를 조회하려면 ds:DescribeDirectories가 필요합니다.

  • Transfer Family에 대한 승인을 추가하려면 ds:AuthorizeApplication가 필요합니다.

  • ds:UnauthorizeApplication에서는 서버 생성 프로세스 중에 문제가 발생할 경우를 대비하여 임시로 생성된 모든 리소스를 제거하는 것이 좋습니다.

Transfer Family 서버를 만드는 데 사용하는 역할에 이러한 권한을 추가하세요. 이러한 권한에 대한 자세한 내용은 AWS Directory Service API 작업, 리소스 및 조건 참조 권한을 참조하세요.

액티브 디렉터리 영역 사용

Active Directory 사용자가 AWS Transfer Family 서버에 액세스하도록 하는 방법을 고려할 때는 사용자의 영역과 해당 그룹의 영역을 염두에 두세요. 가장 바람직한 것은 사용자 영역과 그룹 영역이 일치해야 하는 것입니다. 즉, 사용자와 그룹이 모두 기본 영역에 있거나 둘 다 신뢰할 수 있는 영역에 속해 있다는 뜻입니다. 그렇지 않은 경우 Transfer Family에서 사용자를 인증할 수 없습니다.

사용자를 테스트하여 구성이 올바른지 확인할 수 있습니다. 자세한 내용은 테스트 사용자를 참조하세요. 사용자/그룹 영역에 문제가 있는 경우 사용자 그룹에 연결된 액세스 권한을 찾을 수 없습니다라는 오류 메시지가 표시됩니다.

자격 증명 공급자 AWS Managed Microsoft AD 로 선택

이 섹션에서는 를 서버 AWS Directory Service for Microsoft Active Directory 와 함께 사용하는 방법을 설명합니다.

Transfer Family AWS Managed Microsoft AD 와 함께 사용하려면
  1. 에 로그인 AWS Management Console 하고 에서 AWS Directory Service 콘솔을 엽니다https://console.aws.amazon.com/directoryservicev2/.

    AWS Directory Service 콘솔을 사용하여 하나 이상의 관리형 디렉터리를 구성합니다. 자세한 내용을 알아보려면 AWS Directory Service 관리 안내서AWS Managed Microsoft AD 단원을 참조하세요.

    디렉토리 목록 및 세부 정보를 보여 주는 Directory Service 콘솔
  2. 에서 AWS Transfer Family 콘솔을 열고 서버 생성 https://console.aws.amazon.com/transfer/선택합니다.

  3. 프로토콜 선택 페이지의 목록에서 하나 이상의 프로토콜을 선택합니다.

    참고

    를 AWS Certificate Manager 선택한 경우 인증서를 제공해야 FTPS합니다.

  4. 자격 증명 제공자 선택에서 AWS Directory Service를 선택합니다.

    Directory Service를 선택한 상태에서 ID 제공자 선택 섹션을 보여 주는 콘솔 스크린샷입니다.
  5. 디렉터리 목록에는 구성한 모든 관리 디렉터리가 포함됩니다. 목록에서 디렉터리를 선택하고 다음을 선택합니다.

    참고
  6. 서버 생성을 완료하려면 다음 절차 중 하나를 사용합니다.

    해당 절차에서 ID 제공자 선택 다음 단계를 계속 진행하세요.

중요

Transfer Family 서버에서 Microsoft AD 디렉터리를 사용한 AWS Directory Service 경우 에서 이를 삭제할 수 없습니다. 먼저 서버를 삭제해야 디렉터리를 삭제할 수 있습니다.

그룹에 액세스 권한 부여

서버를 생성한 후에는 를 사용하여 활성화된 프로토콜을 통해 파일을 업로드하고 다운로드할 수 있는 액세스 권한이 있는 디렉터리의 그룹을 선택해야 합니다 AWS Transfer Family. 액세스 권한을 생성하여 이 작업을 수행할 수 있습니다.

참고

사용자는 액세스 권한을 부여하는 그룹에 직접 속해야 합니다. 예를 들어 Bob은 사용자이고 그룹 A에 속해 있으며 그룹 A 자체가 그룹 B에 포함되어 있다고 가정해 보겠습니다.

  • 그룹 A에 액세스 권한을 부여하면 Bob에게 액세스 권한이 부여됩니다.

  • 그룹 A가 아닌 그룹 B에 액세스 권한을 부여하는 경우 Bob은 액세스 권한을 갖지 않습니다.

그룹에 액세스 권한을 부여하려면
  1. 에서 AWS Transfer Family 콘솔을 엽니다https://console.aws.amazon.com/transfer/.

  2. 서버 세부 정보 페이지로 이동합니다.

  3. 액세스 섹션에서 액세스 추가를 선택합니다.

  4. 이 서버에 액세스할 AWS Managed Microsoft AD 디렉터리SID의 를 입력합니다.

    참고

    그룹의 를 찾는 방법에 SID 대한 자세한 내용은 섹션을 참조하세요사용을 시작하기 전에 AWS Directory Service for Microsoft Active Directory.

  5. 액세스 에서 그룹의 AWS Identity and Access Management (IAM) 역할을 선택합니다.

  6. 정책 섹션에서 정책을 선택합니다. 기본 설정은 없음입니다.

  7. 홈 디렉터리의 경우 그룹의 홈 디렉터리에 해당하는 S3 버킷을 선택합니다.

    참고

    세션 정책을 생성하여 사용자에게 표시되는 버킷 부분을 제한할 수 있습니다. 예를 들어, /filetest 디렉터리 아래에 있는 자신의 폴더로만 사용자를 제한하려면 상자에 다음 텍스트를 입력합니다.

    /filetest/${transfer:UserName}

    세션 정책 생성에 대한 자세한 설명은 Amazon S3 버킷을 위한 세션 정책 생성 섹션을 참조하세요.

  8. 추가를 선택하여 연결을 생성합니다.

  9. 서버를 선택합니다.

  10. 액세스 추가를 선택합니다.

    1. 그룹의 SID 를 입력합니다.

      참고

      를 찾는 방법에 대한 자세한 내용은 섹션을 SID참조하세요사용을 시작하기 전에 AWS Directory Service for Microsoft Active Directory.

  11. 액세스 추가를 선택합니다.

액세스 섹션에는 서버에 대한 액세스가 나열됩니다.

서버 액세스가 나열된 액세스 섹션이 표시된 콘솔입니다.

테스트 사용자

사용자가 서버의 AWS Managed Microsoft AD 디렉터리에 액세스할 수 있는지 테스트할 수 있습니다.

참고

사용자는 엔드포인트 구성 페이지의 액세스 섹션에 나열된 정확히 하나의 그룹(외부 ID)에 속해야 합니다. 사용자가 그룹에 속하지 않거나 둘 이상의 그룹에 속해 있는 경우 해당 사용자에게 액세스 권한이 부여되지 않습니다.

특정 사용자에게 액세스 권한이 있는지 테스트하려면
  1. 서버 세부 정보 페이지에서 작업을 선택한 다음 테스트를 선택합니다.

  2. 자격 증명 제공자 테스트의 경우 액세스 권한이 있는 그룹 중 하나에 속하는 사용자의 로그인 자격 증명을 입력합니다.

  3. 테스트를 선택합니다.

ID 제공자 테스트에 성공하면 선택한 사용자에게 서버 액세스 권한이 부여되었음을 알 수 있습니다.

성공적인 ID 제공자 테스트 응답의 콘솔 스크린샷

사용자가 액세스 권한이 있는 두 개 이상의 그룹에 속해 있는 경우 다음과 같은 응답을 받게 됩니다.

"Response":"", "StatusCode":200, "Message":"More than one associated access found for user's groups."

그룹의 서버 액세스 삭제

그룹의 서버 액세스 삭제
  1. 서버 세부 정보 페이지에서 작업을 선택한 다음 액세스 삭제를 선택합니다.

  2. 대화 상자에서 이 그룹에 대한 액세스 권한을 제거합니다.

서버 세부 정보 페이지로 돌아가면 이 그룹에 대한 액세스 권한이 더 이상 나열되지 않는 것을 볼 수 있습니다.

SSH (Secure Shell)을 사용하여 서버에 연결

서버와 사용자를 구성한 후 를 사용하여 서버에 연결하고 액세스 권한이 있는 사용자의 정규화된 사용자 이름을 SSH 사용할 수 있습니다.

sftp user@active-directory-domain@vpc-endpoint

예: transferuserexample@mycompany.com@vpce-0123456abcdef-789xyz.vpc-svc-987654zyxabc.us-east-1.vpce.amazonaws.com.

이 형식은 페더레이션 검색을 대상으로 하므로 크기가 클 수 있는 Active Directory의 검색을 제한합니다.

참고

간단한 사용자 이름을 지정할 수 있습니다. 하지만 이 경우 Active Directory 코드가 페더레이션의 모든 디렉터리를 검색해야 합니다. 이로 인해 검색이 제한될 수 있으며 사용자에게 액세스 권한이 있어야 하는 경우에도 인증이 실패할 수 있습니다.

인증이 완료되면 사용자는 사용자를 구성할 때 지정한 홈 디렉터리에 위치해 있습니다.

포리스트 및 트러스트를 사용하여 자체 관리형 Active Directory AWS Transfer Family 에 연결

자체 관리형 Active Directory(AD)의 사용자는 AWS 계정 및 Transfer Family 서버에 AWS IAM Identity Center 대한 Single Sign-On 액세스에도 를 사용할 수 있습니다. 이렇게 하려면 AWS Directory Service 다음 옵션을 사용할 수 있습니다.

  • 단방향 포리스트 신뢰(온프레미스 Active Directory에서 발신 AWS Managed Microsoft AD 및 수신)는 루트 도메인에서만 작동합니다.

  • 하위 도메인의 경우 다음 중 하나를 사용할 수 있습니다.

    • AWS Managed Microsoft AD 및 온프레미스 Active Directory 간에 양방향 신뢰 사용

    • 각 하위 도메인에는 단방향 외부 트러스트를 사용합니다.

예를 들어 transferuserexample@mycompany.com 신뢰할 수 있는 도메인을 사용하여 서버에 연결하는 경우 사용자는 신뢰할 수 있는 도메인을 지정해야 합니다.

Azure Active AWS Directory 도메인 서비스에 디렉터리 서비스 사용

  • SFTP 전송 요구 사항에 맞게 기존 Active Directory 포리스트를 활용하려면 Active Directory Connector 를 사용할 수 있습니다.

  • 완전 관리형 서비스에서 Active Directory의 이점과 고가용성을 활용하려면 AWS Directory Service for Microsoft Active Directory를 사용할 수 있습니다. 세부 정보는 AWS 디렉터리 서비스 자격 증명 공급자 사용을 참조하세요.

이 주제에서는 Active Directory 커넥터 및 Azure Active Directory 도메인 서비스(Azure ADDS)를 사용하여 Azure Active Directory 로 SFTP Transfer 사용자를 인증하는 방법을 설명합니다.

Azure Active AWS Directory Domain Services용 Directory Service를 사용하기 전에

의 경우 다음이 AWS필요합니다.

  • Transfer Family 서버를 사용하는 AWS 리전의 가상 프라이빗 클라우드(VPC)

  • 에서 최소 2개의 프라이빗 서브넷 VPC

  • 에 인터넷 연결이 있어야 VPC 합니다.

  • Microsoft Azure와의 VPN 연결을 위한 site-to-site 고객 게이트웨이 및 가상 프라이빗 게이트웨이

Microsoft Azure의 경우 다음이 필요합니다.

  • Azure Active Directory 및 Active Directory 도메인 서비스(AzureADDS)

  • Azure 리소스 그룹

  • Azure 가상 네트워크

  • VPN AmazonVPC과 Azure 리소스 그룹 간의 연결

    참고

    이는 네이티브 IPSEC 터널을 통하거나 VPN 어플라이언스를 사용하는 것일 수 있습니다. 이 주제에서는 Azure Virtual 네트워크 게이트웨이와 로컬 네트워크 게이트웨이 간의 IPSEC 터널을 사용합니다. 터널은 Azure ADDS 엔드포인트와 를 수용하는 서브넷 간의 트래픽을 허용하도록 구성되어야 합니다 AWS VPC.

  • Microsoft Azure와의 VPN 연결을 위한 site-to-site 고객 게이트웨이 및 가상 프라이빗 게이트웨이

다음 다이어그램은 시작하기 전에 필요한 구성을 보여줍니다.

Azure AD 및 AWS Transfer Family 아키텍처 다이어그램. AWS 디렉터리 서비스 커넥터를 사용하여 인터넷을 통해 Azure AD 도메인 서비스에 Azure 가상 네트워크에 AWS VPC 연결하는 것입니다.

1단계: Azure Active Directory 도메인 서비스 추가

Azure AD는 기본적으로 도메인 가입 인스턴스를 지원하지 않습니다. 도메인 가입과 같은 작업을 수행하고 그룹 정책과 같은 도구를 사용하려면 관리자가 Azure Active Directory 도메인 서비스를 사용하도록 설정해야 합니다. Azure AD DS를 아직 추가하지 않았거나 기존 구현이 SFTP Transfer 서버가 사용할 도메인과 연결되어 있지 않은 경우 새 인스턴스를 추가해야 합니다.

Azure Active Directory 도메인 서비스(Azure ADDS) 활성화에 대한 자세한 내용은 자습서: Azure Active Directory 도메인 서비스 관리형 도메인 생성 및 구성을 참조하세요.

참고

Azure 를 활성화할 때 SFTP Transfer 서버를 연결할 리소스 그룹과 Azure AD 도메인에 대해 구성되었는지 ADDS확인합니다.

실행 중인 리소스 그룹 bob.us 보여주는 Azure AD 도메인 서비스 화면입니다.

2단계: 서비스 계정 생성

Azure AD에는 Azure 의 관리자 그룹에 속하는 서비스 계정이 하나 있어야 합니다ADDS. 이 계정은 AWS Active Directory 커넥터와 함께 사용됩니다. 이 계정이 Azure 와 동기화되어 있는지 확인합니다ADDS.

사용자의 프로필을 보여주는 Azure AD 화면입니다.
작은 정보

Azure Active Directory에 대한 다중 인증은 SFTP 프로토콜을 사용하는 Transfer Family 서버에서 지원되지 않습니다. 사용자가 에 인증한 후에는 Transfer Family 서버가 MFA 토큰을 제공할 수 없습니다SFTP. 연결을 시도하기 MFA 전에 를 비활성화해야 합니다.

Azure AD 다중 인증 세부 정보로, 두 사용자의 MFA 상태가 비활성화됨으로 표시됩니다.

3단계: AD Connector를 사용하여 AWS 디렉터리 설정

Azure 를 구성ADDS하고 및 Azure Virtual 네트워크 간에 IPSEC VPN AWS VPC 터널이 있는 서비스 계정을 생성한 후에는 모든 AWS EC2 인스턴스에서 Azure ADDS DNS IP 주소를 ping하여 연결을 테스트할 수 있습니다.

연결이 활성화되었는지 확인한 후 아래에서 계속할 수 있습니다.

AD Connector를 사용하여 AWS 디렉터리를 설정하려면
  1. 디렉터리 서비스 콘솔을 열고 디렉터리를 선택합니다.

  2. 디렉터리 설정을 선택합니다.

  3. 디렉터리 타입으로는 AD Connector를 선택합니다.

  4. 디렉터리 크기를 선택하고 다음 를 선택한 다음 VPC 및 서브넷을 선택합니다.

  5. 다음을 선택하고 다음과 같이 필드를 채웁니다.

    • 디렉터리 DNS 이름: Azure 에 사용 중인 도메인 이름을 입력합니다ADDS.

    • DNS IP 주소: Azure ADDS IP 주소를 입력합니다.

    • 서버 계정 사용자 이름암호: 2단계: 서비스 계정 생성에서 만든 서비스 계정의 세부 정보를 입력합니다.

  6. 화면을 완료하여 디렉터리 서비스를 생성합니다.

이제 디렉터리 상태가 활성 이어야 하며 SFTP Transfer 서버와 함께 사용할 준비가 되었습니다.

필요에 따라 활성 상태의 디렉터리 하나를 보여주는 디렉터리 서비스 화면입니다.

4단계: AWS Transfer Family 서버 설정

SFTP 프로토콜과 AWS Directory Service 의 자격 증명 공급자 유형을 사용하여 Transfer Family 서버를 생성합니다. 디렉터리 드롭다운 목록에서 3단계: AD Connector를 사용한 디렉터리 설정 에서 추가한 AWS 디렉터리를 선택합니다.

참고

Transfer Family 서버에서 Microsoft AD 디렉터리를 사용한 경우 AWS Directory Service에서 이를 삭제할 수 없습니다. 먼저 서버를 삭제해야 디렉터리를 삭제할 수 있습니다.

5단계: 그룹에 액세스 권한 부여

서버를 생성한 후에는 를 사용하여 활성화된 프로토콜을 통해 파일을 업로드하고 다운로드할 수 있는 액세스 권한이 있는 디렉터리의 그룹을 선택해야 합니다 AWS Transfer Family. 액세스 권한을 생성하여 이 작업을 수행할 수 있습니다.

참고

사용자는 액세스 권한을 부여하는 그룹에 직접 속해야 합니다. 예를 들어 Bob은 사용자이고 그룹 A에 속해 있으며 그룹 A 자체가 그룹 B에 포함되어 있다고 가정해 보겠습니다.

  • 그룹 A에 액세스 권한을 부여하면 Bob에게 액세스 권한이 부여됩니다.

  • 그룹 A가 아닌 그룹 B에 액세스 권한을 부여하는 경우 Bob은 액세스 권한을 갖지 않습니다.

액세스 권한을 부여하려면 그룹의 SID 를 검색해야 합니다.

다음 Windows PowerShell 명령을 사용하여 그룹의 SID 를 검색하고 YourGroupName 그룹 이름을 사용합니다.

Get-ADGroup -Filter {samAccountName -like "YourGroupName*"} -Properties * | Select SamAccountName,ObjectSid
검색 SID 중인 객체를 PowerShell 보여주는 Windows입니다.
그룹에 액세스 권한을 부여하려면
  1. 를 엽니다https://console.aws.amazon.com/transfer/.

  2. 서버 세부 정보 페이지로 이동한 다음 액세스 섹션에서 액세스 추가를 선택합니다.

  3. 이전 절차의 출력에서 SID 받은 를 입력합니다.

  4. 액세스 에서 그룹의 AWS Identity and Access Management 역할을 선택합니다.

  5. 정책 섹션에서 정책을 선택합니다. 기본값은 없음입니다.

  6. 홈 디렉터리의 경우 그룹의 홈 디렉터리에 해당하는 S3 버킷을 선택합니다.

  7. 추가를 선택하여 연결을 생성합니다.

전송 서버의 세부 정보는 다음과 유사해야 합니다.

Transfer Family 서버 세부 정보 화면의 일부로, 자격 증명 공급자의 디렉터리 ID 예제가 표시됩니다.
Transfer Family 서버 세부 정보 화면의 일부로, 화면의 액세스 부분에 있는 활성 디렉터리의 외부 ID가 표시됩니다.

6단계: 사용자 테스트

사용자가 서버의 AWS Managed Microsoft AD 디렉터리에 액세스할 수 있는지 테스트(테스트 사용자)할 수 있습니다. 사용자는 엔드포인트 구성 페이지의 액세스 섹션에 나열된 정확히 하나의 그룹(외부 ID)에 속해야 합니다. 사용자가 그룹에 속하지 않거나 둘 이상의 그룹에 속해 있는 경우 해당 사용자에게 액세스 권한이 부여되지 않습니다.