Amazon Cloud/VPC

[AWS] ๐Ÿ“š VPC ๊ฐœ๋… & ์‚ฌ์šฉ - ๋ณด์•ˆ ์„ค์ • [Security Group / NACL]

์ธํŒŒ_ 2022. 4. 21. 09:54

vpc-Security-Group-NACL

VPC ๋ฐฉํ™”๋ฒฝ [Security Group / NACL]

์ด๋ฒˆ์—” VPC์˜ ํŠธ๋ž˜ํ”ฝ์„ ํ†ต์ œํ•˜๊ณ  ์ œ์–ดํ•˜๋Š” ์„œ๋น„์Šค๋“ค์„ ์‚ดํŽด๋ณด์ž.

์ด ์„œ๋น„์Šค๋“ค์€ ํ”ํžˆ ํŠน์ • IP๋ฅผ ๋ฐด ํ•œ๋‹ค๊ฑฐ๋‚˜ ์™ธ๊ตญ์—์„œ๋Š” ์ ‘์†์„ ๋ชปํ•˜๊ฒŒ ํ•œ๋‹ค๊ฑฐ๋‚˜ ๋“ฑ ์ด๋Ÿฌํ•œ ๋ฐฉํ™”๋ฒฝ ์„ค์ •์„ ํ•œ๋‹ค๊ณ  ๋ณด๋ฉด ๋œ๋‹ค.

๋Œ€ํ‘œ์ ์œผ๋กœ 2๊ฐ€์ง€ ์„œ๋น„์Šค๊ฐ€ ์žˆ๋Š”๋ฐ, ๋ฐ”๋กœ ์ด๋ฒˆ์— ๋ฐฐ์šธ Security Group / Network ACL ์ด๋‹ค.

์ต์ˆ™ํ•ด์ง€๋ฉด ๋งค์šฐ ํŽธ๋ฆฌํ•œ ์„œ๋น„์Šค์ด์ง€๋งŒ ์ฒ˜์Œ ๋ฐฐ์šธ๋• ๋‚œ์ด๋„๊ฐ€ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ํ™•์‹คํžˆ ์•„๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•˜๋‹ค.

 

์•„๋ž˜ ๊ทธ๋ฆผ์€ VPC๋ฅผ ๋„์‹ํ™”ํ•œ ๊ฒƒ์ด๋‹ค.

์•ž์„œ ๋ฐฐ์šด Internet gateway, Route table, Subnet, VPC Router๊ฐ€ ๋ณด์ด๋Š”๋ฐ ์ค‘๊ฐ„๋งˆ๋‹ค ์ž๋ฌผ์‡ ๋กœ ์ฑ„์›Œ์ง„ ์š”์†Œ๋“ค์ด ์žˆ๋Š”๋ฐ ์ด๊ฒƒ์ด Security Group๊ณผ Network ACL ์ด๋‹ค. 

vpc-Security-Group-NACL

๋ฐฐ์šฐ๊ธฐ ์•ž์„œ ๊ฐ„๋‹จํ•˜๊ฒŒ ์ •๋ฆฌํ•˜์ž๋ฉด,

Network ACL์€ ์„œ๋ธŒ๋„ท ์ƒ์ž ์œ„์— ์œ„์น˜ํ•ด ์žˆ๋Š”๋ฐ, ๋ฐ”๋กœ ์„œ๋ธŒ๋„ท์— ์˜ค๊ฐ€๋Š” ํŠธ๋ž˜ํ”ฝ์„ ์ œ์–ดํ•˜๋Š” ์—ญํ• ์„ ํ•œ๋‹ค.

Security Group ์„œ๋ธŒ๋„ท ์ƒ์ž ์•ˆ์— ์œ„์น˜ํ•ด ์žˆ๋Š”๋ฐ, ์ธ์Šคํ„ด์Šค์˜ ํŠธ๋ž˜ํ”ฝ์„ ์ œ์–ดํ•˜๋Š” ์—ญํ• ์„ ํ•œ๋‹ค. ๋‹ค๋งŒ ์™ผ์ชฝ๊ณผ ์˜ค๋ฅธ์ชฝ Security Group ๋ชจ์–‘์ด ๋‹ค๋ฅธ๋ฐ, ์ด๋Š” ๋‹ค์ˆ˜์˜ ์ธ์Šคํ„ด์Šค๊ฐ€ ํ•˜๋‚˜์˜ Securiy Group์„ ์“ฐ๊ฑฐ๋‚˜, ๊ฐ์ž์˜ Security group์„ ์“ธ ์ˆ˜ ์žˆ์Œ์„ ์˜๋ฏธํ•œ๋‹ค.


Security Group (๋ณด์•ˆ๊ทธ๋ฃน)

์‚ฌ์ „ ์„ค๋ช…์ด ๊ธธ์–ด์กŒ๋‹ค. ์ด์ œ ๋ณธ๊ฒฉ์ ์œผ๋กœ ๋ณด์•ˆ ๊ทธ๋ฃน(Security Group)์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด์ž.

 

๋ณด์•ˆ ๊ทธ๋ฃน์€ ์ธ์Šคํ„ด์Šค์— ๋Œ€ํ•œ ์ธ๋ฐ”์šด๋“œ(์™ธ๋ถ€ - > ์ธ์Šคํ„ด์Šค) & ์•„์›ƒ๋ฐ”์šด๋“œ(์ธ์Šคํ„ด์Šค - > ์™ธ๋ถ€) ํŠธ๋ž˜ํ”ฝ์„ ์ œ์–ดํ•˜๋Š” ๊ฐ€์ƒ ๋ฐฉํ™”๋ฒฝ ์—ญํ• ์„ ํ•œ๋‹ค.

