사전 조건 - Amazon AppStream 2.0

사전 조건

인증서 기반 인증을 사용하기 전에 다음 단계를 완료하세요.

  1. 도메인에 조인된 플릿을 설정하고 SAML 2.0을 구성합니다. SAML_Subject NameIDusername@domain.com userPrincipalName 형식을 사용해야 합니다. 자세한 내용은 5단계: SAML 인증 응답을 위한 어설션 생성 단원을 참조하십시오.

    참고

    인증서 기반 인증을 사용하려는 경우 스택에서 Active Directory에 대한 스마트 카드 로그인을 활성화하지 마세요. 자세한 내용은 스마트 카드 단원을 참조하십시오.

  2. 이미지와 함께 AppStream 2.0 에이전트 버전 10-13-2022 이상을 사용하세요. 자세한 내용은 Amazon AppStream 2.0 이미지를 최신 상태로 유지 단원을 참조하십시오.

  3. (선택 사항) SAML 어설션에서 ObjectSid 속성을 구성합니다. 이 속성을 사용하여 Active Directory 사용자와 강력한 매핑을 수행할 수 있습니다. ObjectSid 속성이 SAML_Subject NameID에 지정된 사용자의 Active Directory 보안 식별자(SID)와 매칭되지 않으면 인증서 기반 인증이 실패합니다. 자세한 내용은 5단계: SAML 인증 응답을 위한 어설션 생성 단원을 참조하십시오.

  4. SAML 2.0 구성에서 사용하는 IAM 역할 신뢰 정책에 sts:TagSession 권한을 추가합니다. 자세한 내용은 AWS STS에서 세션 태그 전달을 참조하세요. 인증서 기반 인증을 사용하려면 이 권한이 필요합니다. 자세한 내용은 2단계: SAML 2.0 페더레이션 IAM 역할 생성 단원을 참조하십시오.

  5. Active Directory에 프라이빗 인증 기관(CA)을 구성하지 않은 경우 AWS Private CA를 사용하여 만듭니다. AWS 인증서 기반 인증을 사용하려면 프라이빗 CA가 필요합니다. 자세한 내용은 AWS Private CA 배포 계획을 참조하세요. 많은 인증서 기반 인증 사용 사례에 가장 일반적으로 사용되는 AWS Private CA 설정은 다음과 같습니다.

    • CA 유형 옵션

      • 수명이 짧은 인증서 CA 사용 모드 - 인증서 기반 인증을 위한 최종 사용자 인증서를 발급하는 데만 CA를 사용하는 경우 권장됩니다.

      • 루트 CA를 사용한 단일 수준 계층 구조 - 기존 CA 계층 구조와 통합하려는 경우 하위 CA를 선택합니다.

    • 키 알고리즘 옵션 - RSA 2048

    • 주체 고유 이름 옵션 - Active Directory Trusted Root Certification Authorities 저장소에서 가장 적합한 옵션을 사용하여 이 CA를 식별합니다.

    • 인증서 취소 옵션 - CRL 배포

      참고

      인증서 기반 인증을 사용하려면 AppStream 2.0 플릿 인스턴스와 도메인 컨트롤러에서 액세스할 수 있는 온라인 CRL 배포 지점이 필요합니다. 이를 위해서는 AWS Private CA CRL 항목용으로 구성된 Amazon S3 버킷에 대한 인증되지 않은 액세스 또는 퍼블릭 액세스를 차단하는 경우 Amazon S3 버킷에 액세스할 수 있는 CloudFront 배포가 필요합니다. 옵션에 대한 자세한 내용은 인증서 취소 목록(CRL) 계획을 참조하세요.

  6. AppStream 2.0 인증서 기반 인증에 사용할 CA를 지정할 euc-private-ca 키로 프라이빗 CA에 태그를 지정하세요. 이 키는 값이 필요하지 않습니다. 자세한 내용은 프라이빗 CA의 태그 관리를 참조하세요. AWS 계정에서 리소스에 권한을 부여하기 위해 AppStream 2.0과 함께 사용되는 AWS 관리형 정책ㅇ ㅔ대한 자세한 내용은 AppStream 2.0 리소스에 액세스하는 데 필요한 AWS 관리형 정책 섹션을 참조하세요.

  7. 인증서 기반 인증은 로그온에 가상 스마트 카드를 사용합니다. 자세한 내용은 Guidelines for enabling smart card logon with third-party certification authorities를 참조하세요. 다음 단계를 따릅니다.

    1. 도메인 컨트롤러 인증서를 사용하여 도메인 컨트롤러를 구성하여 스마트 카드 사용자를 인증합니다. Active Directory에 Active Directory Certificate Services 엔터프라이즈 CA가 구성되어 있는 경우 스마트 카드 로그온을 활성화하는 인증서가 포함된 도메인 컨트롤러가 자동으로 등록됩니다. Active Directory Certificate Services가 없는 경우 타사 CA의 도메인 컨트롤러 인증서에 대한 요구 사항을 참조하세요. AWS는 도메인 컨트롤러 인증서에 대한 등록을 자동으로 관리하려면 Active Directory 엔터프라이즈 인증 기관을 사용할 것을 권장합니다.

      참고

      AWS Managed Microsoft AD를 사용하는 경우 Amazon EC2 인스턴스에 도메인 컨트롤러 인증서 요구 사항을 충족하는 인증서 서비스를 구성할 수 있습니다. Active Directory 인증서 서비스로 구성된 AWS Managed Microsoft AD의 배포에 대한 예는 Deploy Active Directory to a new Amazon Virtual Private Cloud를 참조하세요.

      AWS Managed Microsoft AD 및 Active Directory 인증서 서비스를 사용하면 컨트롤러의 VPC 보안 그룹에서 인증서 서비스를 실행하는 Amazon EC2 인스턴스로의 아웃바운드 규칙도 생성해야 합니다. 인증서 자동 등록을 활성화하려면 TCP 포트 135와 포트 49152~65535에 대한 보안 그룹 액세스 권한을 제공해야 합니다. 또한 Amazon EC2 인스턴스는 도메인 컨트롤러를 포함한 도메인 인스턴스로부터 동일한 포트에 대한 인바운드 액세스를 허용해야 합니다. AWS Managed Microsoft AD의 보안 그룹을 찾는 방법에 대한 자세한 내용은 VPC 서브넷 및 보안 그룹 구성을 참조하세요.

    2. AWS Private CA 콘솔에서 또는 SDK 또는 CLI를 사용하여 프라이빗 CA 인증서를 내보냅니다. 자세한 내용은 프라이빗 인증서 내보내기를 참조하세요.

    3. 프라이빗 CA를 Active Directory에 게시합니다. 도메인 컨트롤러 또는 도메인에 조인된 시스템에 로그온합니다. 프라이빗 CA 인증서를 원하는 <path>\<file>에 복사하고 도메인 관리자로 다음 명령을 실행합니다. 또한 그룹 정책 및 Microsoft PKI Health Tool(PKiView)을 사용하여 CA를 게시할 수도 있습니다. 자세한 내용은 Configuration instructions를 참조하세요.

      certutil -dspublish -f <path>\<file> RootCA
      certutil -dspublish -f <path>\<file> NTAuthCA

      명령이 성공적으로 완료되었는지 확인한 다음 프라이빗 CA 인증서 파일을 제거하세요. Active Directory 복제 설정에 따라 CA가 도메인 컨트롤러와 AppStream 2.0 플릿 인스턴스에 게시하는 데 몇 분 정도 걸릴 수 있습니다.

      참고

      Active Directory는 AppStream 2.0 플릿 인스턴스가 도메인에 조인할 때 Trusted Root Certification Authorities 및 Enterprise NTAuth 스토어에 CA를 자동으로 배포해야 합니다.

