AWS

다운로드 186
업데이트 2024. 2. 21.

설치 매뉴얼

AWS IAM 정책 설정

AWS API를 호출하려면 먼저 AWS IAM 정책과 계정을 설정해야 합니다.

단계 1: 정책 JSON 입력

아래 JSON 파일을 복사하여 IAM 정책을 생성합니다. 아래 정책은 읽기 전용 권한만 존재하지만 대상이 전체 리소스로 되어있으므로, 로그프레소가 읽기 가능한 클라우드 리소스 범위를 제한하시기 바랍니다. 확장 명령어 매뉴얼에 각각 필요 권한이 명시되어 있으므로, 사용하지 않는 AWS 서비스에 대한 권한은 삭제하셔도 됩니다.

AWS IAM 정책 추가

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": [
                "ce:GetCostAndUsage",
                "acm:DescribeCertificate",
                "acm:ListCertificates",
                "ec2:DescribeVpcs",
                "ec2:DescribeInstances",
                "ec2:DescribeAddresses",
                "ec2:DescribeSnapshots",
                "ec2:DescribeVolumeStatus",
                "ec2:DescribeVolumes",
                "ec2:DescribeAccountAttributes",
                "ec2:DescribeKeyPairs",
                "ec2:DescribeNetworkAcls",
                "ec2:DescribeVpnConnections",
                "ec2:DescribeNatGateways",
                "ec2:DescribeSecurityGroups",
                "ec2:DescribeSubnets",
                "ec2:DescribeRouteTables",
                "ec2:DescribeInstanceStatus",
                "ec2:DescribeImages",
                "autoscaling:DescribeAutoScalingGroups",
                "cloudwatch:GetMetricData",
                "cloudwatch:ListMetrics",
                "logs:DescribeLogGroups",
                "iam:ListPolicies",
                "iam:ListRoles",
                "iam:ListUsers",
                "iam:ListMFADevices",
                "iam:ListAccessKeys",
                "iam:GenerateCredentialReport",
                "iam:GetCredentialReport",
                "iam:ListVirtualMFADevices",
                "iam:ListServerCertificates",
                "elasticbeanstalk:DescribeEnvironments",
                "elasticbeanstalk:DescribeInstancesHealth",
                "elasticbeanstalk:DescribeApplications",
                "elasticloadbalancing:DescribeLoadBalancers",
                "elasticloadbalancing:DescribeTargetHealth",
                "elasticloadbalancing:DescribeLoadBalancerAttributes",
                "elasticloadbalancing:DescribeTargetGroups",
                "rds:DescribeEvents",
                "rds:DescribeDBLogFiles",
                "rds:DownloadDBLogFilePortion",
                "s3:ListAllMyBuckets",
                "s3:ListBucket",
                "s3:GetObject",
                "s3:GetBucketAcl",
                "s3:GetBucketLocation",
                "route53:ListHostedZones"
            ],
            "Resource": "*"
        }
    ]
}

ECR 쿼리 명령어를 사용하려면 아래 권한이 추가로 필요합니다:

{
	"Version": "2012-10-17",
	"Statement": [
		{
			"Sid": "VisualEditor0",
			"Effect": "Allow",
			"Action": [
				"ecr:DescribeImageScanFindings",
				"ecr:DescribeRegistry",
				"ecr:GetAuthorizationToken",
				"ecr:ListImages",
				"ecr:GetRegistryScanningConfiguration",
				"ecr:BatchGetImage",
				"ecr:DescribeImages",
				"ecr:DescribeRepositories",
				"ecr:GetRepositoryPolicy",
				"inspector2:ListCoverageStatistics",
				"inspector2:ListFindings",
				"inspector2:ListFindingAggregations",
				"inspector2:ListCoverage",
				"inspector2:GetFindingsReportStatus",
				"inspector:ListFindings",
				"inspector:DescribeFindings"
			],
			"Resource": "*"
		}
	]
}

단계 2: 정책 태그 추가

태그는 필요한 경우에만 설정하고 그냥 건너뛰어도 됩니다.

IAM 정책 태그 추가

단계 3: 정책 검토

JSON에 따라 읽기만으로 정책이 구성된 것을 확인하고 정책 생성을 클릭합니다.

IAM 정책 검토

IAM 사용자 추가

단계 1: 사용자 이름 및 액세스 유형 설정

IAM 사용자 이름 및 액세스 유형 설정

단계 2: IAM 정책 연결

기존 정책 직접 연결을 클릭하고 방금 생성한 logpresso 정책을 선택한 후 다음 버튼을 클릭합니다.

IAM 정책 연결

단계 3: 사용자 태그 설정

태그는 필요한 경우에만 설정하고 그냥 건너뛰어도 됩니다.

IAM 사용자 태그 설정

단계 4: 사용자 생성 검토