์—ฌ๊ธฐ์„œ ๋งํ•˜๋Š” ์ธ์Šคํ„ด์Šค๋Š” EC2 ์ธ์Šคํ„ด์Šค๋ฟ๋งŒ ์•„๋‹ˆ๋ผ VPC ๋‚ด์— ํƒ‘์žฌ๋  ์ˆ˜ ์žˆ๋Š” ์ˆ˜๋งŽ์€ ๊ฐ€์ƒ ์ปดํ“จํ„ฐ๋ฅผ ์˜๋ฏธํ•œ๋‹ค.

๊ทธ๋Ÿฌ๋ฏ€๋กœ EC2, RDS, ELB, VPC Interface Endpoint ๋“ฑ๋„ ํฌํ•จ๋  ์ˆ˜ ์žˆ๋‹ค.

์ •ํ™•ํžˆ ๋งํ•˜๋ฉด VPC ๋‚ด์—์„œ Elastic Network Inteface(ENI)๋ฅผ ๊ฐ–๋Š” ๋ชจ๋“  ์„œ๋น„์Šค์— ํƒ‘์žฌ๋  ์ˆ˜ ์žˆ๋‹ค. Security Group์€ ์ธ์Šคํ„ด์Šค์˜ ENI์— ์ ์šฉ๋˜๋Š” ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

 

๋ณด์•ˆ๊ทธ๋ฃน
Security Group์˜ ์ธ๋ฐ”์šด๋“œ ๊ทœ์น™
๋ณด์•ˆ๊ทธ๋ฃน
Security Group์˜ ์•„์›ƒ๋ฐ”์šด๋“œ ๊ทœ์น™

 

์œ„ ๋‘ ์‚ฌ์ง„์€ Public Subnet ๋‚ด EC2 ์ธ์Šคํ„ด์Šค์˜ Security Group์˜ ์„ค์ • ์˜ˆ์‹œ์ด๋‹ค.

ํ‘œ์—์„œ ๋ณผ ์ˆ˜ ์žˆ๋“ฏ์ด ํ”„๋กœํ† ์ฝœ ์œ ํ˜•๊ณผ ํฌํŠธ, IP ๋“ฑ์„ ์ง€์ •ํ•  ์ˆ˜ ์žˆ๋‹ค.

์ด ํ‘œ์—์„œ๋Š” Public Subnet ๋‚ด์˜ EC2 ์ธ์Šคํ„ด์Šค๋Š” ์™ธ๋ถ€ ์ธํ„ฐ๋„ท ์›น ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๊ธฐ ๋•Œ๋ฌธ์— HTTP์™€ HTTPS๋ฅผ ์ ‘์†ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ—ˆ์šฉ๋˜์žˆ๊ณ , EC2 ์ธ์Šคํ„ด์Šค๋กœ์˜ ์ง์ ‘ ์ ‘์†์„ ์œ„ํ•ด SSH๋„ ์—ด๊ฒŒ ์„ค์ • ๋˜์—ˆ๋‹ค.

์•„์›ƒ๋ฐ”์šด๋“œ๋Š” EC2์—์„œ ์ถœ๋ฐœํ•˜๋Š” ๋ชจ๋“  ํŠธ๋ž˜ํ”ฝ์„ ์˜๋ฏธํ•˜๋ฏ€๋กœ ๋ชจ๋‘ ํ—ˆ์šฉ ๋˜์–ด์ง€๊ฒŒ ๋˜์–ด์žˆ๋‹ค.

์ฆ‰, ์ด EC2 ์ธ์Šคํ„ด์Šค์—๋Š” HTTP/HTTPS/SSH ํŠธ๋ž˜ํ”ฝ๋งŒ ํ—ˆ์šฉ๋˜๋Š” ๊ฒƒ์ด๋‹ค.

 

์ด์ฒ˜๋Ÿผ ๋‹ค์Œ ์‚ฌ์ง„์ฒ˜๋Ÿผ ํŠน์ • ํฌํŠธ๋งŒ์„ ํ—ˆ์šฉํ•ด ์–ด๋–ค ํ”„๋กœํ† ์ฝœ๋งŒ ๋ฐ›๋„๋ก ๊ตฌ์„ฑ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.

๋ณด์•ˆ๊ทธ๋ฃน-security-Group
๊ฐ Allow ๋ณด์•ˆ ๊ทธ๋ฃน ๊ทœ์น™์— ์˜ํ•ด์„œ 8080 ํฌํŠธ์™€ 443 ํฌํŠธ๋Š” ์ ‘๊ทผ์ด ๋ถˆ๊ฐ€๋Šฅ

