본문 바로가기

Compute/Lambda

AWS Lambda를 이용하여 Security Group 자동 제어

이번 블로그는 AWS의 How to Automatically Update Your Security Group .. AWS Lambda 블로깅 테스트 후기?

 

참고

 

How to Automatically Update Your Security Groups for Amazon CloudFront and AWS WAF by Using AWS Lambda | Amazon Web Services

Update on June 14, 2018: We removed an out-of-date code sample. Update on August 23, 2018: We revised the “Configure your Lambda function’s trigger” procedure. Amazon CloudFront can help you increase the performance of your web applications and significant

aws.amazon.com

 

AWS가 사용하고 있는 IP-Range는 약 ipv6 포함 약 800 여개가 있다. 결제 혹은 CloudFront 연동 등 여러 이유로 해당 IP-Range를 확인하고 방화벽을 수동으로 작업하는 것은 거의 불가능하다. 

 

참고

 

AWS IP 주소 범위 - AWS 일반 참조

AWS IP 주소 범위 Amazon Web Services(AWS)는 현재 IP 주소 범위를 JSON 형식으로 게시합니다. 현재 범위를 보려면 .json 파일을 다운로드합니다. 기록을 유지하려면 연속 버전의 .json 파일을 시스템에 저장합니다. 파일을 마지막으로 저장한 이후에 변경 사항이 있는지 확인하려면 현재 파일의 게시 시간을 마지막으로 저장한 파일의 게시 시간과 비교합니다. 다운로드 ip-ranges.json을 다운로드합니다. 이 파일에 프로그래밍

docs.aws.amazon.com

 

따라서 AWS에서는 아래와 같은 형태의 자동화 된 방화벽 업데이트 방법을 블로그에 게시했음.

1-2. AWS IP Range가 변경되면 AWS에서 관리하는 SNS Topic(AmazonIpSpaceChanged)에 Publishing

2-3. Client SNS의 Subscriptions은 해당 Topic의 메시지를 받고 Lambda로 트리거

3-5. Lambda는 해당 메시지를 확인하고, Security Group API를 통해 IP-Range를 업데이트

실제 약 1~5 과정은 약 30초 정도 소요된다.

 

블로그에 친절하게 설명되어 있어 어려움 없이 테스트를 진행할 수 있었다. 해당 내용을 토대로 AWS Security Group 뿐 아니라 IDC의 방화벽도 적용 가능하다.