설정 내역을 확인하고 사용자 만들기 버튼을 클릭합니다.

IAM 사용자 생성 검토

단계 5: 액세스 키 복사

액세스 키 ID와 비밀 액세스 키를 복사하여 안전한 곳에 보관합니다. 이 단계를 지나가면 액세스 키를 확인할 수 없으므로 주의하세요.

액세스 키 복사

로그프레소 접속 프로파일 설정

AWS 앱을 설치하여 실행하고 설정의 접속 프로파일 메뉴로 이동합니다.

단계 1: AWS 접속 프로파일 설정

방금 생성한 AWS 자격 증명을 복사하여 설정합니다.

  • 타입: 액세스 키
  • 클라이언트 리전: ap-northeast-2 등 API 접속을 허용할 리전 (쉼표 구분)
  • 액세스 키 ID: AKIA로 시작하는 액세스 키
  • 비밀 액세스 키: 이전 단계에서 복사한 암호

AWS 접속 프로파일 설정

이 단계가 완료되면 AWS 확장 명령어를 사용할 준비가 완료됩니다.

단계 2: AWS CloudTrail 로그 수집 설정

AWS CloudTrail 로그 수집 설정

수집기 추가 화면에서 AWS CloudTrail 수집 모델을 선택하고, 테이블에 AWS_CLOUDTRAIL을 입력합니다. 세부 설정은 아래와 같이 입력합니다:

  • S3 버킷 리전: AWS CloudTrail 로그를 저장한 S3 버킷이 속한 리전. 서울 리전인 경우 ap-northeast-2 입력.
  • S3 버킷 이름: AWS CloudTrail 로그를 저장한 S3 버킷 이름
  • 대상 기간: 수집 대상 로그의 기간 범위
  • AWS 프로파일: AWS 접속 프로파일 이름. 이전 설정 단계의 접속 프로파일 식별자 aws 입력

단계 3: AWS WAF 로그 수집 설정

AWS WAF S3 로그 기록 설정

AWS WAF 콘솔의 Web ACLs > Logging and metrics 메뉴에서 S3 버킷 로그 기록을 설정합니다.

AWS WAF 로그 수집 설정

로그프레소의 수집기 추가 화면에서 AWS WAF 수집 모델을 선택하고, 테이블에 AWS_WAF_ 로 시작하는 이름을 입력합니다. 세부 설정은 아래와 같이 입력합니다:

  • S3 버킷 리전: AWS WAF 로그를 저장한 S3 버킷이 속한 리전. 서울 리전인 경우 ap-northeast-2 입력.
  • S3 버킷 이름: AWS WAF 로그를 저장한 S3 버킷 이름
  • WAF ACL 이름: 웹 액세스 제어 목록 이름
  • 대상 기간: 수집 대상 로그의 기간 범위
  • AWS 프로파일: AWS 접속 프로파일 이름. 이전 설정 단계의 접속 프로파일 식별자 aws 입력

단계 4: AWS GuardDuty 로그 수집 설정

AWS GuardDuty 로그 수집 설정

수집기 추가 화면에서 AWS GuardDuty 수집 모델을 선택하고, 테이블에 AWS_GUARDDUTY를 입력합니다. 세부 설정은 아래와 같이 입력합니다:

  • S3 버킷 리전: AWS GuardDuty 로그를 저장한 S3 버킷이 속한 리전. 서울 리전인 경우 ap-northeast-2 입력.
  • S3 버킷 이름: AWS GuardDuty 로그를 저장한 S3 버킷 이름
  • 대상 기간: 수집 대상 로그의 기간 범위
  • AWS 프로파일: AWS 접속 프로파일 이름. 이전 설정 단계의 접속 프로파일 식별자 aws 입력

단계 5: AWS ALB 로그 수집 설정

AWS 로드밸런서의 속성 탭에서 액세스 로그를 활성화하고 S3 버킷에 저장할 수 있습니다. AWS ALB 수집기는 S3 버킷에 저장된 액세스 로그를 수집합니다.

AWS ALB 로그 수집 설정

수집기 추가 화면에서 AWS ALB 수집 모델을 선택하고, 테이블에 AWS_ALB_로 시작하는 이름을 입력합니다. 세부 설정은 아래와 같이 입력합니다:

  • S3 버킷 리전: AWS ALB 로그를 저장한 S3 버킷이 속한 리전. 서울 리전인 경우 ap-northeast-2 입력.
  • S3 버킷 이름: AWS ALB 로그를 저장한 S3 버킷 이름
  • 대상 기간: 수집 대상 로그의 기간 범위
  • AWS 프로파일: AWS 접속 프로파일 이름. 이전 설정 단계의 접속 프로파일 식별자 aws 입력

마무리

이제 모든 설치 작업이 완료되었습니다. 수집 메뉴에서 데이터가 잘 수집되는지 확인하고, 대시보드로 이동하세요!