Claude에게 파라미터 시트를 넣고 AWS WAF를 생성해봤습니다

Claude에게 파라미터 시트를 넣고 AWS WAF를 생성해봤습니다

Claude에게 파라미터 시트를 넣고 AWS WAF를 생성해봤습니다
2026.05.21

안녕하세요 클래스메소드 김재욱(Kim Jaewook) 입니다. 이번 블로그에서는 Claude에게 파라미터 시트를 넣고 AWS WAF를 생성해봤습니다.

Claude에 파라미터 시트를 넣은 이유?

기존에는 CloudFormation 템플릿을 활용하면 비교적 쉽게 AWS WAF를 구성할 수 있었습니다. 하지만 문득 이런 궁금증이 생겼습니다.

과연 Claude는 단순한 파라미터 시트만으로 어디까지 CloudFormation 코드를 생성할 수 있을까? 그리고 이미 사용 중인 템플릿이나 기존 코드 구조를 크게 해치지 않으면서도 원하는 설정을 반영해 줄 수 있을까? 하는 점이었습니다.

단순히 코드를 새로 생성하는 수준이 아니라, 실무에서 사용하는 기존 템플릿 스타일과 구조를 최대한 유지하면서 필요한 설정만 자연스럽게 추가해 줄 수 있는지가 궁금했습니다.

사용한 파라미터 시트

Web ACL 파라미터

기본 설정

항목 설정값 비고
Name (이름) xxxxxxx-prd-alb-webacl
Description (설명) webacl for xxxxxxx-prd-alb
CloudWatch metric name xxxxxxx-prd-alb-webacl
Resource type (적용 리소스 타입) REGIONAL
Region (리전) ap-northeast-1
Associated AWS resources (연관 AWS 리소스) xxxxxxx-prd-alb ALB
액세스 로그 S3 버킷명 aws-waf-logs-xxxxxxx-prd-s3 로그 보존 기간 365일

적용 룰 목록

No 룰 (그룹)명 룰 종류 설명 비고
1 AWSManagedRulesCommonRuleSet AWS 매니지드 웹 애플리케이션에 일반적으로 적용 가능한 룰 WCU: 700
2 AWSManagedRulesAmazonIpReputationList AWS 매니지드 Amazon 내부 위협 인텔리전스에 기반한 룰 WCU: 25
3 AWSManagedRulesSQLiRuleSet AWS 매니지드 SQL 인젝션 공격 등 SQL 데이터베이스 악용과 관련된 요청 패턴을 차단하는 룰 WCU: 200
4 AWSManagedRulesKnownBadInputsRuleSet AWS 매니지드 무효임이 확인되었으며 취약점 악용 또는 탐지와 관련된 요청 패턴을 차단하는 룰 WCU: 200
5 AWSManagedRulesLinuxRuleSet AWS 매니지드 LFI 공격 등 Linux 고유의 취약점 악용과 관련된 요청 패턴을 차단하는 룰 WCU: 200
6 AWSManagedRulesPHPRuleSet AWS 매니지드 안전하지 않은 PHP 함수 삽입 등 PHP 고유의 취약점 악용과 관련된 요청 패턴을 차단하는 룰 WCU: 100

전체 매니지드 룰 목록

No 룰명 설명 비고
1 Core Rule Set 일반적인 웹 애플리케이션에 적용되는 룰. OWASP 및 CVE에 기재된 광범위한 취약점 악용에 대한 보호 제공 WCU: 700
2 Admin Protection 공개된 관리 페이지에 대한 외부 접근을 차단. 관리 접근 권한 취득 리스크 경감 WCU: 100
3 Known Bad Inputs 취약점 악용 또는 탐지와 관련된 무효 요청 패턴을 차단. 악의적인 공격자가 취약한 애플리케이션을 탐지하는 리스크 경감 WCU: 200
4 SQL Database SQL 인젝션 공격 등 SQL 데이터베이스 악용과 관련된 요청 패턴을 차단. 불법 쿼리의 원격 삽입 방지 WCU: 200
5 Linux Operating System LFI 공격 등 Linux 고유의 취약점 악용과 관련된 요청 패턴을 차단. 파일 내용 노출 및 불법 코드 실행 방지 WCU: 200
6 POSIX Operating System LFI 공격을 포함한 POSIX/POSIX 계열 OS 고유의 취약점 악용과 관련된 요청 패턴을 차단. 파일 내용 노출 및 불법 코드 실행 방지 WCU: 100
7 Windows Operating System PowerShell 명령 등 Windows 고유의 취약점 악용과 관련된 요청 패턴을 차단. 불법 명령 및 악성 코드 실행 방지 WCU: 200
8 PHP Application 안전하지 않은 PHP 함수 삽입 등 PHP 고유의 취약점 악용과 관련된 요청 패턴을 차단. 원격 코드 실행 익스플로잇 방지 WCU: 100
9 WordPress Application WordPress 고유의 취약점 악용과 관련된 요청 패턴을 차단 WCU: 100
10 Amazon IP Reputation Amazon의 위협 인텔리전스에 기반한 룰. 봇 및 기타 위협과 관련된 소스를 차단 WCU: 25
11 Anonymous IP list VPN, 프록시, Tor 노드 등 열람자의 신원을 난독화하는 서비스로부터의 요청을 차단하는 룰 WCU: 50

