AWS Config를 사용하여 EC2 인스턴스 키 페어를 모니터링 - AWS 권장 가이드

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

AWS Config를 사용하여 EC2 인스턴스 키 페어를 모니터링

환경: 프로덕션

기술: 보안, 자격 증명 및 규정 준수

AWS 서비스: Amazon SNS, AWS Config, AWS Lambda

요약

Amazon Web Services(AWS) 클라우드에서 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스를 시작하는 경우 가장 좋은 방법은 인스턴스에 연결하는 데 기존 키 페어를 사용하거나 생성하는 것입니다. 인스턴스에 저장된 퍼블릭 키와 사용자에게 제공되는 프라이빗 키로 구성된 키 페어를 사용하면 Secure Shell(SSH)를 통해 인스턴스에 안전하게 액세스할 수 있으며 암호 사용을 피할 수 있습니다. 하지만 사용자가 키 페어를 연결하지 않고 실수로 인스턴스를 시작하는 경우가 있습니다. 키 페어는 인스턴스 시작 시에만 할당될 수 있으므로 키 페어 없이 시작되는 모든 인스턴스를 신속하게 식별하여 비준수 상태로 플래그를 지정하는 것이 중요합니다. 이는 인스턴스 액세스에 반드시 키 페어를 사용해야 하는 계정이나 환경에서 작업할 때 특히 유용합니다.

이 패턴은 AWS Config에서 EC2 인스턴스 키 페어를 모니터링하기 위한 사용자 지정 규칙을 생성하는 방법을 설명합니다. 인스턴스가 규정을 준수하지 않는 것으로 확인되면 Amazon 이벤트를 통해 시작된 Amazon Simple Notification Service (Amazon SNS) 알림을 사용하여 알림이 전송됩니다. EventBridge

사전 조건 및 제한 사항

사전 조건

  • 활성 상태의 AWS 계정.

  • 모니터링하려는 AWS 리전에 대해 AWS Config가 활성화되고 모든 AWS 리소스를 기록하도록 구성됨

제한 사항

  • 이 솔루션은 리전별로 다릅니다. 이러한 모든 리소스를 동일한 AWS 리전 내에 생성해야 합니다.

아키텍처

대상 기술 스택

  • AWS Config

  • 아마존 EventBridge

  • AWS Lambda

  • Amazon SNS

대상 아키텍처 

  1. AWS Config가 규칙을 시작합니다.

  2. 이 규칙은 Lambda 함수를 간접적으로 호출하여 EC2 인스턴스의 규정 준수를 평가합니다.

  3. Lambda 함수는 업데이트된 규정 준수 상태를 AWS Config에 전송합니다.

  4. AWS Config는 에 이벤트를 전송합니다. EventBridge

  5. EventBridge 규정 준수 변경 알림을 SNS 주제에 게시합니다.

  6. Amazon SNS는 이메일로 경고를 보냅니다.

자동화 및 규모 조정

이 솔루션은 리전 내 EC2 인스턴스를 원하는 수만큼 모니터링할 수 있습니다.

도구

도구

  • AWS Config – AWS Config는 AWS 리소스 구성을 측정, 감사 및 평가할 수 있도록 지원합니다. 를 사용하여 AWS 리소스 구성을 측정, 감사 및 평가할 수 있습니다. 는 AWS 리소스 구성을 지속적으로 모니터링 및 기록하여 사용자가 원하는 구성을 기준으로 기록된 구성을 자동으로 평가할 수 있습니다.

  • Amazon EventBridge — EventBridge Amazon은 애플리케이션을 다양한 소스의 데이터와 연결하는 서버리스 이벤트 버스 서비스입니다.

  • AWS Lambda – AWS Lambda는 서버를 프로비저닝하거나 관리하지 않고도 코드를 실행하고, 워크로드를 인식하는 클러스터 확장 로직을 생성하고, 이벤트 통합을 유지 관리하거나 런타임을 관리할 수 있도록 지원하는 서버리스 컴퓨팅 서비스입니다.

  • 아마존 SNS — 아마존 심플 알림 서비스 (Amazon SNS) 는 (A2A) application-to-person 및 (A2P) 통신 application-to-application 모두를 위한 완전 관리형 메시징 서비스입니다.

