Amazon EC2 Linux 인스턴스를 공유 AWS 관리형 Microsoft AD에 원활하게 조인 - AWS Directory Service

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

Amazon EC2 Linux 인스턴스를 공유 AWS 관리형 Microsoft AD에 원활하게 조인

이 절차에서는 Amazon EC2 Linux 인스턴스를 공유 AWS 관리형 Microsoft AD에 원활하게 조인합니다. 이렇게 하려면 EC2 Linux 인스턴스를 시작하려는 계정의 EC2 인스턴스 역할에 AWS Secrets Manager IAM 읽기 정책을 생성합니다. 이 절차에서는 이를 Account 2이라고 합니다. 이 인스턴스는 Account 1라고 하는 다른 계정에서 공유되는 AWS 관리형 Microsoft AD를 사용합니다.

사전 조건

Amazon EC2 Linux 인스턴스를 공유 AWS 관리형 Microsoft AD에 원활하게 조인하려면 먼저 다음을 완료해야 합니다.

1단계. 계정 2에서 LinuxEC2DomainJoin 역할 생성

이 단계에서는 IAM 콘솔을 사용하여 Account 2에 로그인한 상태에서 EC2 Linux 인스턴스에 도메인 가입하는 데 사용할 IAM 역할을 만듭니다.

LinuxEC2DomainJoin 역할 생성
  1. https://console.aws.amazon.com/iam/에서 IAM 콘솔을 엽니다.

  2. 왼쪽 탐색 창의 액세스 관리에서 역할을 선택합니다.

  3. 역할 페이지에서 역할 생성을 선택합니다.

  4. 신뢰할 수 있는 엔티티 유형 선택 아래에서 AWS 서비스를 선택합니다.

  5. 사용 사례에서 EC2를 선택한 후 다음을 선택합니다.

  6. Filter policies(필터 정책)의 경우 다음을 수행합니다.

    1. AmazonSSMManagedInstanceCore을 입력합니다. 그런 다음 목록에서 해당 항목의 확인란을 선택합니다.

    2. AmazonSSMDirectoryServiceAccess을 입력합니다. 그런 다음 목록에서 해당 항목의 확인란을 선택합니다.

    3. 이러한 정책을 추가한 후 역할 생성을 선택합니다.

      참고

      AmazonSSMDirectoryServiceAccess는에서 Active Directory 관리하는에 인스턴스를 조인할 수 있는 권한을 제공합니다 AWS Directory Service. AmazonSSMManagedInstanceCore는 사용하는 데 필요한 최소 권한을 제공합니다 AWS Systems Manager. 이러한 권한으로 역할을 생성하는 방법과 IAM 역할에 할당할 수 있는 기타 권한 및 정책에 관한 정보에 대한 자세한 내용은 AWS Systems Manager 사용 설명서Systems Manager용 인스턴스 요구 권한 구성을 참조하세요.

  7. 역할 이름 필드에 새 역할의 이름(예: LinuxEC2DomainJoin 또는 자신이 선호하는 다른 이름)을 입력합니다.

  8. (선택 사항) 역할 설명에 설명을 입력합니다.

  9. (선택 사항) 3단계: 태그 추가에서 새 태그 추가를 선택하여 태그를 추가합니다. 태그 키-값 페어는 이 역할에 대한 액세스를 구성, 추적 또는 제어하는 데 사용됩니다.

  10. 역할 생성을 선택합니다.

2단계. AWS Secrets Manager 보안 암호를 공유하기 위한 교차 계정 리소스 액세스 생성

다음 섹션에서는 EC2 Linux 인스턴스를 공유 AWS 관리형 Microsoft AD와 원활하게 조인하기 위해 충족해야 하는 추가 요구 사항입니다. 이러한 요구 사항에는 리소스 정책 생성 및 적절한 서비스 및 리소스에 연결 등이 포함됩니다.