์ด๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋ณด์•ˆ ๊ทธ๋ฃน(Security Group)์€ ๋ช‡ ๊ฐ€์ง€ ํŠน์ง•์„ ๊ฐ–๋Š”๋ฐ ์—ด๊ฑฐํ•ด๋ณด๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

  • ๋ณด์•ˆ ๊ทธ๋ฃน์€ ์ธ๋ฐ”์šด๋“œ ๊ทœ์น™๊ณผ ์•„์›ƒ๋ฐ”์šด๋“œ ๊ทœ์น™์œผ๋กœ ๋‚˜๋‰จ
  • ํ—ˆ์šฉ ๊ทœ์น™๋งŒ ์ƒ์„ฑ ๊ฐ€๋Šฅ.
    Deny ๋ถˆ๊ฐ€๋Šฅ โ†’ ๋ธ”๋ž™ ๋ฆฌ์ŠคํŠธ ์ฒ˜๋Ÿผ ๋ช‡๋ช‡์„ ๊ณจ๋ผ ํŠน์ • ์ฐจ๋‹จ์„ ๋ถˆ๊ฐ€๋Šฅ. ์ผ๋ถ€ ํ—ˆ์šฉ์„ ํ†ตํ•ด์„œ ๊ฐ„์ ‘ ์ฐจ๋‹จ์œผ๋กœ ๊ตฌ์„ฑ์€ ๊ฐ€๋Šฅ
    (๋ฌด์–ธ๊ฐ€๋ฅผ ์ฐจ๋‹จํ•˜๋Š” ๊ทœ์น™์€ Network ACL)
  • ๊ธฐ๋ณธ์ ์œผ๋กœ ๋ชจ๋“  Security Group์˜ ์•„์›ƒ๋ฐ”์šด๋“œ ๊ทœ์น™์€ ๋ชจ๋“  ์•„์›ƒ๋ฐ”์šด๋“œ ํŠธ๋ž˜ํ”ฝ ํ—ˆ์šฉ
  • Security Group์€ ์ธ์Šคํ„ด์Šค ๋‹จ์œ„๋กœ ์„ค์ • โ†’ ํ•˜๋‚˜์˜ ์ธ์Šคํ„ด์Šค์—๋Š” ํ•˜๋‚˜ ์ด์ƒ์˜ Security Group ์„ค์ • ๊ฐ€๋Šฅ. ์ตœ๋Œ€ 5๊ฐœ ๋™์‹œ ์ ์šฉ ๊ฐ€๋Šฅ.
    (Network ACL์€ ์„œ๋ธŒ๋„ท ๋‹จ์œ„๋กœ ์„ค์ •)
  • ๊ฐ ์ธ์Šคํ„ด์Šค์— ๊ฐ๊ฐ ์„œ๋กœ ๋‹ค๋ฅธ ๋ณด์•ˆ ๊ทธ๋ฃน์—๋„ ํ• ๋‹น ๊ฐ€๋Šฅ
  • ์„ค์ •๋œ ์ธ์Šคํ„ด์Šค๋Š” ์—ฐ๊ฒฐ๋˜์žˆ๋Š” ๋ณด์•ˆ๊ทธ๋ฃน์˜ ๋ชจ๋“  ๋ฃฐ์— ์ ์šฉ ๋ฐ›๋Š”๋‹ค.
  • ์ƒํƒœ๋ฅผ ์ €์žฅํ•˜์—ฌ ํ•œ ๋ฒˆ ์ธ๋ฐ”์šด๋“œ๋ฅผ ํ†ต๊ณผํ•˜๋Š” ํŠธ๋ž˜ํ”ฝ์€ ์•„์›ƒ๋ฐ”์šด๋“œ์˜ ๊ทœ์น™ ์ ์šฉ์„ ๋ฐ›์ง€ ์•Š์Œ (Stateful)
  • ์ƒํƒœ๋ฅผ ์ €์žฅํ•˜์—ฌ ํ•œ ๋ฒˆ ์•„์›ƒ๋ฐ”์šด๋“œ๋ฅผ ํ†ต๊ณผํ•˜๋Š” ํŠธ๋ž˜ํ”ฝ์€ ์ธ๋ฐ”์šด๋“œ์˜ ๊ทœ์น™ ์ ์šฉ์„ ๋ฐ›์ง€ ์•Š์Œ (Stateful)

 

 

๋ณด์•ˆ ๊ทธ๋ฃน์€ Stateful

์œ„์˜ ๋ณด์•ˆ ๊ทธ๋ฃน์˜ ํŠน์ง•์—์„œ ๋งˆ์ง€๋ง‰ ๋‘ ๋ถ€๋ถ„์ด Securiy Group์˜ ๊ฐ€์žฅ ํฐ ํŠน์ง•์ด๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๋Š”๋ฐ, ์ด๋ฅผ Stateful์ด๋ผ ํ•œ๋‹ค.

์œ„์˜ Security Group ํ‘œ๋ฅผ ๋ณด๋ฉด HTTP/HTTPS/SSH์˜ ํ—ˆ์šฉ์€ ์ธ๋ฐ”์šด๋“œ์—๋งŒ ์ ์šฉ ๋˜์–ด์žˆ๋‹ค.

๋ณด์•ˆ ๊ทธ๋ฃน์€ stateful์ด๋ผ ์ธ๋ฐ”์šด๋“œ์—๋งŒ ํ—ˆ์šฉ์‹œ์ผœ๋‘๋ฉด 3๊ฐœ ํ”„๋กœํ† ์ฝœ์€ ์•„์›ƒ๋ฐ”์šด๋“œ ๊ทœ์น™์— ์˜ํ–ฅ์„ ๋ฐ›์ง€ ์•Š๊ณ  ํŠธ๋ž˜ํ”ฝ์˜ ์™•๋ž˜ ํ•œ๋‹ค๋Š” ์†Œ๋ฆฌ์ด๋‹ค.

์ฆ‰, ์ธ๋ฐ”์šด๋“œ๋ฅผ ํ†ตํ•ด ์˜จ ํŠธ๋ž˜ํ”ฝ์ด๋ผ๋Š” ์†Œ๋ฆฌ๋Š” ๋ฌธ์ œ์—†๋Š” ํ—ˆ์šฉ๋œ ํŠธ๋ž˜ํ”ฝ์ด๋ผ๋Š” ๊ฒƒ์ด๊ณ  ์ด๋ฅผ ๋ณด์•ˆ ๊ทธ๋ฃน์—์„œ ๊ธฐ์–ตํ•˜๊ณ  ์žˆ๋‹ค๊ฐ€, ํŠธ๋ž˜ํ”ฝ์ด ๋น ์ ธ ๋‚˜๊ฐˆ๋•Œ ์ด ํŠธ๋ž˜ํ”ฝ์€ ๋ฌธ์ œ์—†๋Š” ๋†ˆ์ธ๊ฑธ ๊ธฐ์–ตํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์•„์›ƒ๋ฐ”์šด๋“œ ๊ทœ์น™์— ๊ตฌ์•  ๋ฐ›์ง€์•Š๊ณ  ๋‚˜๊ฐ€๋Š” ๊ฒƒ์ด๋‹ค.

