메뉴
AWS CloudTrail
사용 설명서 (버전 1.0)

추적 생성

모든 리전에 적용되는 추적을 생성하는 절차를 따르십시오. 모든 리전에 적용되는 추적은 모든 리전의 로그 파일을 S3 버킷으로 전송합니다. 추적을 생성하면 CloudTrail은 사용자가 지정한 이벤트에 대한 로깅을 자동으로 시작합니다.

참고

트레일을 생성한 후에는 CloudTrail 로그에서 수집된 이벤트 데이터를 추가 분석 및 처리하도록 기타 AWS 서비스를 구성할 수 있습니다. 자세한 내용은 CloudTrail 지원 서비스 및 통합 단원을 참조하십시오.

콘솔에서 추적 생성

다음에 대해 추적을 구성할 수 있습니다.

  • 추적을 모든 리전에 적용할지 또는 단일 리전에 적용할지를 지정합니다.

  • 로그 파일을 수신할 Amazon S3 버킷을 지정합니다.

  • 관리 이벤트 및 데이터 이벤트에 대해 어떤 이벤트(읽기 전용 이벤트, 쓰기 전용 이벤트 또는 모든 이벤트)를 로깅할지 지정합니다.

AWS Management 콘솔을 사용하여 CloudTrail 추적을 생성하려면

  1. AWS Management 콘솔에 로그인하고 https://console.aws.amazon.com/cloudtrail/에서 CloudTrail 콘솔을 엽니다.

  2. 추적을 생성할 리전을 선택합니다.

  3. [Get Started Now]를 선택합니다.

    작은 정보

    지금 시작하기가 보이지 않으면 추적을 선택한 후 추적 생성을 선택합니다.

  4. [Create Trail] 페이지에서 [Trail name]의 경우 추적 이름을 입력합니다. 자세한 내용은 CloudTrail 추적 이름 지정 요구 사항 섹션을 참조하십시오.

  5. [Apply trail to all regions]의 경우 [Yes]를 선택하여 모든 리전에서 로그 파일을 수신합니다. 이는 기본값이며 권장 설정입니다. [No]를 선택할 경우 추적은 추적을 생성한 리전에서만 파일을 로깅합니다.

  6. [Management events]의 [Read/Write events]의 경우 추적이 [All], [Read-only], [Write-only] 또는 [None]을 로깅할지 선택한 다음 [Save]를 선택합니다. 기본적으로 추적은 모든 관리 이벤트를 로깅합니다. 자세한 내용은 관리 이벤트 단원을 참조하십시오.

  7. [Data events]의 경우 Amazon S3 버킷, AWS Lambda 함수 또는 양쪽 모두에 대한 데이터 이벤트 로깅을 지정할 수 있습니다. 기본적으로 추적은 데이터 이벤트를 로깅하지 않습니다. 데이터 이벤트 로깅에는 추가 요금이 부과됩니다. CloudTrail 요금은 AWS CloudTrail 요금을 참조하십시오.

    모든 S3 버킷 및 Lambda 함수 로깅 옵션을 선택하거나, 개별 버킷 또는 함수를 지정할 수 있습니다.

    Amazon S3 버킷의 경우:

    • [S3] 탭을 선택합니다.

    • 버킷을 지정하려면, [Add S3 bucket]을 선택합니다. 데이터 이벤트를 로깅할 S3 버킷 이름과 접두사(선택 사항)를 입력합니다. 각 버킷에 대해 GetObject와 같은 읽기 이벤트를 로깅할지, PutObject와 같은 쓰기 이벤트를 로깅할지 또는 두 가지 이벤트를 모두 로깅할지를 지정합니다. 자세한 내용은 데이터 이벤트 단원을 참조하십시오.

    • AWS 계정의 모든 S3 버킷에 대한 데이터 이벤트를 로깅하려면 계정에서 모든 S3 버킷 선택을 선택합니다. 그런 다음 GetObject와 같은 쓰기 이벤트를 로깅할지, PutObject와 같은 쓰기 이벤트를 로깅할지, 두 가지 이벤트를 모두 로깅할지를 선택합니다. 이 설정은 개별 버킷에 대해 구성한 개별 설정보다 우선 적용됩니다. 예를 들어 모든 S3 버킷에 대해 [Read] 이벤트 로깅을 지정한 다음, 데이터 이벤트 로깅 대상으로 특정 버킷을 추가하기로 선택하면 추가한 버킷에 [Read]가 사전 선택됩니다. 선택을 취소할 수 없습니다. [Write]에 대한 옵션만 구성할 수 있습니다.

      참고

      계정에서 모든 S3 버킷 선택 옵션을 선택하면 현재 AWS 계정에 있는 모든 버킷과 추적 생성을 완료한 후 생성하는 모든 버킷에 대해 데이터 이벤트 로깅이 활성화됩니다. 또한 다른 AWS 계정에 속하는 버킷에 대한 데이터 이벤트 활동이더라도 본인 AWS 계정의 사용자 또는 역할이 수행한 활동이라면 데이터 이벤트 활동 로깅을 활성화할 수 있습니다.

      추적을 한 리전에만 적용하는 경우 계정에서 모든 S3 버킷 선택 옵션을 선택하면 추적과 동일한 리전에 있는 모든 버킷과 해당 리전에서 나중에 생성하는 모든 버킷에 대해 데이터 이벤트 로깅이 활성화됩니다. AWS 계정에서 다른 리전에 있는 Amazon S3 버킷에 대해서는 데이터 이벤트가 로깅되지 않습니다.

    Lambda 함수의 경우:

    • [Lambda] 탭을 선택합니다.

    • 개별 함수 로깅을 지정하려면 목록에서 해당 함수를 선택합니다.

      참고

      계정의 Lambda 함수가 15,000개를 넘을 경우, 추적을 생성할 때 CloudTrail 콘솔에서 함수를 모두 보거나 선택할 수 없습니다. 함수가 모두 표시되지는 않더라도 모든 함수를 로깅하는 옵션을 선택할 수 있습니다. 특정 함수에 대한 데이터 이벤트를 로깅하려면 함수를 수동으로 추가할 수 있습니다(함수의 ARN을 알고 있는 경우). 콘솔에서 추적 생성을 마친 다음 AWS CLI 및 put-event-selectors 명령을 사용하여 특정 Lambda 함수에 대한 데이터 이벤트 로깅을 구성할 수도 있습니다. 자세한 내용은 추적 관리 단원을 참조하십시오.

    • AWS 계정의 모든 Lambda 함수에 대한 데이터 이벤트를 로깅하려면 [Log all current and future functions]를 선택합니다. 이 설정은 개별 함수에 대해 구성한 개별 설정보다 우선합니다. 일부 함수가 표시되지 않더라도 모든 함수가 로깅됩니다.

      참고

      모든 리전에 대한 추적을 생성할 경우, 이 옵션을 선택하면 현재 AWS 계정에 있는 모든 함수와 추적 생성을 완료한 후 모든 리전에서 생성할 수 있는 모든 Lambda 함수에 대해 데이터 이벤트 로깅이 활성화됩니다. 단일 리전에 대한 추적을 생성할 경우, 이 옵션을 선택하면 현재 AWS 계정의 해당 리전에 있는 모든 함수와 추적 생성을 완료한 후 해당 리전에서 생성할 수 있는 모든 Lambda 함수에 대해 데이터 이벤트 로깅이 활성화됩니다. 다른 리전에서 생성되는 Lambda 함수에 대한 데이터 이벤트 로깅은 활성화되지 않습니다.

      또한 모든 함수에 대한 데이터 이벤트 로깅을 설정하면 다른 AWS 계정의 함수에 대한 데이터 이벤트 활동이라도 AWS 계정의 사용자 또는 역할이 수행한 활동이라면 로깅됩니다.

  8. [Storage location]의 [Create a S3 bucket]의 경우 [Yes]를 선택하여 새 버킷을 생성합니다. 버킷을 생성하면 CloudTrail은 필요한 버킷 정책을 생성하고 적용합니다.

    참고

    [No]를 선택한 경우 기존의 S3 버킷을 선택합니다. 버킷 정책은 작성할 수 있는 권한을 CloudTrail에 부여해야 합니다. 버킷 정책의 수동 편집에 대한 자세한 내용은 CloudTrail에 대한 Amazon S3 버킷 정책을 참조하십시오.

  9. [S3 bucket]의 경우 로그 파일 저장을 위해 지정할 버킷의 이름을 입력합니다. 이름은 전역적으로 고유해야 합니다. 자세한 내용은 Amazon S3 버킷 이름 지정 요구 사항 섹션을 참조하십시오.

  10. 고급 설정을 구성하려면 추적에 대한 고급 설정 구성을 참조하십시오. 그렇지 않은 경우 [Create]를 선택합니다.

  11. [Trails] 페이지에 새 추적이 나타납니다. [Trails] 페이지는 계정에 있는 모든 리전의 추적을 보여 줍니다. 약 15분 내에 CloudTrail은 계정에서 발생한 AWS API 호출을 보여 주는 로그 파일을 게시합니다. 지정한 S3 버킷에서 로그 파일을 볼 수 있습니다.

