Elastic Beanstalk 환경 인스턴스에서 IMDS 구성 - AWS Elastic Beanstalk

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

Elastic Beanstalk 환경 인스턴스에서 IMDS 구성

이 주제에서는 인스턴스 메타데이터 서비스(IMDS)에 대해 설명합니다.

인스턴스 메타데이터는 애플리케이션이 실행 중인 인스턴스를 구성 또는 관리하는 데 사용할 수 있는 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스 관련 데이터입니다. 인스턴스 메타데이터 서비스(IMDS)는 인스턴스의 코드가 인스턴스 메타데이터에 안전하게 액세스하기 위해 사용하는 온 인스턴스 구성 요소입니다. 이 코드는 환경 인스턴스의 Elastic Beanstalk 플랫폼 코드, 애플리케이션에서 사용 중일 수도 있는 AWS SDK 또는 애플리케이션의 자체 코드일 수 있습니다. 자세한 내용은 Amazon EC2 사용 설명서의 인스턴스 메타데이터 및 사용자 데이터를 참조하세요.

코드는 인스턴스 메타데이터 서비스 버전 1(IMDSv1) 또는 인스턴스 메타데이터 서비스 버전 2(IMDSv2)의 두 가지 방법 중 하나를 사용하여 실행 중인 인스턴스에서 인스턴스 메타데이터에 액세스할 수 있습니다. IMDSv2는 세션 지향 요청을 사용하며 IMDS에 액세스하기 위해 사용될 수 있는 여러 유형의 취약성을 완화합니다. 이러한 두 가지 방법에 대한 자세한 내용은 Amazon EC2 사용 설명서의 인스턴스 메타데이터 서비스 구성을 참조하세요.

IMDS에 대한 플랫폼 지원

Amazon Linux 2와 Amazon Linux 2023 및 Windows 서버에서 실행되는 Elastic Beanstalk 플랫폼은 IMDSv1과 IMDSv2를 모두 지원합니다. 자세한 내용은 Elastic Beanstalk 콘솔을 사용하여 IMDS 구성 단원을 참조하세요.

IMDS 방법 선택

환경에서 지원하고자 하는 IMDS 방법에 대한 결정을 내릴 때는 다음 사용 사례를 고려하세요.

  • AWS SDK - 애플리케이션에서 AWS SDK를 사용하는 경우 최신 버전의 SDK를 사용해야 합니다. AWS SDK는 IMDS를 호출하고 최신 SDK 버전은 가능하면 IMDSv2를 사용합니다. IMDSv1을 비활성화하거나 애플리케이션에서 이전 SDK 버전을 사용하는 경우 IMDS 호출이 실패할 수 있습니다.

  • 애플리케이션 코드 – 애플리케이션에서 IMDS를 호출하는 경우 직접적인 HTTP 요청을 수행하는 대신 AWS SDK를 사용하여 호출하는 것이 좋습니다. 이렇게 하면 IMDS 방법을 전환하기 위해 코드를 변경할 필요가 없습니다. AWS SDK는 가능하면 IMDSv2를 사용합니다.

  • Elastic Beanstalk 플랫폼 코드 – 코드는 AWS SDK를 통해 IMDS를 호출하므로 모든 지원 가능 플랫폼 버전에서 IMDSv2를 사용합니다. 사용 중인 코드가 최신 AWS SDK를 사용하고 SDK를 통해 모든 IMDS를 호출하는 경우 IMDSv1을 안전하게 비활성화할 수 있습니다.

Elastic Beanstalk 콘솔을 사용하여 IMDS 구성

Elastic Beanstalk 콘솔에서 Elastic Beanstalk 환경의 Amazon EC2 인스턴스 구성을 수정할 수 있습니다.

중요

DisableIMDSv1 옵션 설정을 사용하면 Elastic Beanstalk가 시작 템플릿으로 환경을 생성하거나 시작 구성에서 시작 템플릿으로 기존 환경을 업데이트할 수 있습니다. 자세한 내용은 시작 템플릿 섹션을 참조하세요.

Elastic Beanstalk 콘솔에서 Amazon EC2 인스턴스에서 IMDS를 구성하려면
  1. Elastic Beanstalk 콘솔을 연 다음 리전(Regions) 목록에서 해당 AWS 리전을 선택합니다.

  2. 탐색 창에서 환경을 선택한 다음 목록에서 환경 이름을 선택합니다.

    참고

    여러개의 환경을 보유한 경우 검색 창을 통해 환경 목록을 필터링합니다.

  3. 탐색 창에서 구성을 선택합니다.

  4. 인스턴스 트래픽 및 스케일링(Instance traffic and scaling) 구성 범주에서 편집(Edit)을 선택합니다.

  5. IMDSv1 비활성화를 설정하고 IMDSv2를 적용합니다. IMDSv1 및 IMDSv2를 모두 활성화하려면 IMDSv1 비활성화를 선택 해제합니다.

  6. 변경 사항을 저장하려면 페이지 하단에서 적용을 선택합니다.

aws:autoscaling:launchconfiguration 네임스페이스

aws:autoscaling:launchconfiguration 네임스페이스의 구성 옵션을 사용하여 환경의 인스턴스에 IMDS를 구성할 수 있습니다.

중요

DisableIMDSv1 옵션 설정을 사용하면 Elastic Beanstalk가 시작 템플릿으로 환경을 생성하거나 시작 구성에서 시작 템플릿으로 기존 환경을 업데이트할 수 있습니다. 자세한 내용은 시작 템플릿 섹션을 참조하세요.

다음 구성 파일 예제는 DisableIMDSv1 옵션을 사용하여 IMDSv1을 비활성화합니다.

option_settings: aws:autoscaling:launchconfiguration: DisableIMDSv1: true

DisableIMDSv1true로 설정하여 IMDSv1을 비활성화하고 IMDSv2를 적용합니다.

DisableIMDSv1false로 설정하여 IMDSv1 및 IMDSv2를 모두 비활성화합니다.