보안 구성 및 IAM 역할 - AWS Elastic Beanstalk

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

보안 구성 및 IAM 역할

eb migrate 명령은 IAM 역할, 인스턴스 프로파일 및 서비스 역할을 통해 AWS 보안 구성을 관리합니다. 이러한 구성 요소를 이해하면 마이그레이션 중에 적절한 액세스 제어 및 보안 규정 준수를 보장할 수 있습니다.

인스턴스 프로파일 구성

인스턴스 프로파일은 Elastic Beanstalk가 환경의 EC2 인스턴스에 연결하는 IAM 역할의 컨테이너 역할을 합니다. 를 실행할 때 사용자 지정 인스턴스 프로파일을 지정할 eb migrate수 있습니다.

PS C:\migrations_workspace> eb migrate --instance-profile "CustomInstanceProfile"

인스턴스 프로파일을 지정하지 않으면는 다음 권한이 있는 기본 프로파일을 eb migrate 생성합니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetObject", "s3:GetObjectVersion", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::elasticbeanstalk-*", "arn:aws:s3:::elasticbeanstalk-*/*" ] } ] }

서비스 역할 관리

서비스 역할을 통해 Elastic Beanstalk는 사용자를 대신하여 AWS 리소스를 관리할 수 있습니다. 다음 명령을 사용하여 마이그레이션 중에 사용자 지정 서비스 역할을 지정합니다.

PS C:\migrations_workspace> eb migrate --service-role "CustomServiceRole"

지정하지 않으면는 Elastic Beanstalk가 역할을 수임하도록 허용하는 신뢰 정책을 aws-elasticbeanstalk-service-role 사용하여 라는 기본 서비스 역할을 eb migrate 생성합니다. 이 서비스 역할은 Elastic Beanstalk가 환경 상태를 모니터링하고 관리형 플랫폼 업데이트를 수행하는 데 필수적입니다. 서비스 역할에는 두 가지 관리형 정책이 필요합니다.

  • AWSElasticBeanstalkEnhancedHealth - Elastic Beanstalk가 향상된 상태 보고 시스템을 사용하여 인스턴스 및 환경 상태를 모니터링할 수 있도록 허용합니다.

  • AWSElasticBeanstalkManagedUpdates - 새 플랫폼 버전을 사용할 수 있을 때 환경 리소스 업데이트를 포함하여 Elastic Beanstalk가 관리형 플랫폼 업데이트를 수행할 수 있도록 허용합니다.

이러한 정책을 사용하면 서비스 역할에 다음과 같은 권한이 있습니다.

  • Auto Scaling 그룹 생성 및 관리

  • Application Load Balancer 생성 및 관리

  • Amazon CloudWatch에 로그 업로드

  • EC2 인스턴스 관리

서비스 역할에 대한 자세한 내용은 Elastic Beanstalk 개발자 안내서Elastic Beanstalk 서비스 역할의 섹션을 참조하세요.

보안 그룹 구성

eb migrate 명령은 IIS 사이트 바인딩을 기반으로 보안 그룹을 자동으로 구성합니다. 예를 들어 소스 환경에 포트 80, 443 및 8081을 사용하는 사이트가 있는 경우 다음 구성 결과가 표시됩니다.

<site name="Default Web Site"> <bindings> <binding protocol="http" bindingInformation="*:80:" /> <binding protocol="https" bindingInformation="*:443:" /> </bindings> </site> <site name="InternalAPI"> <bindings> <binding protocol="http" bindingInformation="*:8081:" /> </bindings> </site>

마이그레이션 프로세스는 다음 작업을 완료합니다.

  • 인터넷에서 포트 80 및 443의 인바운드 트래픽을 허용하는 로드 밸런서 보안 그룹을 생성합니다(0.0.0.0/0).

  • 로드 밸런서의 트래픽을 허용하는 EC2 보안 그룹을 생성합니다.

  • 이 지정된 경우 추가 포트(예: 8081)--copy-firewall-config를 구성합니다.

기본적으로 Application Load Balancer는 인터넷에서 퍼블릭 액세스로 구성됩니다. 특정 IP 범위로 액세스를 제한하거나 프라이빗 로드 밸런서를 사용하는 등이 동작을 사용자 지정해야 하는 경우 --vpc-config 파라미터를 사용하여 기본 VPC 및 보안 그룹 구성을 재정의할 수 있습니다.

PS C:\migrations_workspace> eb migrate --vpc-config vpc-config.json

