본 문서는 총 5부로 구성되어 있으며 이 글은 1부입니다.
2부 링크 : Amazon Web Services에서 Microsoft 플랫폼 보호 2/5
3부 링크 : Amazon Web Services에서 Microsoft 플랫폼 보호 3/5
요약
AWS(Amazon Web Services)에 Microsoft 제품을 배포하는 것은 빠르고 간편하며 비용 효율적입니다. 이러한 애플리케이션을 운영 환경에 배포하기 전에 이러한 애플리케이션을 보호하기 위한 접근 방식에 대한 지침을 마련하는 것이 유용합니다. 이 백서에서는 AWS에서 실행되는 애플리케이션의 런타임 환경을 보호하고, 공격 표면을 줄이고, 최소한의 특권 원칙을 준수하며, 데이터를 보호하는 원칙을 간략히 설명합니다. 이 문서에서는 Microsoft Workloads Administrator, 보안 전문가, DBA, Cloud and Solutions Architects 및 Systems Engineers 규범적인 모범 사례 지침을 제공합니다.
Amazon Web Services 및 Microsoft 플랫폼 소개
AWS(Amazon Web Service)는 Microsoft 커뮤니티의 고객 및 IT 전문가에게 어필합니다. AWS는 10년 이상(2008년 10월 이후) AWS에서 Windows Workloads를 실행해 왔기 때문입니다. 이 경험은 Microsoft 커뮤니티와 신뢰를 얻었으며, 그 결과 Windows Server에 Amazon EC2를 사용하는 AWS 기업 고객이 지속적으로 증가했습니다. IDC 보고서에 따르면 AWS는 Windows Server 인스턴스의 약 2배를 호스팅하고 있습니다.
또한 보다 광범위한 AWS 플랫폼은 마이크로소프트 워크로드와 결합하면 사용자의 환경을 더욱 향상시킬 수 있는 풍부한 서비스를 제공합니다.
마이크로소프트 제품은 유연성과 비즈니스 민첩성을 제공하는 잘 통합된 운영 체제, 서버 역할, 애플리케이션 및 개발 도구 세트인 마이크로소프트 플랫폼을 함께 구성합니다. 애플리케이션과 인프라 간의 긴밀한 통합을 통해 엔터프라이즈 데이터를 쉽게 관리하고 공유할 수 있습니다. Microsoft 플랫폼은 사용자 환경에 중점을 두고 있어 사용자, 관리자, 관리자 및 개발자의 마찰을 줄일 수 있습니다. AWS는 관리자가 마이크로소프트 플랫폼에서 실행되도록 설계된 애플리케이션과 플랫폼에 전원을 공급하는 종량제 인프라를 신속하게 프로비저닝할 수 있기 때문에 마이크로소프트 플랫폼과 완벽하게 보완됩니다.
AWS와 Microsoft는 고객이 필요에 따라 지불하는 탄력적인 인프라에 Windows Server® 및 Microsoft SQL Server®를 포함한 엔터프라이즈급 워크로드를 구현할 수 있도록 지원하기 위해 협력해 왔습니다. 이 접근 방식은 서버 하드웨어의 자본 비용을 없애고 쉐어포인트 서버 팜을 생성하거나 확장하는 데 필요한 프로비저닝 시간을 크게 줄입니다. 이러한 공동 작업 덕분에 라이센스 이동성 프로그램의 규정에 따라 AWS에서 쉐어포인트 서버 및 기타 마이크로소프트 서버 제품에 라이센스를 부여하고 실행할 수 있게 되었습니다.
AWS 공동 책임 모델
이 백서를 식별하고 설명하는 보안 제어를 이해하려면 먼저 AWS와 고객이 공통 보안 목표를 달성하기 위해 협력해야 하는 AWS 공동 책임 모델을 숙지해야 합니다.
AWS Cloud에서 사용할 수 있는 보안 제어 기능은 기존의 사내 및 데이터 센터 환경에서와 동일한 보안 격리 기능을 제공합니다. 여기에는 물리적 데이터 센터 보안, 네트워크 분리, 서버 하드웨어 분리, 스토리지 분리 등이 포함됩니다.
AWS는 공유 책임 모델에서 호스트 운영 체제 및 가상화 계층에서 서비스가 작동하는 시설의 물리적 보안에 이르기까지 구성 요소를 관리하고 제어합니다. 고객은 AWS가 운영, 관리 및 제어하는 서비스를 기반으로 보안 솔루션과 애플리케이션을 구축할 책임이 있습니다.
그림 1은 일반적으로 클라우드의 보안과 클라우드의 보안, AWS의 책임과 AWS 고객의 책임으로 알려진 책임의 차이를 보여줍니다.
AWS 고객은 가장 보안에 민감한 고객의 요구 사항을 충족하기 위해 구축된 AWS 정책, 아키텍처 및 운영 프로세스의 모든 모범 사례를 상속함으로써 이점을 누릴 수 있습니다. 보안 및 규정 준수 보고서와 선택한 온라인 계약은 AWS 아티팩트에서 다운로드할 수 있습니다.
클라우드 보안
AWS의 클라우드 보안은 최우선 사항으로, 고객 솔루션의 기밀성, 무결성 및 가용성을 보호하는 물리적/논리적 제어 및 보호 조치를 비롯하여 기존 데이터 센터와 동일한 보안 격리 기능을 제공합니다. AWS 고객으로서, 사용자가 원하는 대로 제어 및 보호 조치를 숙지하여 데이터 보안 및 개인 정보 보호에서 컴플라이언스, 비용 및 규모에 이르기까지 솔루션의 보안 목표를 충족할 수 있어야 합니다.
클라우드 보안을 위한 리소스
AWS에서 제공되는 서비스와 AWS가 상호 작용하는 방식을 숙지하는 것은 시스템 리소스와 데이터를 보호하는 방법을 이해하는 중요한 단계입니다. AWS 보안 개요 — 네트워크 보안 백서는 다양한 서비스와 기본 상태에서 보안 또는 격리 방법을 이해하는 데 있어 좋은 출발점입니다. 또한 Overview(개요) 백서는 현재 보호 중인 보호를 이해하고 리소스 및 데이터를 보호하기 위한 추가 단계를 수행할지 여부를 결정하는 데 도움이 됩니다. 또한 Microsoft Purview 외부의 서비스에 대한 계정 보안을 위한 몇 가지 추가 모범 사례가 요약되어 있으므로 보안 검사 목록을 검토하는 것이 좋습니다.
이 문서에서는 AWS에서 Microsoft 워크로드 보호에 사용할 수 있는 컨트롤을 중점적으로 다룹니다. 중요하거나 더 중요한 것은 AWS 클라우드 채택 프레임워크, AWS Well-Architected Framework의 보안 기반, AWS 보안 소개 및 AWS 보안 모범 사례에 제공된 지침을 기반으로 구축될 수 있는 잘 정의되고 성숙한 보안 프로그램이 필요하다는 것입니다.
위험 평가
기존 보안 통제, 기능 능력 및 시스템의 경제적 비용 간에 균형이 있어야 합니다. 리스크평가는 리스크를 파악하고 이해하는 기술이며, 보다 구체적으로 특정위협에 대한 결과 집합을 연구하고 분석하고 기술하는 프로세스이다.
애플리케이션 인프라의 리스크를 평가하는 첫 번째 단계는 시스템의 논리적 및 물리적 아키텍처를 숙지하고 있는지 확인하는 것입니다. 이 아키텍처에는 애플리케이션 계층 또는 하위 시스템 및 계층과 하위 시스템 간의 네트워크 통신이 포함됩니다. 여기에는 SQL Server와 같은 필수 리소스와 Amazon EBS(Elastic Block Store) 볼륨과 같은 AWS 리소스의 기본 구성이 포함됩니다. 또한 다양한 시스템 인터페이스와 상호 작용하게 될 사용자 및 위치의 이해도 포함됩니다.
리스크를 평가하기 위한 또 다른 중요한 단계는 시스템에 대한 잠재적 위협을 이해하고, 리스크를 파악한 다음, 리스크를 적절히 완화하기 위한 위협 모델링 작업을 완료하는 것입니다. 위협 요소 모델링의 간단한 방법은 애플리케이션의 서브시스템과 네트워크 진입점의 다이어그램을 그리는 것입니다. 그런 다음 각 인터페이스 및 상호 작용에 대한 위협을 식별한 다음 시스템이 적용될 때까지 각 위협을 개별적으로 해결할 수 있습니다. 이 프로세스는 잠재적인 위협에 대해 미리 생각하도록 하고, 그 시점에 인프라에 제어를 배치할 수 있는 기회를 제공하기 때문에 유용합니다.
통제를 고려할 때 최소한의 특권의 원칙을 지키는 것이 중요합니다. 이 원칙은 시스템 사용자가 작업 기능을 수행하는 데 필요한 권한 집합만 가지고 있고 그 이상은 없는 것을 의미합니다. 또한 작업 태스크를 수행하는 데 필요한 권한이 가장 적은 시스템의 프로세스를 말합니다. 이 접근 방식을 사용하면 시스템과 환경의 공격 표면을 줄일 수 있으므로 적들이 공격하기가 훨씬 어렵습니다.
공격 표면은 사용자 환경의 악용 가능한 취약점 집합으로 정의할 수 있습니다. 여기에는 네트워크, 소프트웨어 및 시스템의 지속적인 작동에 관여하는 사용자가 포함됩니다. 항상 네트워크에 대한 포트 수를 줄이는 동시에 시스템에 액세스할 수 있는 소스 네트워크 또는 IP 주소를 제한하는 등의 절대 최소 설정 인터페이스를 노출하여 시스템의 공격 표면을 줄입니다.
위험을 완화하는 또 다른 방법은 기밀 데이터의 우발적 또는 고의적 오용으로부터 보호하는 데 필요한 제어 장치를 확보하는 것입니다. 이는 시스템에서 데이터의 기밀성, 무결성 및 가용성을 보호하는 것을 의미합니다. 데이터를 적절하게 보호하지 못할 경우 난처한 상황(일부 웹 사이트 콘텐츠 파손)에서 심각한 문제(중요한 데이터의 손상 및 누출)에 이르기까지 다양한 결과가 발생할 수 있습니다. 다음 항목에서는 Microsoft 플랫폼에 있는 기능과 함께 AWS 기능을 사용하여 구현할 수 있는 일련의 컨트롤에 대해 설명합니다. 또한 제어 기능을 사용하여 전송 중이든 정지 상태이든 상관없이 시스템의 중요한 데이터를 보호하는 전략을 다룹니다.
AWS에서 사용 가능한 컨트롤
AWS는 고객이 애플리케이션을 위한 인프라를 구축하는 데 사용할 수 있는 일련의 구성 요소를 제공합니다. 이 모델에서는 물리적 보안과 같은 일부 보안 기능이 AWS의 책임이며 AWS 보안 프로세스 소개 백서에 강조 표시되어 있습니다. 애플리케이션에 대한 액세스 제어와 같은 다른 영역은 애플리케이션 개발자 및 Microsoft 플랫폼의 툴에 정면으로 배치됩니다. AWS는 플랫폼에 존재하는 보안 기능을 갖추고 있으며 환경의 추가 위험을 완화하도록 구성할 수 있는 회색 영역이 있습니다. 이 섹션에서는 이러한 기능을 다룹니다.
자원 및 액세스 관리
AWS Identity and Access Management (IAM) 및 IAM 역할
AWS에서 애플리케이션 인프라를 실행할 때는 AWS 관리자와 애플리케이션/서버 관리자의 두 가지 관리 역할이 있습니다. AWS 관리자는 AWS 리소스와의 상호 작용을 담당하며, 애플리케이션/서버 관리자는 Windows Server에 연결하고 관리하는 역할을 담당합니다. AWS IAM(Identity and Access Management)은 AWS 환경을 담당하는 이전 관리자 세트를 제어하도록 설계되었습니다. IAM은 액세스 제어 정책을 지정하여 첫 번째 관리자 집합에 대한 가드레일을 만드는 기능을 제공합니다.
인프라 팀 및 애플리케이션 팀과 함께 IT 조직의 예를 살펴보겠습니다. 인프라 팀은 네트워크 토폴로지를 제어하며, 애플리케이션 팀은 정책 문제로 네트워크 리소스를 수정할 수 없습니다. 인프라 및 애플리케이션 관리자를 위해 별도의 IAM 그룹을 사용할 수 있습니다. 또한 애플리케이션 관리자는 VPC(Amazon Virtual Private Cloud) 리소스(하위넷, 보안 그룹, ACL)를 생성, 삭제 또는 수정할 수 없습니다. 그런 다음 모범 사례를 준수하여 인프라 팀을 제한하고 인프라 팀이 특정 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스를 시작하거나 중지하지 못하도록 할 수 있습니다. 또한 인프라 팀원의 Amazon EBS 볼륨 생성 및 부착 능력을 제한할 수 있으며, 자동 스케일링 그룹의 수정을 방지할 수도 있습니다. 마지막으로, 이러한 관리자 중 어떤 관리자도 계정에 대한 롤업된 청구 정보에 액세스할 수 없도록 해야 할 수 있습니다. 이러한 모든 접근 방식은 AWS IAM 사용자 및 그룹에 대해 설명된 다양한 영역에 대한 액세스를 제한하는 적절한 정책을 통해 달성할 수 있습니다.
AWS는 애플리케이션이 사용할 수 있는 광범위한 서비스를 제공하기 때문에 애플리케이션이 이러한 서비스에 대한 자격 증명을 보유해야 하는 경우가 많습니다. Amazon EC2 인스턴스에 IAM 사용자의 자격 증명을 삽입하여 특정 서비스에 액세스하는 대신 IAM 역할을 사용합니다. IAM 역할을 사용하면 Amazon EC2 인스턴스에서 자격 증명을 사용할 수 있도록 미리 결정된 IAM 인증 집합을 사용하여 Amazon EC2 인스턴스를 시작할 수 있습니다. 인증 정보는 하루에 여러 번 자동으로 회전하며 EC2 인스턴스 메타데이터 서비스를 통해 프로그래밍 방식으로 검색할 수 있습니다.
예를 들어 시작된 모든 EC2 인스턴스가 Active Directory 도메인에 가입하도록 하려면 EC2Role for라는 새 IAM 역할을 생성할 수 있습니다. SSM과 AmazonEC2Role을 연결합니다.SSM 정책입니다. 이 정책을 통해 인스턴스는 시스템 관리자 API와 통신할 수 있으며, 이 API는 도메인 가입 인스턴스에 사용할 수 있습니다. 또 다른 일반적인 용도는 S3 버킷에 EC2 인스턴스에 대한 액세스 권한을 부여하여 애플리케이션에 자격 증명을 저장할 필요가 없습니다.
디렉토리 서비스
이 섹션에서는 윈도우즈 서버, Active Directory 및 기타 도메인 리소스 관리를 담당하는 애플리케이션/서버 관리자가 사용할 수 있는 컨트롤에 대해 설명합니다.
Active Directory는 대부분의 대기업에서 사용하는 윈도우즈 기반 워크로드에 대한 보안 및 액세스 제어의 기반입니다. AWS는 클라우드에 디렉터리 서비스를 배포하고 사내 인프라 및 기타 ID 제공자와 통합하는 몇 가지 옵션을 지원합니다. 디렉터리 서비스의 보안을 유지하는 것은 모든 솔루션의 전체 인프라에 매우 중요합니다.
이 백서에서는 디렉터리 서비스 배포의 보안 관련 측면만 다룹니다. 올바른 디렉토리 서비스, 배포 토폴로지 및 네트워크 구성을 선택하는 방법에 대한 자세한 내용은 AWS의 Active Directory 도메인 서비스 백서를 참조합니다.
Microsoft Active Directory 용 AWS Directory Service
AWS 관리 마이크로소프트 AD라고도 하는 마이크로소프트 Active Directory용 AWS 디렉터리 서비스를 사용하면 마이크로소프트 AD(Active Directory)를 관리되는 서비스로 실행할 수 있습니다. AWS 관리 마이크로소프트 AD를 배포하면 VPC(가상 사설 클라우드)에 연결된 고가용성 도메인 컨트롤러 쌍이 생성됩니다. 도메인 컨트롤러는 선택한 영역의 서로 다른 가용성 영역에서 실행됩니다.
AWS 관리 마이크로소프트 AD에 공유 책임 모델을 적용하면 AWS가 도메인 컨트롤러 및 DNS 서비스를 배포 및 관리하고 Active Directory 유지 관리 및 관리 작업을 수행할 책임이 있습니다. 고객은 지정된 Active Directory Organization Unit에 데이터 및 위임된 사용 권한을 관리할 책임이 있습니다. 이 접근 방식을 통해 AWS가 디렉토리의 인프라 프로비저닝, 관리 및 유지 관리를 처리합니다. 고객은 AWS의 리소스에 대한 리소스 및 서비스 액세스 관리를 구성하고 유지관리할 책임이 있습니다. 관리 도메인의 리소스를 보호하기 위한 방법론은 최소 권한의 모범 사례를 따라야 하며, 관리자가 역할별 기능(즉, 완료 작업)만 수행할 수 있도록 허용해야 합니다.
Forest 모델
AWS 관리 마이크로소프트 AD에 널리 사용되는 두 가지 포리스트 설계 패턴이 있습니다. 제한된 액세스 포리스트 모델 및 리소스 포리스트 모델입니다.
제한된 액세스 포리스트 모델
Restricted Access Forest Model은 AWS 내에서 격리되고 완전히 독립된 숲입니다. 이 모델은 사내 도메인과 리소스와 AWS 기반 리소스 사이에 별도의 보안 경계를 생성하며, 이는 일부 고객의 요구 사항일 수 있습니다.
리소스 포리스트 모델
리소스 포리스트 모델을 사용하면 사내 사용자가 AWS 바인딩된 리소스에 액세스할 수 있습니다. 이 설계에서는 이전 설계와 유사한 보안 경계 격리 기능을 제공하는 동시에 사내 기반 자격 증명을 사용하여 신뢰를 통해 AWS의 리소스에 액세스할 수 있습니다. 이 모델에서는 기본적으로 액세스 권한이 없으며 트러스트는 디렉토리의 개체를 읽는 데 사용됩니다.
빌드업웍스에서 AWS 무료 컨설팅을 진행합니다.
AWS에 대하여 궁금하신 내용이 있으시거나, 도입을 검토 중이시라면 편하게 신청해주세요.
[ 고지 사항 (Disclaimer) ]
본 컨텐츠는 고객의 편의를 위하여 AWS 서비스 설명을 위해 제작, 제공된 것입니다. 만약 AWS 사이트와 컨텐츠 상에서 차이나 불일치가 있을 경우 AWS 사이트 (AWS.amazon.com)가 우선합니다. 또한 AWS 사이트 상에서 한글 번역문과 영어 원문에 차이나 불일치가 있을 경우(번역의 지체로 인한 경우 등 포함), 영어 원문이 우선합니다.
본 문서는 Securing the Microsoft Platform on Amazon Web Services (2019년, 영문) 내용에 기반하여 작성 되었습니다.
이 문서는 정보 제공의 목적으로만 제공됩니다. 본 문서의 발행일 당시 AWS의 현재 제품 오퍼링 및 실행방법 등을 설명하며, 예고 없이 변경될 수 있습니다. 고객은 본 문서에 포함된 정보나 AWS 제품 또는 서비스의 사용을 독립적으로 평가할 책임이 있으며, 각 정보 및 제품은 명시적이든 묵시적이든 어떠한 종류의 보증 없이 “있는 그대로” 제공됩니다. 본 문서는 AWS, 그 자회사, 공급업체 또는 라이선스 제공자로부터 어떠한 보증, 표현, 계약 약속, 조건 또는 보장을 구성하지 않습니다. 고객에 대한 AWS의 책임 및 의무는 AWS 계약에 의해 관리되며 본 문서는 AWS와 고객 사이의 어떠한 계약에도 속하지 않으며 계약을 변경하지도 않습니다.
© 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved.