๐Ÿ”— CloudFront, ALB์™€ ACM ์—ฐ๋™ํ•˜๊ธฐ

ddo-logยท2025๋…„ 8์›” 25์ผ

Cloud

๋ชฉ๋ก ๋ณด๊ธฐ
9/9

TL;DR

  • ACM ์ธ์ฆ์„œ๋Š” CloudFront, ALB(๋กœ๋“œ๋ฐธ๋Ÿฐ์„œ)์™€ ์—ฐ๋™ํ•˜์—ฌ HTTPS๋ฅผ ์ œ๊ณตํ•œ๋‹ค.
  • CloudFront โ†’ ์ „ ์„ธ๊ณ„ CDN ์บ์‹ฑ ๊ณ„์ธต
  • ALB โ†’ ๋ฐฑ์—”๋“œ ํŠธ๋ž˜ํ”ฝ์„ ๋ถ„์‚ฐ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ณ„์ธต
  • ACM โ†’ ๋‘ ๊ณ„์ธต ๋ชจ๋‘์— HTTPS ์ธ์ฆ์„œ๋ฅผ ์ ์šฉ ๊ฐ€๋Šฅ
  • ๊ฒฐ๊ณผ: https://example.com ์œผ๋กœ ์ ‘์† ์‹œ, ์•ˆ์ „ํ•˜๊ฒŒ ์•”ํ˜ธํ™”๋œ ์š”์ฒญ์ด CloudFront โ†’ ALB โ†’ ๋ฐฑ์—”๋“œ๊นŒ์ง€ ์ „๋‹ฌ๋จ.

1. CloudFront + ACM

  • CloudFront ๋ฐฐํฌ ์ƒ์„ฑ ์‹œ, ACM ์ธ์ฆ์„œ๋ฅผ ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ๋‹ค.

  • ACM์€ ๋ฒ„์ง€๋‹ˆ์•„ ๋ถ๋ถ€(us-east-1) ๋ฆฌ์ „์— ๋ฐœ๊ธ‰ํ•ด์•ผ CloudFront์—์„œ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜๋‹ค.

  • ์—ฐ๊ฒฐ ๋ฐฉ์‹:

    1. CloudFront ๋ฐฐํฌ ์ƒ์„ฑ โ†’ ๋„๋ฉ”์ธ ์ด๋ฆ„(custom domain) ์ง€์ •
    2. ACM ์ธ์ฆ์„œ ์„ ํƒ (์˜ˆ: *.example.com)
    3. Route 53์—์„œ CloudFront ๋„๋ฉ”์ธ๊ณผ ๋„๋ฉ”์ธ์„ ๋งคํ•‘

๐Ÿ‘‰ ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด CloudFront๊ฐ€ ์ „ ์„ธ๊ณ„ CDN ์—ฃ์ง€ ์„œ๋ฒ„์—์„œ HTTPS ํ†ต์‹ ์„ ์ œ๊ณตํ•œ๋‹ค.


2. ALB + ACM

  • ALB(Application Load Balancer)๋Š” HTTPS Listener(443 ํฌํŠธ) ๋ฅผ ์ƒ์„ฑํ•  ๋•Œ ACM ์ธ์ฆ์„œ๋ฅผ ์„ ํƒํ•  ์ˆ˜ ์žˆ๋‹ค.

  • ๋™์ž‘ ๋ฐฉ์‹:

    1. ALB โ†’ Listener(443) ์ƒ์„ฑ
    2. ACM ์ธ์ฆ์„œ ์„ ํƒ (์˜ˆ: api.example.com)
    3. Target Group ์—ฐ๊ฒฐ (ECS/EKS Pod ๋“ฑ)

๐Ÿ‘‰ ๊ฒฐ๊ณผ: https://api.example.com ์š”์ฒญ์ด ๋“ค์–ด์˜ค๋ฉด, ALB๊ฐ€ ์ธ์ฆ์„œ๋ฅผ ์ ์šฉํ•ด TLS ์ข…๋ฃŒ(SSL Termination) ํ›„, ๋ฐฑ์—”๋“œ Target Group์œผ๋กœ ํŠธ๋ž˜ํ”ฝ ์ „๋‹ฌ.