CloudFormation 템플릿

템플릿 예시는 ParametersSystemNameEnvName과 같은 반복되는 구간이나 하드 코딩이 필요한 부분을 최대한 줄이고자 파라미터를 정의했습니다.

그 외에는 변수 명을 포함해서 제가 평소 사용하는 스타일을 그대로 Claude에게 넣어줄 생각입니다.

Parameters:
  SystemName :
    Description: "System name of each resource names."
    Type: String
    Default: "gr"
  EnvName:
    Description: "Environment name of each resource names."
    Type: String
    Default: "product"
  Ec2InstanceId:
    Description: Ec2 InstanceId
    Type: AWS::EC2::Instance::Id

Claude 프롬프트

이제 실제로 Claude에게 전달할 프롬프트를 작성해봤습니다.

이번 실험의 핵심은 단순히 AWS WAF 만들어줘가 아니라, 제가 사용하는 CloudFormation 스타일과 네이밍 규칙을 최대한 유지하면서 파라미터 시트 기반으로 리소스를 생성할 수 있는지를 확인하는 것이었습니다.

특히 아래와 같은 부분을 중점적으로 요청했습니다.

  • 기존 CloudFormation 스타일 유지
  • Parameters 적극 활용
  • 하드코딩 최소화
  • AWS Managed Rule 기반으로 Web ACL 생성
  • Logging Configuration 포함
  • ALB 연동 고려
  • 가독성을 위한 YAML 형식 유지

실제로 사용한 프롬프트는 아래와 같습니다.

당신은 AWS CloudFormation 및 AWS WAF 구축 경험이 풍부한 클라우드 엔지니어입니다.

아래 조건에 맞춰 AWS WAF Web ACL을 생성하는 CloudFormation YAML 템플릿을 작성해주세요.

* 요구사항

- 기존 CloudFormation 스타일을 최대한 유지할 것
- Parameters를 적극 활용할 것
- 리소스 이름은 `${SystemName}-${EnvName}` 형식 기반으로 작성
- AWS WAF v2 사용
- Scope는 REGIONAL
- ALB 연결 가능하도록 구성
- LoggingConfiguration 포함
- YAML 형식으로 출력
- 불필요한 설명 제외
- 주석은 필요한 경우만 추가

그리고 기존 CloudFormation 템플릿과 파라미터 시트를 함께 Claude에게 전달하면 준비는 끝입니다.

이번 테스트에서는 일부러 복잡한 설명을 길게 작성하지 않았습니다. 대신 실제 실무에서 사용하는 파라미터 시트 형태와 기존 템플릿 스타일을 그대로 제공해, Claude가 어느 정도까지 문맥을 이해하고 CloudFormation 구조를 유지할 수 있는지를 확인하는 데 집중했습니다.

특히 기대했던 부분은 다음과 같았습니다.

  • 기존 네이밍 규칙 유지 여부
  • Parameters 기반으로 동적으로 치환하는 방식 유지 여부
  • AWS WAF Managed Rule 구성을 올바르게 생성하는지
  • LoggingConfiguration까지 자연스럽게 포함하는지
  • 불필요한 리소스 생성 없이 필요한 구성만 출력하는지

결과

결과적으로 Claude는 기존 스타일을 크게 해치지 않은 상태에서 CloudFormation 코드를 생성해 주었고, 파라미터 시트에 작성한 내용 그대로 AWS WAF 규칙이 적용된 것도 확인할 수 있었습니다.

image1

특히 인상적이었던 부분은 단순히 Web ACL만 생성하는 수준이 아니라, 제가 전달한 네이밍 규칙과 Parameters 구조를 그대로 반영해 템플릿을 구성했다는 점입니다.

또한 파라미터 시트에는 로그 저장용 S3 버킷 정보만 간단하게 기재했는데, 이를 기반으로 WAF Logging Configuration까지 자연스럽게 구현해 주었습니다.

image2