๋ณด์•ˆ๊ทธ๋ฃน-security-Group

๊ทธ๋ฆผ์—์„œ ๋ณผ์ˆ˜ ์žˆ๋“ฏ์ด ์ธ๋ฐ”์šด๋“œ๋Š” 80๋ฒˆ ํฌํŠธ๋งŒ ํ—ˆ์šฉํ•˜๊ณ  ์žˆ๋‹ค.

๊ทธ๋Ÿฐ๋ฐ ์•„์›ƒ๋ฐ”์šด๋“œ๋Š” none์œผ๋กœ ๋˜์–ด์žˆ๋‹ค. ์•„๋ฌด๊ฒƒ๋„ ํ—ˆ์šฉ ์•ˆํ•œ๋‹ค๋Š” ์†Œ๋ฆฌ์ด๋‹ค.

ํ•˜์ง€๋งŒ ํด๋ผ์ด์–ธํŠธ๊ฐ€ 80ํฌํŠธ๋กœ ์š”์ฒญ์ด ์˜ค๊ฒŒ ๋˜๋ฉด ์ธ๋ฐ”์šด๋“œ์—์„œ ํ†ต๊ณผ๊ฐ€ ๋˜๊ณ  ์ธ์Šคํ„ด์Šค์—์„œ ์‘๋‹ต์„ ํ• ๋•Œ๋Š” ์•„์šด๋ฐ”์šด๋“œ ๊ทœ์น™์ด ์•„๋ฌด๊ฒƒ๋„ ํ—ˆ์šฉ์น˜ ์•Š์€ none์œผ๋กœ ์„ค์ •๋ฌ์Œ์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ  ์ƒํƒœ๋ฅผ ๊ธฐ์–ต(stateful)ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์™•๋ž˜ ํ•˜๋Š” ๊ฒƒ์ด๋‹ค.

 

 

Security Group ์‹ค์ „ ๊ตฌ์ถ•ํ•˜๊ธฐ

๋ณดํ†ต ๋ณด์•ˆ๊ทธ๋ฃน์€ EC2 ์ธ์Šคํ„ด์Šค๋ฅผ ๋งŒ๋“ค๋•Œ ๊ฐ™์ด ์„ค์ •ํ•ด ๋งŒ๋“ค๊ฒŒ ๋œ๋‹ค.

๋ฌผ๋ก  VPC ์ขŒ์ธก๋ฉ”๋‰ด์—์„œ ๋”ฐ๋กœ ๋ณด์•ˆ๊ทธ๋ฃน ํƒญ์„ ์ œ๊ณตํ•˜๊ธฐ๋„ ํ•œ๋‹ค.

[VPC ์ขŒ์ธก ๋ฉ”๋‰ด] - [๋ณด์•ˆ ๊ทธ๋ฃน] - [๋ณด์•ˆ ๊ทธ๋ฃน ์ƒ์„ฑ] ์„ ์„ ํƒํ•œ๋‹ค.

๋ณด์•ˆ๊ทธ๋ฃน-security-Group
๋ณด์•ˆ๊ทธ๋ฃน-security-Group

 

์™ธ๋ถ€์—์„œ ssh๋‚˜ ํ˜น์€ ์›น์„ ํ†ตํ•ด EC2 ์ธ์Šคํ„ด์Šค์— ์ ‘์†ํ•˜๊ฒŒ ํ•˜๋ ค๋ฉด ํฌํŠธ๋ฅผ ํ—ˆ์šฉํ•ด์ค˜์•ผ ํ•œ๋‹ค.

๋‹ค์Œ ์‚ฌ์ง„ ์ฒ˜๋Ÿผ SSH, HTTP ์œ ํ˜•์„ ์„ ํƒํ•ด ๋น ๋ฅด๊ฒŒ ํฌํŠธ ์„ค์ •์„ ํ• ์ˆ˜๋„ ์žˆ๊ณ , ์‚ฌ์šฉ์ž ์ง€์ •์„ ํ†ตํ•ด ํฌํŠธ ๋ฒ”์œ„๋ฅผ ์ •ํ•  ์ˆ˜๋„ ์žˆ๋‹ค.

๋งŒ์ผ ์†Œ์Šค์—์„œ ๋‚ด IP๋ฅผ ์„ ํƒํ•˜๋ฉด ํ˜„์žฌ ๋‚ด IP์—์„œ๋งŒ ์ธ์Šคํ„ด์Šค์— ์ ‘์†์ด ๊ฐ€๋Šฅํ•˜๋„๋ก ํ•  ์ˆ˜ ์žˆ๋‹ค.

์–ด๋””์—์„œ๋‚˜ ์ ‘์†ํ•˜๋ ค๋ฉด ์œ„์น˜ ๋ฌด๊ด€์„ ์„ ํƒํ•˜๊ฑฐ๋‚˜ 

๋ณด์•ˆ๊ทธ๋ฃน-security-Group

 

 

Security Group ๋ณ€๊ฒฝํ•˜๊ธฐ

๋˜ํ•œ, ๋ณด์•ˆ ๊ทธ๋ฃน์€ ํ•˜๋‚˜ ๋งŒ๋“ค์–ด๋†“์œผ๋ฉด ๋‹ค๋ฅธ ์ธ์Šคํ„ด์Šค์—์„œ๋„ ๊ณจ๋ผ์„œ ์‚ฌ์šฉํ• ์ˆ˜๋„ ์žˆ๋‹ค.