3. CloudFront + ALB + ACM ์กฐํ•ฉ

์‹ค์ œ ์„œ๋น„์Šค์—์„œ๋Š” CloudFront + ALB ์กฐํ•ฉ์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ๋‹ค.

ํ๋ฆ„์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค:

์‚ฌ์šฉ์ž โ†’ CloudFront (CDN, HTTPS ์ธ์ฆ์„œ ์ ์šฉ)
         โ†’ ALB (๋กœ๋“œ๋ฐธ๋Ÿฐ์‹ฑ, HTTPS ์ธ์ฆ์„œ ์ ์šฉ ๊ฐ€๋Šฅ)
         โ†’ Target Group (EKS Pod, EC2, Lambda ๋“ฑ)
  • CloudFront ๋ ˆ๋ฒจ์—์„œ ๊ธ€๋กœ๋ฒŒ ์บ์‹ฑ + HTTPS ์ธ์ฆ์„œ ์ ์šฉ
  • ALB ๋ ˆ๋ฒจ์—์„œ ์„œ๋น„์Šค๋ณ„ ๋ผ์šฐํŒ… + HTTPS ์ธ์ฆ์„œ ์ ์šฉ
  • ACM ์ธ์ฆ์„œ๋ฅผ ๋‘ ๊ตฐ๋ฐ ๋‹ค ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์šด์˜ ํ™˜๊ฒฝ์— ๋”ฐ๋ผ ์„ ํƒ

4. ์–ธ์ œ CloudFront vs ALB์—์„œ HTTPS ์ธ์ฆ์„œ๋ฅผ ์“ฐ๋‚˜?

  • CloudFront์—์„œ๋งŒ ์ธ์ฆ์„œ ์ ์šฉ

    • ALB๋Š” ๋‚ด๋ถ€ ํ†ต์‹ ๋งŒ ์ฒ˜๋ฆฌ โ†’ CloudFront๊ฐ€ HTTPS ์ข…๋‹จ์  ์—ญํ• 
    • ์žฅ์ : ์ „ ์„ธ๊ณ„ CDN ์—ฃ์ง€์—์„œ HTTPS ์ œ๊ณต
  • CloudFront + ALB ๋‘˜ ๋‹ค ์ธ์ฆ์„œ ์ ์šฉ

    • CloudFront โ†” ALB ์‚ฌ์ด๋„ HTTPS๋กœ ๋ณด์žฅ (๋ณด์•ˆ ์š”๊ตฌ์‚ฌํ•ญ์ด ๋†’์€ ๊ฒฝ์šฐ)
    • ์žฅ์ : ์ข…๋‹จ ๊ฐ„ ์•”ํ˜ธํ™”(End-to-End TLS) ๊ฐ€๋Šฅ

5. ์ •๋ฆฌ

  • CloudFront + ACM โ†’ ๊ธ€๋กœ๋ฒŒ ์‚ฌ์šฉ์ž์—๊ฒŒ HTTPS ์ œ๊ณต

  • ALB + ACM โ†’ ๋ฐฑ์—”๋“œ ์„œ๋น„์Šค๋กœ ์•ˆ์ „ํ•œ HTTPS ๋ผ์šฐํŒ… ์ œ๊ณต

  • CloudFront + ALB + ACM ์กฐํ•ฉ โ†’ ๊ธ€๋กœ๋ฒŒ CDN + ๋กœ๋“œ๋ฐธ๋Ÿฐ์‹ฑ + ์ข…๋‹จ๊ฐ„ HTTPS ๋ณด์•ˆ

  • ACM ์ธ์ฆ์„œ๋ฅผ ์ž˜ ์„ค๊ณ„ํ•ด๋‘๋ฉด,

    • www.example.com โ†’ CloudFront โ†’ S3(์ •์  ํŒŒ์ผ)
    • api.example.com โ†’ CloudFront โ†’ ALB โ†’ ๋ฐฑ์—”๋“œ
      ๊ฐ™์€ ๊ตฌ์กฐ๋ฅผ ์‰ฝ๊ฒŒ ์šด์˜ํ•  ์ˆ˜ ์žˆ๋‹ค.
profile
Front-End Programmer

0๊ฐœ์˜ ๋Œ“๊ธ€