2020. 3. 30. 14:45ㆍAWS
ㅇ CloudTrail?
> AWS 계정의 관리, 규정 준수 및 운영 및 위험 감사를 지원하는 AWS 서비스
> 사용자의 활동을 모니터링하고 로그를 저장 가능
ㅇ CloudTrail 생성
> [CloudTrail 서비스] - [대시보드] - [추적 생성] 선택
> 추적 이름 기입 및 이벤트 선택
* 이벤트 읽기/쓰기: 읽기 전용/ 쓰기 전용 / 읽기 및 쓰기 전용 이벤트에 대한 로그 기록
읽기: 리소스를 읽지만 변경하지 않는 API 작업
ex) EC2 Describe Sercurity Groups, EC2 Describe Subnets 등..
쓰기: 리소스를 수정하는 API 작업
ex) EC2 Run Instances / EC2 Terminate Instances 등..
* KMS: 인증서 / 키 관리해주는 서비스
* Insights 이벤트: 비정상적인 쓰기 관리 API 활동 감지 시, Insight 이벤트를 생성하여 표기
> CloudTrail에 대한 로그가 기록 될 S3를 기존에 있던 S3로 대체하거나 새로 생성
> 이후 [CloudTrail 서비스] - [추적]에서 앞서 생성한 CloudTrail을 확인 가능하고, 해당 로그가 기록 될 S3 버킷 이름도 기입됨을 확인 가능
ㅇ 로그 확인
> [S3 서비스] - [생성한 버킷] 선택
> 해당 버킷 내부에 "AWSLogs"라는 파일 생성됨을 확인 가능
> [버킷] - [AWSLogs] - [계정 ID] - [CloudTrail] - [리전] - [연도] - [월] - [일]을 따라 경로를 이동하면, 해당 날짜의 로그가 기로고딘 json.gz 파일이 존재
> 해당 파일을 [열기]를 선택하면 로그 확인 가능
* 로그는 세세하게 읽기 전에는 확인이 힘들 정도로 불친절하게 기록되는데, 이를 보다 편하게 읽기 위해 AWS 서비스 중 Athena라는 서비스를 사용
ㅇ CloudTrail 스키마
type: user Identity이벤트를 트리거한 유형
userIdentity: 요청을 생성한 사용자 또는 역할의 ARN
eventSource: 요청 된 서비스
eventTime: 이벤트가 발생한 시간
awsRegion: 이벤트가 발생한 지역
eventName: 이벤트 이름
sourceIPAddress: 요청한 IP 주소
userAgent: 호출 방법 (ex : SDK, CLI, 콘솔)
errorCode: 오류 코드
errorMessage: 오류에 대한 자세한 내용
requestParameters: 요청한 모든 매개 변수 서비스 및 API
responseElements: 변경하는 행동에 대한 응답
additionalEventData: 이벤트에 대한 추가 데이터
requestID: 특수 요청을 식별하는 값
eventType: AwsApiCall이벤트 AwsServiceEvent생성, 서비스 생성 또는 IAM 사용자 생성 여부 표시
apiVersion: AwsApiCall이벤트를 생성 한 이벤트 가있는 경우 API apiVersion 식별
readOnly: 작업이 읽기 전용인지 판별
resources: 이벤트에 연결된 모든 자원
recipientAccountId: 이벤트를 받은 계정
serviceEventDetails: 이벤트 트리거 및 결과에 대한 데이터를 포함
sharedEventID: CloudTrail 이벤트가 여러 계정으로 전달되면 계정간에 데이터를 연결하는 고유한 방법으로 표시
vpcEndpointId: VPC에서 다른 AWS 서비스로 요청한 경우 VPC 엔드 포인트
'AWS' 카테고리의 다른 글
[AWS CloudWatch] 14-2. CloudWatch (0) | 2020.04.01 |
---|---|
[AWS SNS] 14-1. SNS (0) | 2020.03.31 |
[AWS VPC] 12. VPC & S3간 Endpoint 통신 (0) | 2020.03.27 |
[AWS IAM] 11-3. 계정 및 리소스 보호(2) (0) | 2020.03.26 |
[AWS IAM] 11-2. 계정 및 리소스 보호(1) (0) | 2020.03.25 |