코드 

Lambda 함수에 대한 코드가 첨부되어 있습니다. 

에픽

작업설명필요한 기술
Amazon EC2에 대해 새로운 AWS Identity 및 Access Management(IAM) 역할을 생성합니다.

AWS Management Console에서 IAM을 선택한 다음, Lambda를 신뢰할 수 있는 엔터티로 사용하고 AmazonEventBridgeFullAccessAWSConfigRulesExecutionRole 권한을 추가하여 역할을 생성합니다. 자세한 내용은 AWS 설명서를 참조하세요.

DevOps
Lambda 함수를 생성하고 배포합니다.
  1. Lambda 콘솔에서 새로 작성하여 Python 3.6을 런타임으로 사용하고 이전에 생성된 IAM 역할을 사용하여 함수를 생성합니다. Amazon 리소스 이름(ARN)을 적어 둡니다.

  2. 코드 탭에서 lambda_function.py을(를) 선택하여 이 패턴에 첨부된 코드를 붙여넣습니다. 

  3. 변경 사항을 저장하려면 배포를 선택합니다. 

DevOps
작업설명필요한 기술
사용자 지정 AWS Config 규칙을 추가합니다.

AWS Config 콘솔에서 다음 설정을 사용하여 사용자 지정 규칙을 추가합니다.

  • ARN – 이전에 생성된 Lambda 함수의 ARN

  • 트리거 유형 – 구성 변경

  • 변경 범위 – 리소스

  • 리소스 유형 – Amazon EC2 인스턴스

자세한 내용은 AWS 설명서를 참조하세요.

DevOps
작업설명필요한 기술
SNS 주제 및 구독자를 생성합니다.

Amazon SNS 콘솔에서 표준을 유형으로 사용하여 주제를 생성한 다음 이메일을 프로토콜로 사용하여 구독을 생성합니다.

이메일을 수신하면 이메일에서 구독 확인 링크를 선택합니다.

자세한 내용은 AWS 설명서를 참조하세요.

DevOps
Amazon SNS 알림을 시작하는 EventBridge 규칙을 생성하십시오.

EventBridge 콘솔에서 다음 설정을 사용하여 규칙을 생성합니다.

  • 서비스 이름 – AWS Config

  • 이벤트 유형 – Config 규칙 규정 준수 변경

  • 메시지 유형 — 특정 메시지 유형, ComplianceChangeNotification

  • 특정 규칙 이름 – 이전에 생성한 AWS Config 규칙의 이름

  • 대상 – SNS 주제, 이전에 생성한 주제

자세한 내용은 AWS 설명서를 참조하세요.

DevOps
작업설명필요한 기술
EC2 인스턴스를 생성합니다.

모든 유형의 EC2 인스턴스 2개를 생성하고 키 페어를 연결한 다음, 키 페어가 없는 EC2 인스턴스 1개를 생성합니다.

DevOps
규칙을 확인합니다.
  1. AWS Config 콘솔의 규칙 페이지에서 규칙을 선택합니다.

  2. 규정 준수 및 비준수 EC2 인스턴스를 보려면 리소스 범위모두로 변경하세요. 두 개의 인스턴스가 규정 준수로 나열되고 하나의 인스턴스가 비준수로 나열되어 있는지 확인하세요. 

  3. EC2 인스턴스의 규정 준수 상태에 관한 Amazon SNS 이메일 알림을 받을 때까지 기다리세요. 

DevOps

첨부

이 문서와 관련된 추가 콘텐츠에 액세스하려면 attachment.zip 파일의 압축을 풉니다.