예를 들어 다음 vpc-config.json 구성은 프라이빗 서브넷에 프라이빗 로드 밸런서를 생성합니다.

{ "id": "vpc-12345678", "publicip": "false", "elbscheme": "internal", "ec2subnets": ["subnet-private1", "subnet-private2"], "elbsubnets": ["subnet-private1", "subnet-private2"] }

VPC 구성 옵션에 대한 자세한 내용은 섹션을 참조하세요VPC 구성.

SSL 인증서 통합

HTTPS 바인딩으로 사이트를 마이그레이션할 때 AWS Certificate Manager (ACM)을 통해 SSL 인증서를 통합합니다.

PS C:\migrations_workspace> eb migrate --ssl-certificates "arn:aws:acm:region:account:certificate/certificate-id"

이 구성은 다음 작업을 완료합니다.

  • 인증서를 Application Load Balancer와 연결

  • 로드 밸런서에서 HTTPS 종료 유지

  • 로드 밸런서와 EC2 인스턴스 간의 내부 HTTP 통신을 보존합니다.

Windows 인증

Windows 인증을 사용하는 애플리케이션의 경우는 다음과 web.config 같이 애플리케이션의 인증 설정을 eb migrate 보존합니다.

<configuration> <system.webServer> <security> <authentication> <windowsAuthentication enabled="true"> <providers> <add value="Negotiate" /> <add value="NTLM" /> </providers> </windowsAuthentication> </authentication> </security> </system.webServer> </configuration>
중요

eb migrate 명령은 소스 환경에서 대상 Elastic Beanstalk 인스턴스로 사용자 프로필 또는 계정을 복사하지 않습니다. 소스 서버에서 생성한 사용자 지정 사용자 계정 또는 그룹은 마이그레이션 후 대상 환경에서 다시 생성해야 합니다.

IUSR 및와 같은 기본 제공 Windows 계정IIS_IUSRS과 기타 모든 기본 제공 계정 및 그룹은 기본적으로 대상 Windows Server 인스턴스에 포함됩니다. 내장 IIS 계정 및 그룹에 대한 자세한 내용은 Microsoft 설명서의 IIS의 내장 사용자 및 그룹 계정 이해를 참조하세요.

애플리케이션이 사용자 지정 Windows 사용자 계정 또는 Active Directory 통합을 사용하는 경우 마이그레이션이 완료된 후 이러한 측면을 별도로 구성해야 합니다.

모범 사례 및 문제 해결

관리 역할

Elastic Beanstalk 환경의 역할을 관리할 때 AWS IAM 모범 사례를 구현합니다.

역할 생성 및 관리
모니터링 및 감사

를 활성화 AWS CloudTrail 하여 역할 사용량을 모니터링합니다.

정기 검토 프로세스

분기별 검토 주기를 설정하여 다음 작업을 수행합니다.

  • IAM Access Analyzer를 사용하여 미사용 권한 감사

  • 오래된 권한 제거

  • 최소 권한 원칙에 따라 역할 업데이트

인증서 관리

Elastic Beanstalk 환경에서 SSL/TLS 인증서에 대해 다음 사례를 구현합니다.

인증서 수명 주기
보안 표준
  • TLS 1.2 이상 사용

  • HTTPS 리스너에 대한 AWS 보안 정책 준수

  • 필요한 경우 HTTP 엄격한 전송 보안(HSTS) 구현

보안 그룹 관리

다음 보안 그룹 모범 사례를 구현합니다.

규칙 관리
정기 감사

월별 검토를 설정하여 다음 작업을 수행합니다.

  • 미사용 규칙 식별 및 제거

  • 소스/대상 요구 사항 검증

  • 중복 규칙 확인

로깅 및 모니터링

효과적인 보안 모니터링을 위해 다음 로그를 구성합니다.

EC2 인스턴스의 Windows 이벤트 로그
# Review Security event log PS C:\migrations_workspace> Get-EventLog -LogName Security -Newest 50 # Check Application event log PS C:\migrations_workspace> Get-EventLog -LogName Application -Source "IIS*"
CloudWatch Logs 통합

중앙 집중식 모니터링 및 알림을 위해 Windows 이벤트 로그를 CloudWatch로 스트리밍하도록 CloudWatch Logs 에이전트를 구성합니다.

지속적인 문제의 경우 이러한 로그를 수집하고 다음 정보로 AWS Support 에 문의하세요.

  • 환경 ID

  • 배포 ID(해당하는 경우)

  • 관련 오류 메시지

  • 보안 변경의 타임라인