๋งŒ์ผ ํ˜„์žฌ ์ธ์Šคํ„ด์Šค์—์„œ ๋‹ค๋ฅธ ๋ณด์•ˆ ๊ทธ๋ฃน ์„ธํŒ…์œผ๋กœ ์ ์šฉํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด EC2 ์ธ์Šคํ„ด์Šค ๋ฉ”๋‰ด์— ๊ฐ€์„œ, ์ธ์Šคํ„ด์Šค์— ์šฐ์ธก ํด๋ฆญํ•˜๊ณ  ๋ณด์•ˆ ๋ฉ”๋‰ด๋ฅผ ์„ ํƒํ•˜๋ฉด ๋œ๋‹ค.

๋ณด์•ˆ๊ทธ๋ฃน-security-Group

 

๋˜ํ•œ ๋ณด์•ˆ ๊ทธ๋ฃน์€ ๋™์‹œ์— ์—ฌ๋Ÿฌ๊ฐœ ์„ธํŒ…์ด ๊ฐ€๋Šฅํ•˜๋‹ค.

์˜ˆ๋ฅผ๋“ค์–ด ์–ด๋–ค ๋ณด์•ˆ๊ทธ๋ฃน ํ•ญ๋ชฉ์€ 443๊ณผ 80๋งŒ ํ—ˆ์šฉํ•˜๊ณ , ์–ด๋–ค ๋ณด์•ˆ๊ทธ๋ฃน ํ•ญ๋ชฉ์€ 8080๊ณผ 3306 ํฌํŠธ๋ฅผ ํ—ˆ์šฉํ•œ๋‹ค๊ณ  ํ•˜๋ฉด, ์ด ๋‘๊ฐœ์˜ ๋ณด์•ˆ ๊ทธ๋ฃน ํ•ญ๋ชฉ์„ ๋™์‹œ์— ๋“ฑ๋กํ•ด ์ ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

๋ณด์•ˆ๊ทธ๋ฃน-security-Group


Network ACL (๋„คํŠธ์›Œํฌ ์•ก์„ธ์Šค ์ œ์–ด)

Network-ACL-NACL

๋ณด์•ˆ ๊ทธ๋ฃน(Security Group)์—์„œ ๊ฐ„๊ฐ„ํžˆ ๋น„๊ต๋Œ€์ƒ์œผ๋กœ ์„ค๋ช…ํ•œ NACL(Network ACL) ์ด๋‹ค.

NACL(Network ACL)์€ ๋‹จ์–ด ๊ทธ๋Œ€๋กœ Subnet์˜ Access List(์ ‘๊ทผ ์ œ์–ด ๋ชฉ๋ก)์„ ์ฑ…์ž„์ง„๋‹ค.

๋ณด์•ˆ ๊ทธ๋ฃน์ด ์ธ์Šคํ„ด์Šค์˜ ์ ‘๊ทผ ์ œ์–ด ๋ชฉ๋ก์ด๋ผ๋ฉด, NACL์€ Subnet์„ ์˜ค๊ณ  ๊ฐ€๋Š” ๋ชจ๋“  ํŠธ๋ž˜ํ”ฝ์„ ์ œ์–ดํ•˜๋Š” ์—ญํ• ์„ ํ•œ๋‹ค๊ณ  ๋ณด๋ฉด ๋œ๋‹ค.

NACL์€ Subnet ๋‹จ์œ„๋กœ ์ ์šฉ๋˜๊ธฐ ๋•Œ๋ฌธ์— Subnet ๋‚ด์˜ ๋ชจ๋“  ํŠธ๋ž˜ํ”ฝ์€ Network ACL์˜ ๊ทœ์น™ ์ ์šฉ์„ ๋ฐ›๊ฒŒ ๋œ๋‹ค. 

์ผ์ข…์˜ ์„œ๋ธŒ๋„ท์ด ๋“ค์–ด์žˆ๋Š” AZ์— ๊ฐ€๊ธฐ์ „์— ์ตœ์ „์„ ์—์„œ ์‹ธ์šฐ๋Š” ๋ณด์•ˆ ๊ฒ€๋ฌธ์†Œ ์ธ ์…ˆ์ด๋‹ค.

 

Network-ACL-NACL
Network ACL์˜ ์ธ๋ฐ”์šด๋“œ ๊ทœ์น™
Network-ACL-NACL
Network ACL์˜ ์•„์›ƒ๋ฐ”์šด๋“œ ๊ทœ์น™

์œ„ ๋‘ ์‚ฌ์ง„์€ Public Subnet์˜ Network ACL ์„ค์ • ์˜ˆ์‹œ ์ด๋‹ค

์œ„์˜ Security Group ํ‘œ์™€ ๋‹ฌ๋ฆฌ ๊ทœ์น™ # ์ด๋ž€ ํ•ญ๋ชฉ์ด ์กด์žฌํ•˜๊ณ  ํ—ˆ์šฉ/๊ฑฐ๋ถ€ ํ•ญ๋ชฉ๋„ ์žˆ๋‹ค.

 

