AWS 계정과 리소스를 보호하기 위한 모범 사례는 무엇인가요?

최종 업데이트 날짜: 2022년 8월 22일

AWS 계정과 리소스를 보호하기 위한 모범 사례는 무엇인가요?

-또는-

AWS 리소스 또는 계정을 무단 활동으로부터 보호하고 싶습니다.

간략한 설명

AWS는 계정을 보호하는 데 도움이 되는 다양한 도구를 제공합니다. 그러나 이러한 조치는 대부분 기본적으로 활성화되어 있지 않으므로 이를 구현하기 위해서는 직접적인 조치를 취해야 합니다. 다음은 계정과 리소스를 보호할 때 고려해야 할 몇 가지 모범 사례입니다.

  • 암호 및 액세스 키 보호
  • 다중 인증(MFA) 활성화, 대상은 AWS 계정 루트 사용자 및 AWS Identity and Access Management(AWS IAM)에 대한 대화형 액세스 권한이 있는 모든 사용자
  • 리소스에 대한 AWS 계정 루트 사용자 액세스 제한
  • IAM 사용자 및 정책을 자주 감사
  • Amazon Elastic Block Store(Amazon EBS) 스냅샷, Amazon Relational Database Service(RDS) 스냅샷 및 Amazon Simple Storage Service(S3) 객체 버전 생성
  • AWS Git 프로젝트를 사용하여 무단 사용 증거 스캔
  • 계정 및 리소스 모니터링

참고: AWS Identity Center 또는 IAM 페더레이션 사용자를 사용하는 경우 IAM 사용자에 대한 모범 사례가 페더레이션 사용자에게도 적용됩니다.

해결 방법

암호 및 액세스 키 보호

계정에 액세스하는 데 사용되는 두 가지 주요 보안 인증 유형은 암호와 액세스 키입니다. 암호와 액세스 키는 AWS 루트 사용자 계정 및 개별 IAM 사용자에게 적용할 수 있습니다. 다른 기밀 개인 데이터를 다룰 때처럼 안전하게 암호와 액세스 키를 안전하게 보호하는 것이 모범 사례입니다. 공개적으로 액세스할 수 있는 코드(예: 퍼블릭 Git 리포지토리)에는 절대 포함시키지 마세요. 보안을 강화하려면 모든 보안 인증을 자주 바꾸고 업데이트하세요.

암호 또는 액세스 키 쌍이 노출된 것으로 의심되는 경우 다음 단계를 따르세요.

  1. 모든 액세스 키 페어를 교체합니다.
  2. AWS 계정 루트 사용자 암호를 변경합니다.
  3. AWS 계정에서 무단 활동이 발견되면 어떻게 해야 하나요?의 지침을 따르세요.

MFA 활성화

MFA를 활성화하면 계정을 보호하고, 권한이 없는 사용자가 보안 토큰 없이 계정에 로그인하지 못하도록 방지할 수 있습니다.

보안을 강화하려면 AWS 리소스를 보호할 수 있도록 MFA를 구성하는 것이 가장 좋습니다. IAM 사용자AWS 계정 루트 사용자에 대해 가상 MFA를 활성화할 수 있습니다. 루트 사용자에 대해 MFA를 활성화하면 루트 사용자 보안 인증만 영향을 받습니다. 계정의 IAM 사용자는 고유한 보안 인증을 사용하는 고유한 ID이며 각 ID에는 고유한 MFA 구성이 있습니다.

자세한 내용은 AWS에서 사용자를 위한 MFA 디바이스 활성화를 참조하세요.

리소스에 대한 루트 사용자 액세스 제한

루트 사용자 계정 보안 인증(루트 암호 또는 루트 액세스 키)은 계정 및 해당 리소스에 대한 무제한 액세스를 허용합니다. 계정에 대한 루트 사용자 액세스를 보호하고 최소화하는 것이 가장 좋습니다.

계정에 대한 루트 사용자 액세스를 제한하려면 다음 전략을 고려하세요.

자세한 내용은 루트 사용자 보안 인증을 보호하고 일상적인 작업에 사용하지 않음을 참조하세요.

IAM 사용자 및 정책을 자주 감사

IAM 사용자와 작업할 때 다음 모범 사례를 고려하세요.

IAM 콘솔의 시각적 편집기를 사용하여 보안 정책을 정의할 수 있습니다. 일반적인 비즈니스 사용 사례와 이를 다루는 데 사용할 수 있는 정책에 대한 예시는 IAM의 비즈니스 사용 사례를 참조하세요.

Amazon EBS 스냅샷, Amazon RDS 스냅샷 및 Amazon S3 객체 버전 생성

EBS 볼륨의 특정 시점 스냅샷을 생성하려면 Amazon EBS 스냅샷 생성을 참조하세요.

Amazon RDS 자동 스냅샷을 활성화하고 백업 보존 기간을 설정하려면 자동 백업 활성화를 참조하세요.

백업 및 아카이브용 표준 S3 버킷을 생성하려면 백업 및 아카이브용 표준 S3 버킷 생성을 참조하세요. S3 버킷 버전 관리를 생성하려면 S3 버킷에서 버전 관리 사용을 참조하세요.

콘솔을 사용하여 AWS Backup 플랜을 생성하려면 예약 백업 생성을 참조하세요. AWS Command Line Interface(AWS CLI)를 사용하여 AWS Backup 플랜을 생성하려면 AWS CLI를 사용하여 AWS Backup 플랜을 생성하거나 온디맨드 작업을 실행하려면 어떻게 해야 하나요?를 참조하세요.

AWS Git 프로젝트를 사용하여 무단 사용으로부터 보호

AWS에서는 계정을 보호하는 데 도움이 되도록 설치 가능한 Git 프로젝트를 제공합니다.

  • Git Secrets는 보안 정보(액세스 키)의 병합, 커밋 및 커밋 메시지를 스캔할 수 있습니다. 금지된 정규식이 감지되면 Git Secrets가 퍼블릭 리포지토리에 게시되지 않도록 해당 커밋을 거부할 수 있습니다.
  • AWS Step Functions 및 AWS Lambda를 사용하여 AWS Health에서 또는 AWS Trusted Advisor를 통해 Amazon CloudWatch Events를 생성합니다. 액세스 키가 노출되었다는 증거가 있는 경우 프로젝트를 통해 이벤트를 자동으로 감지, 로깅 및 완화할 수 있습니다.

계정 및 리소스 모니터링

비정상적인 활동이나 계정 액세스를 감지할 수 있도록 계정과 해당 리소스를 적극적으로 모니터링하는 것이 가장 좋습니다. 다음 해결 방법을 하나 이상 활용할 수 있습니다.

참고: 정기적으로 사용하는 지역뿐 아니라 모든 리전에 대해 로깅을 켜는 것이 좋습니다.