Windows 운영 체제의 경우 CA(인증 기관) 배포가 자동으로 수행됩니다. 하지만 Red Hat Enterprise Linux의 경우 AppStream 2.0 Directory Config에서 사용하는 CA에서 루트 CA 인증서를 다운로드해야 합니다. KDC 루트 CA 인증서가 다른 경우 해당 인증서도 다운로드해야 합니다. 인증서 기반 인증을 사용하기 전에 이러한 인증서를 이미지 또는 스냅샷으로 가져와야 합니다.

이미지에 /etc/sssd/pki/sssd_auth_ca_db.pem이라는 파일이 있어야 합니다. 이 템플릿은 다음과 같습니다.

-----BEGIN CERTIFICATE----- Base64-encoded certificate chain from ACM Private CA -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- Base64-encoded certificate body from ACM private CA -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- Base64-encoded root CA KDC certificate chain -----END CERTIFICATE-----
참고

리전 또는 계정 간에 이미지를 복사하거나 이미지를 새 Active Directory에 다시 연결할 경우, 이 파일을 사용하기 전에 이미지 빌더에서 관련 인증서를 사용하여 다시 구성하고 스냅샷을 다시 생성해야 합니다.

다음은 루트 CA 인증서 다운로드 지침입니다.

  1. 이미지 빌더에서 /etc/sssd/pki/sssd_auth_ca_db.pem이라는 파일을 생성합니다.

  2. AWS Private CA 콘솔을 엽니다.

  3. AppStream 2.0 Directory Config에 사용되는 프라이빗 인증서를 선택합니다.

  4. CA 인증서 탭을 선택합니다.

  5. 인증서 체인과 인증서 본문을 이미지 빌더의 /etc/sssd/pki/sssd_auth_ca_db.pem에 복사합니다.

KDC에서 사용하는 루트 CA 인증서가 AppStream 2.0 Directory Config에서 사용하는 루트 CA 인증서와 다른 경우 다음 예제 단계에 따라 다운로드합니다.

  1. 이미지 빌더와 동일한 도메인에 조인된 Windows 인스턴스에 연결합니다.

  2. certlm.msc를 엽니다.

  3. 왼쪽 창에서 신뢰할 수 있는 루트 인증 기관을 선택한 다음 인증서를 선택합니다.

  4. 각 루트 CA 인증서에 대해 컨텍스트(마우스 오른쪽 버튼 클릭) 메뉴를 엽니다.

  5. 모든 작업을 선택하고 내보내기를 선택하여 인증서 내보내기 마법사를 연 후 다음을 선택합니다.

  6. Base64 인코딩 X.509(.CER)를 선택하고 다음을 선택합니다.

  7. 찾아보기를 선택하고 파일 이름을 입력한 후 다음을 선택합니다.

  8. 마침을 클릭합니다.

  9. 내보낸 인증서를 텍스트 편집기에서 엽니다.

  10. 파일 내용을 이미지 빌더의 /etc/sssd/pki/sssd_auth_ca_db.pem으로 복사합니다.