Network ACL์˜ ํŠน์ง•์„ ์—ด๊ฑฐํ•˜๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

  • ์ธ๋ฐ”์šด๋“œ ๊ทœ์น™๊ณผ ์•„์›ƒ๋ฐ”์šด๋“œ ๊ทœ์น™์œผ๋กœ ๋‚˜๋‰จ
  • NACL์€ ์—ฌ๋Ÿฌ ์„œ๋ธŒ๋„ท์— ์ ์šฉ์ด ๊ฐ€๋Šฅํ•˜๋‹ค. ํ•˜์ง€๋งŒ ์„œ๋ธŒ๋„ท์€ ํ•œ๊ฐœ์˜ NACL๋งŒ ์—ฐ๊ฒฐ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.
  • ํ—ˆ์šฉ ๊ทœ์น™๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๊ฑฐ๋ถ€ ๊ทœ์น™ ์ƒ์„ฑ ๊ฐ€๋Šฅ. (๋ณด์•ˆ ๊ทธ๋ฃน์€ ํ—ˆ์šฉ๋งŒ)
    ์ฆ‰, ๋ˆ„๊ตฐ๊ฐ€๋ฅผ ๋ธ”๋Ÿญํ•˜๋Š”๊ฑด NACL๋งŒ ๊ฐ€๋Šฅ
  • ๊ทœ์น™์— ์ˆซ์ž๊ฐ€ ๋งค๊ฒจ์ ธ ๊ฐ€์žฅ ์ž‘์€ ์ˆซ์ž๊ฐ’์„ ์ง€๋‹ˆ๋Š” ๊ทœ์น™์ด ์šฐ์„ ์ ์œผ๋กœ ์ ์šฉ๋จ
  • NACL ๊ทœ์น™ ๋ชฉ๋ก์€ ์ธ๋ฐ”์šด๋“œ, ์•„์›ƒ๋ฐ”์šด๋“œ ์ตœ๋Œ€ 20๊ฐœ๊นŒ์ง€ ์ง€์ • ๊ฐ€๋Šฅํ•˜๋‹ค.
  • ์ƒํƒœ๋ฅผ ์ €์žฅํ•˜์ง€ ์•Š์•„ ํ•œ ๋ฒˆ ์ธ๋ฐ”์šด๋“œ๋ฅผ ํ†ต๊ณผํ•˜๋Š” ํŠธ๋ž˜ํ”ฝ์€ ์•„์›ƒ๋ฐ”์šด๋“œ์˜ ๊ทœ์น™ ์ ์šฉ์„ ๋ฐ›์Œ (Stateless)
  • ์ƒํƒœ๋ฅผ ์ €์žฅํ•˜์ง€ ์•Š์•„ ํ•œ ๋ฒˆ ์•„์›ƒ๋ฐ”์šด๋“œ๋ฅผ ํ†ต๊ณผํ•˜๋Š” ํŠธ๋ž˜ํ”ฝ์€ ์ธ๋ฐ”์šด๋“œ์˜ ๊ทœ์น™ ์ ์šฉ์„ ๋ฐ›์Œ (Stateless)

 

 

NACL์€ Stateless

Security Group์ฒ˜๋Ÿผ NACL ํŠน์ง•์˜ ๋งˆ์ง€๋ง‰ ๋‘ ๋ถ€๋ถ„์ด ์ค‘์š”ํ•˜๋‹ค. ์ด๋Ÿฌํ•œ ํŠน์ง•์„ Stateless๋ผ๊ณ  ๋ถ€๋ฅธ๋‹ค.

์ธ๋ฐ”์šด๋“œ ๊ทœ์น™์„ ์ ์šฉ๋ฐ›์•„ ์œ ์ž…๋œ ํŒจํ‚ท์ด ๋‹ค์‹œ ๋ฐ–์œผ๋กœ ๋‚˜๊ฐ€๊ธฐ ์œ„ํ•ด์„œ๋Š” ์•„์›ƒ๋ฐ”์šด๋“œ ๊ทœ์น™์˜ ์ ์šฉ์„ ๋ฐ›์•„์•ผ ํ•œ๋‹ค.

Network-ACL-NACL

์œ„ ๊ทธ๋ฆผ์„ ๋ณด๋ฉด ์ธ๋ฐ”์šด๋“œ์˜ 80๋ฒˆ ํฌํŠธ ํ—ˆ์šฉ ๊ทœ์น™์œผ๋กœ ์š”์ฒญ ํŠธ๋ž˜ํ”ฝ์„ ์•„๋ฌด ๋ฌธ์ œ์—†์ด ์ธ์Šคํ„ด์Šค์—์„œ ๋ฐ›์•„ ๋“ค์˜€๋‹ค.

๊ทธ๋Ÿฐ๋ฐ ์ด์ œ ๋ฐ–์œผ๋กœ ๋น ์ ธ๋‚˜์˜ค๋ ค๊ณ  ๋ณด๋‹ˆ ์•„์›ƒ๋ฐ”์šด๋“œ ๊ทœ์น™์ด none(๋ชจ๋‘ ๋น„ํ—ˆ์šฉ)์œผ๋กœ ๋˜์–ด์žˆ๋‹ค.

๋ณด์•ˆ ๊ทธ๋ฃน(Security Group) ์ธ ๊ฒฝ์šฐ ์ด์ „ ์ƒํƒœ๋ฅผ ๊ธฐ์–ต(stateful)์ด๋ผ์„œ ์ด ํŠธ๋ž˜ํ”ฝ์ด ๋ฌธ์ œ์—†๋Š” ๋†ˆ์ด๋ž€๊ฑธ ๊ธฐ์–ตํ•˜๊ณ  ๋‚ด๋ณด๋‚ผ๋–„ ์œตํ†ต์„ฑ์žˆ๊ฒŒ ๋‚ด๋ณด๋‚ด์ฃผ์—ˆ์—ˆ๋‹ค.

ํ•˜์ง€๋งŒ NACL์€ ์ด์ „ ์ƒํƒœ๋”ฐ์œ„ ๊ธฐ์–ตํ•˜์ง€ ์•Š์•„(stateless) ์ด ํŠธ๋ž˜ํ”ฝ์ด ์‹ ๋ขฐ๊ฐ€ ์žˆ๋“  ์—†๋“  ์œตํ†ต์„ฑ์—†๊ฒŒ ๋ฌด์กฐ๊ฑด ์•„์›ƒ๋ฐ”์šด๋“œ ๊ทœ์น™ ๋ฌธ์„œ๋ฅผ ๋ณด๊ณ  ํŒ๋‹จํ•œ ๊ฒƒ์ด๋‹ค.

