Network Load Balancer의 액세스 로그 활성화 - Elastic Load Balancing

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

Network Load Balancer의 액세스 로그 활성화

로드 밸런서에 대한 액세스 로그를 활성화할 때는 로드 밸런서가 로그를 저장할 S3 버킷의 이름을 지정해야 합니다. 버킷에 액세스 로그를 쓰는 Elastic Load Balancing 권한을 부여하는 버킷 정책이 이 버킷에 있어야 합니다.

버킷 요구 사항

기존 버킷을 사용하거나 액세스 로그 전용 버킷을 생성할 수 있습니다. 버킷은 다음 요구 사항을 충족해야 합니다.

요구 사항
  • 버킷은 로드 밸런서와 같은 리전에 있어야 합니다. 서로 다른 계정에서 버킷과 로드 밸런서를 소유할 수 있습니다.

  • 지정하는 접두사에는 AWSLogs가 포함되지 않아야 합니다. AWSLogs로 시작하는 파일 이름의 일부가 지정하는 버킷 이름과 접두사 뒤에 추가됩니다.

  • 버킷에 대한 액세스 로그 쓰기 권한을 부여하는 버킷 정책이 이 버킷에 있어야 합니다. 버킷 정책은 버킷에 대한 액세스 권한을 정의하기 위해 액세스 정책 언어로 작성된 JSON 문 모음입니다.

버킷 정책 예제

다음은 예제 정책입니다. Resource 요소의 경우를 바꿉니다.amzn-s3-demo-destination-bucket 액세스 로그에 대한 S3 버킷의 이름을 사용합니다. 를 생략해야 합니다.Prefix/ 버킷 접두사를 사용하지 않는 경우 의 경우 로드 밸런서를 사용하여 AWS 계정의 ID를 aws:SourceAccount지정합니다. 의 경우 aws:SourceArn바꾸기 region and 012345678912 로드 밸런서의 리전 및 계정 ID를 각각 사용합니다.

{ "Version": "2012-10-17", "Id": "AWSLogDeliveryWrite", "Statement": [ { "Sid": "AWSLogDeliveryAclCheck", "Effect": "Allow", "Principal": { "Service": "delivery.logs.amazonaws.com" }, "Action": "s3:GetBucketAcl", "Resource": "arn:aws:s3:::amzn-s3-demo-destination-bucket", "Condition": { "StringEquals": { "aws:SourceAccount": ["012345678912"] }, "ArnLike": { "aws:SourceArn": ["arn:aws:logs:region:012345678912:*"] } } }, { "Sid": "AWSLogDeliveryWrite", "Effect": "Allow", "Principal": { "Service": "delivery.logs.amazonaws.com" }, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::amzn-s3-demo-destination-bucket/Prefix/AWSLogs/account-ID/*", "Condition": { "StringEquals": { "s3:x-amz-acl": "bucket-owner-full-control", "aws:SourceAccount": ["012345678912"] }, "ArnLike": { "aws:SourceArn": ["arn:aws:logs:region:012345678912:*"] } } } ] }
암호화(Encryption)

다음 방법 중 하나를 사용하여 Amazon S3 액세스 로그 버킷에 대해 서버 측 암호화를 활성화할 수 있습니다.

  • Amazon S3-Managed 키(SSE-S3)

  • AWS KMS AWS Key Management Service (SSE-KMS) †에 저장된 키

† Network Load Balancer 액세스 로그에서는 AWS 관리형 키를 사용할 수 없으며 고객 관리형 키를 사용해야 합니다.

자세한 내용은 Amazon S3 사용 설명서의 Amazon S3 암호화 지정(SSE-S3)AWS KMS (SSE-KMS)를 사용한 서버 측 암호화 지정을 참조하세요. Amazon S3

키 정책은 서비스가 로그를 암호화하고 해독할 수 있도록 허용해야 합니다. 다음은 예제 정책입니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "delivery.logs.amazonaws.com" }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*" } ] }

액세스 로그 구성

요청 정보를 캡처하고 로그 파일을 S3 버킷에 전송하도록 다음과 같은 절차에 따라 액세스 로그를 구성합니다.

콘솔을 이용하여 액세스 로그를 활성화하려면
  1. https://console.aws.amazon.com/ec2/에서 Amazon EC2 콘솔을 엽니다.

  2. 탐색 창에서 로드 밸런서를 선택합니다.

  3. 로드 밸런서 이름을 선택하여 세부 정보 페이지를 엽니다.

  4. 속성성(Attributes) 탭에서 편집(Edit)을 선택합니다.

  5. [Edit load balancer attributes] 페이지에서 다음 작업을 수행합니다.

    1. 모니터링에서 액세스 로그를 켭니다.

    2. S3 찾아보기를 선택하고 사용할 버킷을 선택합니다. 또는 접두사를 포함하여 S3 버킷의 위치를 입력합니다.

    3. Save changes(변경 사항 저장)를 선택합니다.

를 사용하여 액세스 로깅을 활성화하려면 AWS CLI

modify-load-balancer-attributes 명령을 사용합니다.