물론 실제 운영 환경에 바로 적용하기 위해서는 추가 검증이 필요합니다. 예를 들어 다음과 같은 부분은 반드시 사람이 최종 확인해야 합니다.

  • 규칙 우선순위(Priority) 충돌 여부
  • Count / Block 동작 검토
  • 리소스 ARN 참조 방식
  • Logging 대상 및 권한 정책
  • 기존 Web ACL과의 호환성
  • WCU 총량 검토

그럼에도 불구하고 파라미터 시트 기반으로 초안 수준의 IaC를 얼마나 빠르게 만들 수 있는가?라는 관점에서는 기대 이상으로 완성도가 높았습니다.

특히 반복적으로 생성하는 보안 리소스나 표준화된 인프라 구성에서는 생성형 AI를 활용한 IaC 작성 방식이 꽤 실용적일 수도 있겠다는 생각이 들었습니다.

마무리

이번에는 Claude에게 단순한 파라미터 시트와 기존 CloudFormation 스타일만 전달한 뒤, 실제로 어느 정도 수준까지 AWS WAF를 생성할 수 있는지 테스트해봤습니다.

처음에는 단순히 코드를 생성해 주는 수준이겠지 정도로 생각했지만, 예상보다 훨씬 자연스럽게 기존 템플릿 구조와 스타일을 유지하면서 필요한 리소스를 구성해 주는 모습을 확인할 수 있었습니다.

특히 인상적이었던 부분은 다음과 같습니다.

  • Parameters 기반 구조 유지
  • 기존 네이밍 규칙 반영
  • AWS Managed Rule 자동 구성
  • LoggingConfiguration 생성
  • YAML 스타일 유지
  • 불필요한 리소스 최소화

단순히 예제 코드를 출력하는 것이 아니라, 기존에 사용하던 IaC 스타일을 어느 정도 이해하고 이어서 작성한다는 느낌이 강했습니다.

물론 아직은 생성된 코드를 그대로 운영 환경에 적용하기에는 조심해야 할 부분도 많습니다. WAF와 같은 보안 리소스는 잘못 구성될 경우 정상 트래픽 차단이나 운영 장애로 이어질 수 있기 때문에, 최종 검증 과정은 반드시 필요합니다.

예를 들어 아래와 같은 부분은 꼭 직접 확인해야 합니다.

  • Rule Priority 충돌 여부
  • Count / Block 설정 검토
  • 예외 처리 필요 여부
  • 기존 서비스와의 충돌 가능성
  • Logging 권한 및 저장 정책
  • WCU 한도 초과 여부
  • ALB Association 정상 여부

또한 Claude가 생성한 코드가 항상 베스트 프랙티스라고 보기도 어렵습니다.
특정 리소스 속성이 누락되거나, 조직 내 운영 규칙과 맞지 않는 설정이 포함될 가능성도 충분히 있습니다.

하지만 이번 테스트를 통해 느낀 점은, 생성형 AI가 단순 코드 자동완성 수준을 넘어 IaC 초안 작성 도구로는 꽤 높은 활용 가능성을 가지고 있다는 점이었습니다.

특히 아래와 같은 상황에서는 상당히 유용할 것으로 보입니다.

  • 반복적으로 생성하는 AWS 리소스
  • 표준화된 보안 구성
  • 신규 프로젝트 초기 템플릿 작성
  • 운영 가이드 기반 IaC 생성
  • Terraform / CloudFormation 변환 초안 작성
  • 매니지드 룰 조합 테스트
  • 빠른 PoC 환경 구성

개인적으로는 앞으로 사람이 모든 코드를 처음부터 작성하는 방식보다는, AI가 초안을 생성하고 사람이 검증 및 수정하는 형태가 점점 많아질 것 같다는 생각이 들었습니다.

특히 인프라 엔지니어 입장에서는 반복 작업을 줄이고, 리뷰와 아키텍처 설계에 더 많은 시간을 사용할 수 있다는 점에서 충분히 매력적인 변화라고 느껴졌습니다.

생성형 AI가 인프라 영역에서 어디까지 실무적으로 활용될 수 있을지는 아직 더 검증이 필요하겠지만, 적어도 파라미터 시트 기반 IaC 초안 생성 수준에서는 이미 충분히 실용적인 단계까지 왔다는 것을 체감할 수 있었습니다.


生成AI活用はクラスメソッドにお任せ

過去に支援してきた生成AIの支援実績100+を元にホワイトペーパーを作成しました。御社が抱えている課題のうち、どれが解決できて、どのようなサービスが受けられるのか?4つのフェーズに分けてまとめています。どうぞお気軽にご覧ください。

生成AI資料イメージ

無料でダウンロードする

この記事をシェアする