๊ทธ๋ž˜์„œ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์ด ํ•ด๋‹น ํŠธ๋ž˜ํ”ฝ์€ ์‘๋‹ต์ด ๊ฐ€์ง€ ์•Š๊ฒŒ ๋œ๋‹ค.

 

๋˜ํ•œ ๋ชจ๋“  ๊ทœ์น™์ด ์ ์šฉ๋˜๋Š” Security Group๊ณผ ๋‹ฌ๋ฆฌ, Network ACL์€ ๊ทœ์น™ ์ˆœ์„œ๊ฐ€ ์žˆ์–ด ๊ฐ€์žฅ ์ž‘์€ ๊ทœ์น™ ๊ฐ’์„ ๊ฐ–๋Š” ๊ทœ์น™์ด ๊ฐ€์žฅ ๋จผ์ € ์ ์šฉ๋˜๋Š” ํŠน์ง•๋„ ์กด์žฌํ•œ๋‹ค.

 

 

NACL ๊ทœ์น™ ์ˆœ์„œ

NACL ๊ทœ์น™์€ ๊ฐ€์žฅ ์ž‘์€ ์ˆซ์ž๋ถ€ํ„ฐ ์šฐ์„ ๋˜๋ฉฐ ์ˆœ์„œ๋Œ€๋กœ ๋”ฐ์ ธ ๊ฐ„๋‹ค๋Š” ๊ฒƒ๋งŒ ๊ธฐ์–ตํ•˜๋ฉด ์ „ํ˜€ ์–ด๋ ค์šด ๊ฐœ๋…์ด ์•„๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ๋“ค์–ด, ๋‹ค์Œ๊ณผ ๊ฐ™์ด 100๋ฒˆ ๊ทœ์น™์€ 80๋ฒˆ ํฌํŠธ๋ฅผ Allowํ•˜๊ณ  ๊ทธ๋‹ค์Œ 101๋ฒˆ ๊ทœ์น™์€ Deny๋ฅผ ํ–ˆ๋‹ค.

๊ทธ๋Ÿฌ๋ฉด ์–ด๋–ป๊ฒŒ ๋ ๊นŒ? ๊ฐ„๋‹จํ•˜๋‹ค.

์ˆซ์ž๊ฐ€ ์ž‘์€ 100๋ฒˆ ๊ทœ์น™์—์„œ 80๋ฒˆ์€ ์ด๋ฏธ Allow๋ฌ์œผ๋‹ˆ ๋’ค์˜ 80๋ฒˆ ๊ทœ์น™์€ ๋ฌด์‹œ๋œ๋‹ค.

Network-ACL-NACL

 

์ด ๊ทœ์น™์„ ์ด์šฉํ•ด์„œ 80๋ฒˆ๋งŒ ํ—ˆ์šฉํ•˜๊ณ  ๋‚˜๋จธ์ง€๋Š” ๋น„ํ—ˆ์šฉํ•˜๋Š” ๋กœ์ง์„ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๊ฐ„๋‹จํ•˜๊ฒŒ ์ƒ์„ฑํ•  ์ˆ˜๋„ ์žˆ๋‹ค.

Network-ACL-NACL

 

 

Security Group vs Network ACL

Network-ACL-NACL

๋ณดํ†ต ๋ณด์•ˆ ๊ทธ๋ฃน๊ณผ NACL์€ ๊ฐ™์ด ์šด์šฉ๋˜์–ด์ง€๋Š”๊ฒŒ ์ด์ƒ์ ์ด๋‹ค.

 

์šฐ์„  ์„œ๋ธŒ๋„ท ๋‹จ์œ„์˜ NACL๋กœ ๊ฐ€์žฅ ๋จผ์ € ํŠธ๋ž˜ํ”ฝ์ด ๋“ค์–ด์˜ฌ ๊ฒƒ์ด๋‹ค.

์ด๋•Œ Network ACL์€ ๋ชจ๋“  ํŠธ๋ž˜ํ”ฝ์„ ํ—ˆ์šฉํ•˜๋˜, ์ฐจ๋‹จํ•  ํ•„์š”๊ฐ€ ์žˆ๋Š” IP๋ฅผ ๊ณจ๋ผ ์ฐจ๋‹จํ•˜๋Š” ์‹์œผ๋กœ ์„ค์ •ํ•œ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ์ธ์Šคํ„ด์Šค ๋‹จ์œ„์˜ Security Group์„ ์‚ฌ์šฉํ•ด ๊ฐ ์ธ์Šคํ„ด์Šค์— ํ—ˆ์šฉ๋˜์–ด์•ผ ํ•  ํ”„๋กœํ† ์ฝœ๊ณผ ํฌํŠธ๋ฅผ ๊ฐ๊ฐ ์ง€์ •ํ•œ๋‹ค. (IP๋Š” ์ง€์ •ํ•˜์ง€ ์•Š์Œ).