계정의 사용자가 다른 계정의 AWS Secrets Manager 보안 암호에 액세스하도록 허용하려면 리소스 정책 및 자격 증명 정책 모두에서 액세스를 허용해야 합니다. 이러한 유형의 액세스를 크로스 계정 리소스 액세스라고 합니다.

이러한 유형의 액세스 권한은 비밀 관리자 비밀과 동일한 계정의 신원에 대한 액세스 권한을 부여하는 것과는 다릅니다. 또한 보안 암호를 암호화하는 AWS Key Management Service (KMS) 키를 자격 증명에서 사용하도록 허용해야 합니다. 이 권한은 크로스 계정 액세스에 AWS 관리형 키(aws/secretsmanager)를 사용할 수 없으므로 필요합니다. 대신 생성한 KMS 키로 보안 암호를 암호화한 후 키 정책을 연결합니다. 보안 암호에 대한 암호화 키를 변경하려면 AWS Secrets Manager 암호 수정을 참조하세요.

참고

사용하는 보안 암호에 AWS Secrets Manager따라와 관련된 요금이 있습니다. 현재 기준의 전체적인 요금 목록은 AWS Secrets Manager 요금을 참조하세요. Secrets Manager AWS 관리형 키 aws/secretsmanager가 생성하는를 사용하여 보안 암호를 무료로 암호화할 수 있습니다. 보안 암호를 암호화하기 위해 자체 KMS 키를 생성하는 경우는 현재 AWS KMS 요금으로 AWS 요금을 부과합니다. 자세한 내용은 AWS Key Management Service 요금을 참조하세요.

다음 단계를 통해 리소스 정책을 생성하여 사용자가 EC2 Linux 인스턴스를 공유 AWS 관리형 Microsoft AD에 원활하게 조인할 수 있습니다.

