[AWS][CloudTrail][Cloudwatch] IP 기준으로 로그 추출하기
문의 사항
안녕하세요?
cloudtrail 과 cloudwatch 로그 점검을 하는 방법을 알려 주세요
기준은 허가된 IP 와 허가되지 않은 IP 로 검색 할 수 있으면 좋을거 같습니다.
답변
안녕하세요.
GS네오텍 고 윤영 입니다.
Cloudtrail 의 경우 콘솔 자체에서는 IP 기준으로 데이터를 뽑기가 불가능합니다.
따라서 데이터를 우선 별도로 export 해야 하는데
1. 해당 데이터를 우측 상단의 이벤트 다운로드 기능을 사용하여 CSV, Json 파일로 다운로드 받기
2. Cloudtrail 의 데이터를 추적하여 S3 및 cloudwatch log 로 저장하는 방법
https://docs.aws.amazon.com/ko_kr/awscloudtrail/latest/userguide/cloudtrail-create-a-trail-using-the-console-first-time.html
두 가지가 있습니다.
이후 데이터를 분석하기 위해서는
1번의 경우는
별도의 프로그램(엑셀 등)을 사용하여 sourceIPAddress 필드를 기준으로 데이터를 뽑는 방식으로 진행하셔야 하며
2번의 경우
S3 로 저장한 데이터를 기반으로 Athena 테이블을 생성하여 쿼리를 통해 조회하는 방법,
https://docs.aws.amazon.com/ko_kr/athena/latest/ug/cloudtrail-logs.html#create-cloudtrail-table-ct
쿼리 예제
SELECT *
FROM "kyytest"."cloudtrail_logs_bucket"
WHERE sourceIPAddress='10.3.101.154' or sourceIPAddress='10.3.101.114';
Cloudwatch log group 에 저장된 데이터를 기반으로 CloudWatch Logs Insight 에서 쿼리를 통해 조회하는 방법이 있습니다.
쿼리 예제
filter sourceIPAddress="10.3.101.154" or sourceIPAddress="10.3.101.114"
Athena 와 Logs Insight 모두 쿼리 이후 조회된 데이터는 결과 값 우측 상단의 결과 다운로드 또는 내보내기를 통해 내려받을 수 있으니 참고 부탁 드립니다.
감사합니다.