์ฆ‰, Network ACL์€ ํ”„๋กœํ† ์ฝœ๊ณผ ํฌํŠธ ์„ค์ •์— ๊ด€์—ฌํ•˜์ง€ ์•Š๊ณ  ํŠธ๋ž˜ํ”ฝ์„ ํ—ˆ์šฉํ•˜๋˜ ์•…์˜์  ํŠธ๋ž˜ํ”ฝ์ด ์˜์‹ฌ๋˜๋Š” IP๋ฅผ ๊ทœ์น™ ๊ฐ’์„ ์ด์šฉํ•ด ์šฐ์„ ์ ์œผ๋กœ ์ฐจ๋‹จํ•˜๊ณ  ๊ทธ ๋‹ค์Œ ํ”„๋กœํ† ์ฝœ๊ณผ ํฌํŠธ ์„ค์ •์„ Security Group์— ์ „์ ์œผ๋กœ ๋งก๊ฒจ ๊ฐ ์ธ์Šคํ„ด์Šค์— ํ•„์š”ํ•œ ๊ทœ์น™์„ ์„œ๋น„์Šค ํŠน์„ฑ์— ๋งž์ถฐ ์„ค์ •ํ•˜์—ฌ ๊ด€๋ฆฌ์˜ ํšจ์œจ์„ ๋†’์ด๋Š” ์‹์˜ ๋ฐฉ๋ฒ•์„ ์กฐํ•ฉํ•˜์—ฌ ์‚ฌ์šฉํ•œ๋‹ค.

 

 

Network ACL ์‹ค์ „ ๊ตฌ์ถ•ํ•˜๊ธฐ

์™ผ์ชฝ ์‚ฌ์ด๋“œ๋ฐ”์—์„œ ๋ณด์•ˆ โ†’ ๋„คํŠธ์›Œํฌ ACL ํƒญ์„ ๋ˆ„๋ฅธ๋‹ค.

Network-ACL-NACL

 

๊ธฐ๋ณธ์ ์œผ๋กœ ๋ชจ๋“  ์„œ๋ธŒ๋„ท์— ๋Œ€ํ•ด์„œ NACL์ด ํ•˜๋‚˜๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ์ƒ์„ฑ๋˜์–ด ์žˆ๋‹ค.

์™ธ๋ถ€ ์ธํ„ฐ๋„ท์šฉ NACL๋ฅผ ์ƒˆ๋กœ ์ƒ์„ฑํ•˜๋„๋ก ํ•œ๋‹ค.

Network-ACL-NACL
Network-ACL-NACL

 

์ด์ œ ์šฐ๋ฆฌ๋Š” ์•„๊นŒ ๋“ฑ๋กํ•œ public ์„œ๋ธŒ๋„ท์— ๋Œ€ํ•ด์„œ ์ƒˆ๋กœ์šด ๋ณด์•ˆ ๊ทœ์น™์„ ์ž‘์„ฑํ•  ์˜ˆ์ •์ด๋‹ค. ์™ธ๋ถ€ ์ธํ„ฐ๋„ท์— ์—ฐ๊ฒฐ๋œ ์„œ๋ธŒ๋„ท์ธ ๋งŒํผ ๊ทœ์น™์„ ์ •ํ•˜์—ฌ ์™ธ๋ถ€๋กœ๋ถ€ํ„ฐ ๊ณต๊ฒฉ์ด๋‚˜ ํŠธ๋ž˜ํ”ฝ์„ ์ œํ•œํ•˜์—ฌ์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

NACL์€ stateless์ด๊ธฐ ๋•Œ๋ฌธ์— ์ธ๋ฐ”์šด๋“œ์™€ ์•„์›ƒ๋ฐ”์šด๋“œ ๊ทœ์น™ ๋‘๊ฐœ๋ฅผ ๊ผญ ์ ์šฉํ•ด์ฃผ์–ด์•ผ ํ•œ๋‹ค.

Network-ACL-NACL
Network-ACL-NACL
Network-ACL-NACL
Network-ACL-NACL
Network-ACL-NACL

AWS์—์„œ๋Š” ๊ทœ์น™ ๊ฐ’์„ 100๋‹จ์œ„๋กœ ์ดˆ๊ธฐ ์„ธํŒ…์„ ํ•  ๊ฒƒ์„ ๊ถŒ๊ณ  ํ•˜๊ณ  ์žˆ๋‹ค.
์ค‘๊ฐ„์— ์ถ”๊ฐ€ ๋ฃฐ์„ ์ ์šฉํ•ด์•ผํ• ๋•Œ ๋„‰๋„‰ํ•œ ๊ณต๊ฐ„์„ ํ™•๋ณดํ•˜๊ธฐ ์œ„ํ•ด์„œ๋ผ๊ณ  ์ดํ•ดํ•˜๋ฉด ๋œ๋‹ค.

 

์ด์ œ public-study NACL์— ์„œ๋ธŒ๋„ท์„ ์—ฐ๊ฒฐํ•  ์ฐจ๋ก€์ด๋‹ค.

ํผ๋ธ”๋ฆฟ ์„œ๋ธŒ๋„ท์„ ํผ๋ธ”๋ฆญ NACL์— ์—ฐ๊ฒฐํ•˜๋ฉด ๋œ๋‹ค.

Network-ACL-NACL
Network-ACL-NACL

 

์•„๋ž˜ ๊ทธ๋ฆผ์€ ์œ„์—์„œ NACL์„ ์„ค์ •ํ•œ VPC ์ธํ”„๋ผ ๊ตฌ์„ฑ ์ง€๋„์ด๋‹ค.

Public Subnet ์—๋Š” Public์šฉ NACL ์ด ์ ์šฉ๋˜์—ˆ๊ณ , Private Subnet์—๋Š” Private์šฉ NACL(๊ธฐ๋ณธ ์ƒ์„ฑ)์ด ์ ์šฉ๋จ์„ ์•Œ์ˆ˜ ์žˆ๋‹ค.

Network-ACL-NACL


# ์ฐธ๊ณ ์ž๋ฃŒ

https://www.youtube.com/@AWSClassroom 

https://cloudguide.cdnetworks.com/Security/1.NetworkACL.html

https://m.blog.naver.com/ijoos/221565316291

https://aws-hyoh.tistory.com/72