Account 1의 보안 암호에 리소스 정책 연결
  1. https://console.aws.amazon.com/secretsmanager/에서 Secrets Manager 콘솔을 엽니다.

  2. 비밀 목록에서 사전 조건에서 만든 비밀을 선택합니다.

  3. 개요 탭의 보안 암호 세부 정보 페이지에서 리소스 권한까지 아래로 스크롤합니다.

  4. 권한 편집을 선택합니다.

    1. 정책 필드에 다음 정책을 입력합니다. 다음 정책은 Account 2LinuxEC2DomainJoinAccount 1의 보안 암호에 액세스할 수 있도록 허용합니다. ARN 값을 1단계에서 생성한 LinuxEC2DomainJoin 역할인 Account 2의 ARN 값으로 바꿉니다. 이 정책을 사용하려면 AWS Secrets Manager 보안 암호에 권한 정책 연결을 참조하세요.

      { { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::Account2:role/LinuxEC2DomainJoin" }, "Action": "secretsmanager:GetSecretValue", "Resource": "*" } ] }
Account 1의 KMS 키에 대한 키 정책에 명령문 추가
  1. https://console.aws.amazon.com/secretsmanager/에서 Secrets Manager 콘솔을 엽니다.

  2. 왼쪽 탐색 창에서 고객 관리형 키를 선택합니다.

  3. 고객 관리형 키 페이지에서 생성한 키를 선택합니다.

  4. 키 세부 정보 페이지에서 키 정책으로 이동하여 편집을 선택합니다.

  5. 다음 키 정책 문은 Account 2ApplicationRoleAccount 1의 KMS 키를 사용하여 Account 1의 보안 암호를 복호화하도록 허용합니다. 이 명령문을 사용하려면 KMS 키의 키 정책에 추가합니다. 자세한 내용은 키 정책 변경을 참조하세요.

    { { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::Account2:role/ApplicationRole" }, "Action": [ "kms:Decrypt", "kms:DescribeKey" ], "Resource": "*" }
Account 2의 자격 증명에 자격 증명 정책 연결
  1. https://console.aws.amazon.com/iam/에서 IAM 콘솔을 엽니다.

  2. 왼쪽 탐색 창의 액세스 관리에서 정책을 선택합니다.

  3. 정책 생성을 선택합니다. 정책 편집기에서 JSON을 선택합니다.

  4. 다음 정책은 Account 2ApplicationRoleAccount 1의 보안 암호에 액세스하고 Account 1의 암호화 키도 사용하여 보안 암호 값을 복호화하도록 허용합니다. Secrets Manager 콘솔의 보안 암호 세부 정보 페이지에 있는 보안 암호 ARN 아래에서 보안 암호에 대한 ARN을 찾을 수 있습니다. 또는 describe-secret을 호출하여 보안 암호의 ARN을 식별할 수 있습니다. 리소스 ARN을 보안 암호 ARN 및 Account 1의 리소스 ARN으로 바꿉니다. 이 정책을 사용하려면 AWS Secrets Manager 보안 암호에 권한 정책 연결을 참조하세요.

    { { "Version" : "2012-10-17", "Statement" : [ { "Effect": "Allow", "Action": "secretsmanager:GetSecretValue", "Resource": "SecretARN" }, { "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:Describekey" ], "Resource": "arn:aws:kms:Region:Account1:key/Your_Encryption_Key" } ] }
  5. 다음을 선택한 다음 변경 사항 저장을 선택합니다.

  6. Attach a resource policy to the secret in Account 1Account 2에서 생성한 역할을 찾아 선택합니다.

  7. 권한 추가에서 정책 연결을 선택합니다.

  8. 검색 창에서 Add a statement to the key policy for the KMS key in Account 1에서 생성한 정책을 찾아 상자를 선택하여 정책을 역할에 추가합니다. 그리고 권한 추가를 선택합니다.

3단계. Linux 인스턴스를 원활하게 조인

이제 다음 절차를 사용하여 EC2 Linux 인스턴스를 공유 AWS 관리형 Microsoft AD에 원활하게 조인할 수 있습니다.

Linux 인스턴스를 원활하게 조인
  1. 에 로그인 AWS Management Console 하고 https://console.aws.amazon.com/ec2/ Amazon EC2 콘솔을 엽니다.

  2. 탐색 모음의 리전 선택기에서 기존 디렉터리 AWS 리전 와 동일한를 선택합니다.

  3. EC2 대시보드시작 인스턴스 섹션에서 인스턴스 시작을 선택합니다.

  4. 인스턴스 시작 페이지의 이름 및 태그 섹션에서 Linux EC2 인스턴스에 사용할 이름을 입력합니다.

  5. (선택 사항) 추가 태그 추가에서 이 EC2 인스턴스에 대한 액세스를 구성, 추적, 제어할 태그-키 값 페어를 하나 이상 추가합니다.

  6. 애플리케이션 및 OS 이미지(Amazon Machine Image) 섹션에서 시작하려는 Linux AMI를 선택합니다.

    참고

    사용되는 AMI에는 AWS Systems Manager (SSM 에이전트) 버전 2.3.1644.0 이상이 있어야 합니다. AMI에서 인스턴스를 시작하여 AMI에 설치된 SSM 에이전트 버전을 확인하려면 현재 설치된 SSM 에이전트 버전 가져오기를 참조하세요. SSM 에이전트를 업그레이드해야 하는 경우 Linux용 EC2 인스턴스에 SSM 에이전트 설치 및 구성을 참조하세요.

    SSM은 Linux 인스턴스를 Active Directory 도메인에 조인할 때 aws:domainJoin 플러그인을 사용합니다. 플러그인은 Linux 인스턴스의 호스트 이름을 EC2AMAZ-XXXXXXX 형식으로 변경합니다. aws:domainJoin에 대한 자세한 내용은 AWS Systems Manager 사용 설명서AWS Systems Manager 명령 문서 플러그인 참조를 참조하세요.

  7. 인스턴스 유형 섹션의 인스턴스 유형 드롭다운 목록에서 사용하려는 인스턴스 유형을 선택합니다.

  8. 키 페어(로그인) 섹션에서 새 키 페어 생성을 선택하거나 기존 키 페어에서 선택할 수 있습니다. 새로운 키 페어를 생성하려면 새 키 페어 생성을 선택합니다. 키 페어의 이름을 입력하고 키 페어 유형프라이빗 키 파일 형식에 대한 옵션을 선택합니다. OpenSSH에서 사용할 수 있는 형식으로 프라이빗 키를 저장하려면 .pem을 선택합니다. PuTTY에서 사용할 수 있는 형식으로 프라이빗 키를 저장하려면 .ppk를 선택합니다. Create key pair(키 페어 생성)를 선택합니다. 브라우저에서 프라이빗 키 파일이 자동으로 다운로드됩니다. 안전한 장소에 프라이빗 키 파일을 저장합니다.

    중요

    이때가 사용자가 프라이빗 키 파일을 저장할 수 있는 유일한 기회입니다.

  9. 인스턴스 시작 페이지의 네트워크 설정 섹션에서 편집을 선택합니다. VPC - 필수 드롭다운 목록에서 디렉터리가 생성된 VPC를 선택합니다.

  10. 서브넷 드롭다운 목록에서 VPC의 퍼블릭 서브넷 중 하나를 선택합니다. 선택한 서브넷에서는 인터넷 게이트웨이로 모든 외부 트래픽이 라우팅되어야 합니다. 그렇지 않으면 인스턴스를 원격으로 연결할 수 없게 됩니다.

    인터넷 게이트웨이에 연결하는 방법에 대한 자세한 내용은 Amazon VPC 사용 설명서인터넷 게이트웨이를 사용하여 인터넷에 연결을 참조하세요.

  11. Auto-assign Public IP(퍼블릭 IP 자동 할당)에서 Enable(활성화)을 선택합니다.

    EC2 인스턴스의 퍼블릭 및 프라이빗 IP 주소 지정에 대한 자세한 내용은 Amazon EC2 사용 설명서Amazon EC2 인스턴스 IP 주소 지정을 참조하세요.

  12. 방화벽(보안 그룹) 설정의 경우 기본 설정을 사용하거나 필요에 맞게 변경할 수 있습니다.

  13. 스토리지 구성 설정의 경우 기본 설정을 사용하거나 필요에 맞게 변경할 수 있습니다.

  14. 고급 세부 정보 섹션을 선택하고 도메인 조인 디렉터리 드롭다운 목록에서 도메인을 선택합니다.

    참고

    도메인 조인 디렉터리를 선택하면 다음이 표시될 수 있습니다.

    도메인 조인 디렉터리를 선택할 때 오류 메시지가 표시됩니다. 기존 SSM 문서에 오류가 있습니다.

    이 오류는 EC2 시작 마법사가 예기치 않은 속성이 있는 기존 SSM 문서를 식별하는 경우 발생합니다. 다음 중 하나를 수행할 수 있습니다.

    • 이전에 SSM 문서를 편집했는데 속성이 예상되는 경우 닫기를 선택하고 변경 없이 EC2 인스턴스를 시작합니다.

    • 여기에서 기존 SSM 문서 삭제 링크를 선택하여 SSM 문서를 삭제합니다. 이렇게 하면 속성이 올바른 SSM 문서를 생성할 수 있습니다. EC2 인스턴스를 시작하면 SSM 문서가 자동으로 생성됩니다.

  15. IAM 인스턴스 프로파일의 경우 사전 요구 사항 섹션 2단계: LinuxEC2DomainJoin 역할 생성에서 이전에 생성한 IAM 역할을 선택합니다.

  16. 인스턴스 시작을 선택합니다.

참고

SUSE Linux로 원활한 도메인 조인을 수행하는 경우 인증이 작동하려면 재부팅해야 합니다. Linux 터미널에서 SUSE를 재부팅하려면 sudo reboot를 입력합니다.