실습 개요
보안 그룹은 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스에 연결된 가상 방화벽입니다. 보안 그룹 규칙은 인스턴스에서 송수신이 허용되는 트래픽을 정의합니다. 이 실습에서는 여러분이 Amazon EC2 인스턴스에 대한 액세스 규칙 구성을 담당하는 보안 모니터 요원입니다. 각 인스턴스에서 인증된 트래픽만 허용되도록 해야 합니다. 이 태스크를 수행하려면 어떤 트래픽을 허용해야 하는지 검토하고 인스턴스에 연결된 보안 그룹 규칙을 검사합니다. 그런 다음, 연결을 테스트하고 잘못 구성된 규칙을 수정합니다.
이 실습에서는 애플리케이션 서버 역할을 하는 AppServer라는 인스턴스가 프라이빗 서브넷으로 시작되었습니다. 즉, 이 인스턴스는 인터넷에서 직접 액세스할 수 없습니다. AppServer 보안 그룹 규칙을 테스트하려면 먼저 동일한 Virtual Private Cloud(VPC)의 퍼블릭 서브넷에 있는 중간 Amazon EC2 인스턴스에 연결합니다. 중간 인스턴스는 배스천 호스트(또는 점프 서버)라고 하므로 이름이 BastionHost입니다. BastionHost 연결에서 프라이빗 서브넷에 있는 AppServer 인스턴스의 보안 그룹 규칙에 연결하고 테스트하게 됩니다. 배스천 호스트/점프 서버 모델 구현은 프라이빗 서브넷 리소스를 원격으로 관리하기 위한 일반적인 네트워크 보안 구성입니다.
퍼블릭 서브넷에는 PublicServer라는 두 번째 Amazon EC2 인스턴스가 있습니다. 먼저 PublicServer를 사용하여 SSH 트래픽이 BastionHost에서 AppServer로만 허용되는지 테스트하고 확인합니다. 이렇게 하면 AppServer에서 무단 SSH 작업의 위험이 최소화됩니다. 나중에 BastionHost에서 PublicServer로 보안 구성을 복제하여 중복성을 위한 두 번째 배스천 호스트를 생성합니다.
작업을 간편하게 진행할 수 있도록 AWS Systems Manager용 에이전트가 BastionHost 및 PublicServer에 설치되어 있습니다. 그러므로 Systems Manager Session Manager를 사용하여 브라우저에서 미리 구성된 URL을 사용하여 해당 인스턴스 중 하나에 대한 SSH 세션을 즉시 생성할 수 있습니다. 실습이 끝날 무렵에는 기존 배스천 호스트 사용에 대한 대안으로 Session Manager에 대해 자세히 살펴볼 것입니다.
Session Manager는 대화형 원클릭 브라우저 기반 셸 또는 AWS Command Line Interface(AWS CLI)를 통해 Amazon EC2 인스턴스, 온프레미스 인스턴스 및 가상 머신(VM)을 관리할 수 있는 완전관리형 AWS Systems Manager 기능입니다. Session Manager는 인바운드 포트를 열거나 접속 호스트를 유지하거나 SSH 키를 관리할 필요 없이 안전하고 감사가 가능한 인스턴스 관리를 제공합니다. 또한 Session Manager를 사용하면 인스턴스 액세스 제어, 엄격한 보안 관행, 인스턴스 액세스 세부 정보가 포함된 전면 감사가 가능한 로그를 요구하는 기업 정책을 쉽게 준수하면서 최종 사용자에게 관리형 인스턴스에 대한 원클릭 교차 플랫폼 액세스를 제공할 수 있습니다.
이 실습에서 다루는 주제
이 실습을 완료하면 다음을 수행할 수 있습니다.
- 보안 그룹을 검사하고 허용되는 트래픽 결정
- Amazon EC2 인스턴스에 적용되는 보안 그룹 변경
- 최소 권한의 원칙을 따르도록 보안 그룹 업데이트
- 보안 그룹이 다른 보안 그룹을 참조하는 방법 이해
- Session Manager를 활용하여 인스턴스에 연결하는 방법 이해
선행 조건
이 실습에는 다음 사항이 필요합니다.
- Microsoft Windows, macOS 또는 Linux(Ubuntu, SuSE, Red Hat)가 실행되는 Wi-Fi 지원 노트북
참고 iPad나 태블릿 디바이스로는 실습 환경에 액세스할 수 없지만, 수강생 가이드는 볼 수 있습니다.
- Microsoft Windows 사용자의 경우: 컴퓨터의 관리자 권한
- Chrome, Firefox 또는 Internet Explorer 9와 같은 인터넷 브라우저(IE9 이전 버전은 지원하지 않음)
- 선택 사항: PuTTY 등의 SSH 클라이언트
소요 시간
이 실습을 완료하는 데 45분 정도가 걸립니다.
이 실습에서 사용하지 않는 AWS 서비스
이 실습에서 사용하지 않는 AWS 서비스는 실습 환경에서 비활성화됩니다. 또한 이 실습에 사용되는 서비스의 기능은 실습에 필요한 것으로 제한됩니다. 다른 서비스에 액세스하거나 이 실습 가이드에서 제공하는 것 외의 작업을 수행하는 경우 오류가 발생할 수 있습니다.