참고

추적을 생성한 후 이름을 바꿀 수 없습니다. 대신에 추적을 삭제한 후 새 추적을 생성할 수 있습니다.

추적에 대한 고급 설정 구성

추적에 대해 다음 설정을 구성할 수 있습니다.

  • 로그 파일을 수신하는 S3 버킷에 대해 로그 파일 접두사를 지정합니다.

  • AWS Key Management Service를 사용하여 로그 파일을 암호화합니다.

  • 로그에 대해 로그 파일 검증을 활성화합니다.

  • 로그 파일이 전송되면 알림을 보내도록 Amazon SNS를 구성합니다.

추적에 대한 고급 설정을 구성하려면

  1. [Storage location]의 경우 [Advanced]를 선택합니다.

  2. [Log file prefix] 필드에 Amazon S3 버킷의 접두사를 입력합니다. 접두사는 버킷 안에 폴더 같은 조직을 생성한 Amazon S3 객체의 URL에 추가할 수 있습니다. 로그 파일이 저장되는 위치는 텍스트 필드 아래에 표시됩니다.

  3. [Encrypt log files]의 경우 AWS KMS가 로그 파일을 암호화하려면 [Yes]를 선택합니다.

  4. [Create a KMS key]의 경우 [Yes]를 선택하여 새 키를 생성하거나 [No]를 선택하여 기존의 키를 사용합니다.

  5. [Yes]를 선택한 경우 [KMS key] 필드에 별칭을 입력합니다. CloudTrail은 키를 사용하여 로그 파일을 암호화하고 정책을 추가합니다.

    참고

    [No]를 선택한 경우 기존의 KMS 키를 선택합니다. 다른 계정에 있는 키의 ARN을 입력할 수도 있습니다. 자세한 내용은 CMK를 사용하도록 추적 업데이트 단원을 참조하십시오. 키 정책은 CloudTrail이 키를 사용하여 로그 파일을 암호화하고 지정한 사용자가 암호화되지 않은 형태로 로그 파일을 읽을 수 있도록 허용해야 합니다. 키 정책의 수동 편집에 대한 자세한 내용은 CloudTrail에 대한 AWS KMS 키 정책을 참조하십시오.

  6. [Enable log file validation]의 경우 [Yes]를 선택하여 로그 다이제스트를 S3 버킷으로 전송합니다. 다이제스트 파일을 사용하여 CloudTrail이 로그 파일을 전송한 후 해당 파일이 변경되지 않았는지 확인할 수 있습니다. 자세한 내용은 CloudTrail 로그 파일 무결성 검증 섹션을 참조하십시오.

  7. [Send SNS notification for every log file delivery]의 경우 로그가 버킷으로 전송될 때마다 알림을 받으려면 [Yes]를 선택합니다. CloudTrail은 로그 파일에 여러 이벤트를 저장합니다. 모든 이벤트가 아니라 모든 로그 파일에 대해 SNS 알림이 전송됩니다.

  8. [Create a SNS topic]의 경우 [Yes]를 선택하여 새 주제를 생성하거나 [No]를 선택하여 기존의 주제를 사용합니다. 모든 리전에 적용되는 추적을 생성하는 경우 모든 리전의 로그 파일 전송에 대한 SNS 알림이 생성한 하나의 SNS 주제로 전송됩니다.

    참고

    [No]를 선택한 경우 기존의 주제를 선택합니다. 다른 리전 또는 적절한 권한이 있는 계정에서 주제의 ARN을 입력할 수도 있습니다. 자세한 내용은 CloudTrail에 대한 Amazon SNS 주제 정책 섹션을 참조하십시오.

  9. [Yes]를 선택한 경우 [SNS topic] 필드에 이름을 입력합니다.

    주제를 생성한 경우 로그 파일 전송에 대한 알림을 받으려면 해당 주제를 구독해야 합니다. Amazon SNS 콘솔에서 구독할 수 있습니다. 알림의 빈도로 인해 Amazon SQS 대기열을 사용하여 알림을 체계적으로 처리하도록 구독을 구성하는 것이 좋습니다. 자세한 내용은 Amazon Simple Notification Service 시작 안내서를 참조하십시오.

  10. Create를 선택합니다.

다음 단계

추적을 생성한 후 추적으로 돌아가 변경할 수 있습니다.

참고

추적을 구성할 때 다른 계정에 속하는 S3 버킷 및 SNS 주제를 선택할 수 있습니다. 하지만 CloudTrail이 CloudWatch Logs 로그 그룹으로 이벤트를 전송하려면 현재 계정에 있는 로그 그룹을 선택해야 합니다.