19๋
2019์ 106์ผ, Capital One์ ๋ชจ๋ ํ๋ ๊ธฐ์
์ด ๋๋ ค์ํ๋ ๋ฐ์ดํฐ ์ ์ถ์ด ๋ฐ์ํ๋ค๋ ๋ฉ์์ง๋ฅผ ๋ฐ์์ต๋๋ค. ์ด๋ 140์ต 000๋ฐฑ๋ง ๋ช
์ด์์ ์ฌ๋๋ค์๊ฒ ์ํฅ์ ๋ฏธ์ณค์ต๋๋ค. ๋ฏธ๊ตญ ์ฌํ๋ณด์ฅ๋ฒํธ 80๊ฐ, ์บ๋๋ค ์ฌํ๋ณด์ฅ๋ฒํธ 000๋ง๊ฐ. XNUMX๊ฐ์ ์ํ ๊ณ์ข. ๋ถ์พํด์, ๋์ํ์ง ์๋์?
์ํ๊น๊ฒ๋ 19์ XNUMX์ผ์๋ ํดํน์ด ๋ฐ์ํ์ง ์์์ต๋๋ค. ๊ฒฐ๊ณผ์ ์ผ๋ก Paige Thompson, a.k.a. ์ด์ํ ์ฌ๋, 22๋
23์ 2019์ผ๋ถํฐ XNUMX์ XNUMX์ผ ์ฌ์ด์ ์ปค๋ฐํ์ต๋๋ค. ๊ทธ๊ฑด ๊ฑฐ์ XNUMX๊ฐ์ ์ . ์ค์ ๋ก Capital One์ด ๋ฌด์จ ์ผ์ด ์ผ์ด๋ฌ๋์ง ๋ฐ๊ฒฌํ ์ ์์๋ ๊ฒ์ ์ธ๋ถ ์ปจ์คํดํธ์ ๋์์ ํตํด์์์ต๋๋ค.
์๋ง์กด ์ ์ง ์ง์์ด ์ฒดํฌ๋ผ ๋ฒ๊ธ 250๋ง๋ฌ๋ฌ์ ์ง์ญ XNUMX๋
์ ์ ๊ณ ๋ฐ์๋ค. ํ์ง๋ง ์ฌ์ ํ ๋ถ์ ์ ์ธ ๋ฉด์ด ๋ง๋ค. ์? ํดํน ํผํด๋ฅผ ์
์ ๋ง์ ๊ธฐ์
๋ค์ด ์ฌ์ด๋ฒ ๋ฒ์ฃ๊ฐ ๋์ด๋๋ ๊ฐ์ด๋ฐ ์ธํ๋ผ์ ์ ํ๋ฆฌ์ผ์ด์
๊ฐํ์ ๋ํ ์ฑ
์์ ํํผํ๋ ค๊ณ ํ๊ธฐ ๋๋ฌธ์ด๋ค.
์ด์จ๋ , ์ด ์ด์ผ๊ธฐ๋ ์ฝ๊ฒ ๊ตฌ๊ธ์ ๊ฒ์ํด ๋ณผ ์ ์์ต๋๋ค. ์ฐ๋ฆฌ๋ ๋๋ผ๋ง์ ๋ค์ด ๊ฐ์ง ์๊ณ ์ด์ผ๊ธฐ๋ฅผ ๋๋ ๊ฒ์ ๋๋ค ๊ธฐ์ ์ ์ธ ๋ฌธ์ ์ ์ธก๋ฉด.
์ฐ์ , ๋ฌด์จ ์ผ์ด ์ผ์ด๋ฌ๋์?
Capital One์ ์ฝ 700๊ฐ์ S3 ๋ฒํท์ ์คํํ๊ณ ์์๊ณ Paige Thompson์ ์ด๋ฅผ ๋ณต์ฌํ์ฌ ํก์ํ์ต๋๋ค.
๋์งธ, ์ด๊ฒ์ ์๋ชป ๊ตฌ์ฑ๋ S3 ๋ฒํท ์ ์ฑ ์ ๋ ๋ค๋ฅธ ์ฌ๋ก์ ๋๊น?
์๋, ์ง๊ธ์ ์๋ผ. ์ฌ๊ธฐ์์ ๊ทธ๋ ๋ ์๋ชป ๊ตฌ์ฑ๋ ๋ฐฉํ๋ฒฝ์ด ์๋ ์๋ฒ์ ์ก์ธ์คํ์ฌ ๊ทธ๊ณณ์์ ์ ์ฒด ์์ ์ ์ํํ์ต๋๋ค.
์ ๊น, ์ด๊ฒ ์ด๋ป๊ฒ ๊ฐ๋ฅํด์?
์์ธํ ๋ด์ฉ์ ์์ง๋ง ์๋ฒ์ ๋ก๊ทธ์ธํ๋ ๊ฒ๋ถํฐ ์์ํด ๋ณด๊ฒ ์ต๋๋ค. ์ฐ๋ฆฌ๋ ์ด ์ผ์ด "์๋ชป ๊ตฌ์ฑ๋ ๋ฐฉํ๋ฒฝ"์ ํตํด ๋ฐ์ํ๋ค๋ ๋ง๋ง ๋ค์์ต๋๋ค. ๋ฐ๋ผ์ ์๋ชป๋ ๋ณด์ ๊ทธ๋ฃน ์ค์ ์ด๋ ์น ์ ํ๋ฆฌ์ผ์ด์ ๋ฐฉํ๋ฒฝ(Imperva) ๊ตฌ์ฑ ๋๋ ๋คํธ์ํฌ ๋ฐฉํ๋ฒฝ(iptables, ufw,shorewall ๋ฑ)๊ณผ ๊ฐ์ ๊ฐ๋จํ ๋ฌธ์ ์ ๋๋ค. Capital One์ ์์ ์ ์ ์ฃ๋ฅผ ์ธ์ ํ๊ณ ๊ตฌ๋ฉ์ ๋ง์๋ค๊ณ ๋งํ์ต๋๋ค.
Stone์ Capital One์ด ์ฒ์์๋ ๋ฐฉํ๋ฒฝ ์ทจ์ฝ์ ์ ์ธ์งํ์ง ๋ชปํ์ง๋ง ์ด๋ฅผ ์ธ์งํ ํ ์ ์ํ๊ฒ ์กฐ์น๋ฅผ ์ทจํ๋ค๊ณ ๋งํ์ต๋๋ค. Stone์ ํด์ปค๊ฐ ์ฃผ์ ์๋ณ ์ ๋ณด๋ฅผ ๊ณต๊ฐ ๋๋ฉ์ธ์ ๋จ๊ฒผ๋ค๋ ์ฌ์ค์ด ํ์คํ ๋์์ด ๋์๋ค๊ณ ๋งํ์ต๋๋ค.
์ ์ด ๋ถ๋ถ์ ๋ํด ๋ ๊น์ด ๋ค์ด๊ฐ์ง ์๋์ง ๊ถ๊ธํ์๋ค๋ฉด, ์ ํ๋ ์ ๋ณด๋ก ์ธํด ์ถ์ธก๋ง ํ ์ ์๋ค๋ ์ ์ ์ดํดํด ์ฃผ์๊ธฐ ๋ฐ๋๋๋ค. ํดํน์ด Capital One์ด ๋จ๊ธด ๊ตฌ๋ฉ์ ์์กดํ๋ค๋ ์ ์ ๊ณ ๋ คํ๋ฉด ์ด๋ ๋ง์ด ๋์ง ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ๋ค์ด ์ฐ๋ฆฌ์๊ฒ ๋ ๋ง์ ๊ฒ์ ๋งํ์ง ์๋ ํ, ์ฐ๋ฆฌ๋ ๋๊ตฐ๊ฐ๊ฐ ์ด๋ฌํ ๋ค์ํ ์ต์ ์ค ํ๋๋ฅผ ์ฌ์ฉํ ์ ์๋ ๋ชจ๋ ๊ฐ๋ฅํ ๋ฐฉ๋ฒ๊ณผ ํจ๊ป Capital One์ด ์๋ฒ๋ฅผ ์ด์ด๋ ๊ฐ๋ฅํ ๋ชจ๋ ๋ฐฉ๋ฒ์ ๋์ดํ ๊ฒ์ ๋๋ค. ์ด๋ฌํ ๊ฒฐํจ๊ณผ ๊ธฐ์ ์ ๋งค์ฐ ์ด๋ฆฌ์์ ์ค์๋ถํฐ ์์ฒญ๋๊ฒ ๋ณต์กํ ํจํด๊น์ง ๋ค์ํฉ๋๋ค. ๊ฐ๋ฅ์ฑ์ ๋ฒ์๋ฅผ ๊ณ ๋ คํ ๋, ์ด๊ฒ์ ์ค์ ๊ฒฐ๋ก ์ด ์๋ ๊ธด ์ด์ผ๊ธฐ๊ฐ ๋ ๊ฒ์ ๋๋ค. ๊ทธ๋ฌ๋ฏ๋ก ํฉํธ๊ฐ ์๋ ๋ถ๋ถ์ ์ง์ค์ ์ผ๋ก ๋ถ์ํด๋ณด์.
๋ฐ๋ผ์ ์ฒซ ๋ฒ์งธ ์์ ์ ๋ฐฉํ๋ฒฝ์ด ๋ฌด์์ ํ์ฉํ๋์ง ํ์ ํ๋ ๊ฒ์ ๋๋ค.
์ด์ด์ผ ํ ๊ฒ๋ง ์ด ์ ์๋๋ก ์ ์ฑ ์ด๋ ์ ์ ํ ํ๋ก์ธ์ค๋ฅผ ์๋ฆฝํฉ๋๋ค. ๋ณด์ ๊ทธ๋ฃน ๋๋ ๋คํธ์ํฌ ACL๊ณผ ๊ฐ์ AWS ๋ฆฌ์์ค๋ฅผ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ ๋น์ฐํ ๊ฐ์ฌํ ์ฒดํฌ๋ฆฌ์คํธ๊ฐ ๊ธธ ์ ์์ต๋๋ค. ํ์ง๋ง ๋ง์ ๋ฆฌ์์ค๊ฐ ์๋์ผ๋ก ์์ฑ๋๋ ๊ฒ์ฒ๋ผ(์: CloudFormation) ๊ฐ์ฌ๋ฅผ ์๋ํํ๋ ๊ฒ๋ ๊ฐ๋ฅํฉ๋๋ค. ์ ๊ฐ์ฒด์ ๊ฒฐํจ์ด ์๋์ง ๊ฒ์ฌํ๋ ์ง์ ๋ง๋ ์คํฌ๋ฆฝํธ์ด๋ , CI/CD ํ๋ก์ธ์ค์ ๋ณด์ ๊ฐ์ฌ์ ๊ฐ์ ๊ฒ์ด๋ ... ์ด๋ฅผ ๋ฐฉ์งํ ์ ์๋ ์ฌ์ด ์ต์ ์ด ๋ง์ด ์์ต๋๋ค.
์ด์ผ๊ธฐ์ "์ฌ๋ฏธ์๋" ๋ถ๋ถ์ Capital One์ด ์ ์ด์ ๊ตฌ๋ฉ์ ๋ง์๋ค๋ฉด... ์๋ฌด ์ผ๋ ์ผ์ด๋์ง ์์์ ๊ฒ์ด๋ผ๋ ์ ์ ๋๋ค. ๊ทธ๋์ ์์งํ ๋งํด์, ์ด๋ค ์ผ์ด ์ค์ ๋ก ์ด๋ป๊ฒ ์งํ๋๋์ง ๋ณด๋ ๊ฒ์ ํญ์ ์ถฉ๊ฒฉ์ ์ ๋๋ค. ๊ฝค ๊ฐ๋จํ๋ค ํ์ฌ๊ฐ ํดํน๋นํ๋ ์ ์ผํ ์ด์ ๊ฐ ๋ฉ๋๋ค. ํนํ Capital One๋งํผ ํฐ ํ์ฌ๋์.
๊ทธ๋ผ ํด์ปค๊ฐ ๋ด๋ถ์ ์์ต๋๋ค. ๊ทธ ๋ค์์๋ ๋ฌด์จ ์ผ์ด ์ผ์ด๋ฌ๋์?
๊ธ์์, EC2 ์ธ์คํด์ค์ ์นจ์ ํ ํ์๋... ๋ง์ ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์์ต๋๋ค. ๋๊ตฐ๊ฐ๋ฅผ ๊ทธ๋ ๊ฒ ๋ฉ๋ฆฌ ๊ฐ๊ฒ ํ๋ค๋ฉด ์ฌ์ค์ ์นผ๋ ์๋ฅผ ๊ฑท๋ ๊ฒ๊ณผ ๊ฐ์ต๋๋ค. ๊ทธ๋ฐ๋ฐ ์ด๋ป๊ฒ S3 ๋ฒํท์ ๋ค์ด์๋์? ์ด๋ฅผ ์ดํดํ๊ธฐ ์ํด IAM ์ญํ ์ ๋ํด ๋ ผ์ํด ๋ณด๊ฒ ์ต๋๋ค.
๋ฐ๋ผ์ AWS ์๋น์ค์ ์ก์ธ์คํ๋ ํ ๊ฐ์ง ๋ฐฉ๋ฒ์ ์ฌ์ฉ์๊ฐ ๋๋ ๊ฒ์ ๋๋ค. ์ข์์, ์ด๊ฑด ๊ฝค ๋ถ๋ช ํด์. ํ์ง๋ง ์ ํ๋ฆฌ์ผ์ด์ ์๋ฒ์ ๊ฐ์ ๋ค๋ฅธ AWS ์๋น์ค์ S3 ๋ฒํท์ ๋ํ ์ก์ธ์ค ๊ถํ์ ๋ถ์ฌํ๋ ค๋ฉด ์ด๋ป๊ฒ ํด์ผ ํ ๊น์? ์ด๊ฒ์ด ๋ฐ๋ก IAM ์ญํ ์ ์ญํ ์ ๋๋ค. ์ด๋ ๋ ๊ฐ์ง ๊ตฌ์ฑ ์์๋ก ๊ตฌ์ฑ๋ฉ๋๋ค.
- ์ ๋ขฐ ์ ์ฑ - ์ด ์ญํ ์ ์ฌ์ฉํ ์ ์๋ ์๋น์ค ๋๋ ์ฌ๋์ ๋ฌด์์ ๋๊น?
- ๊ถํ ์ ์ฑ - ์ด ์ญํ ์ ๋ฌด์์ ํ์ฉํฉ๋๊น?
์๋ฅผ ๋ค์ด, EC2 ์ธ์คํด์ค๊ฐ S3 ๋ฒํท์ ์ก์ธ์คํ๋๋ก ํ์ฉํ๋ IAM ์ญํ ์ ์์ฑํ๋ ค๊ณ ํฉ๋๋ค. ๋จผ์ ์ญํ ์ EC2(์ ์ฒด ์๋น์ค) ๋๋ ํน์ ์ธ์คํด์ค๊ฐ ์ญํ ์ "์ธ๊ณ"ํ ์ ์๋ ์ ๋ขฐ ์ ์ฑ ์ ๊ฐ๋๋ก ์ค์ ๋ฉ๋๋ค. ์ญํ ์ ์๋ฝํ๋ค๋ ๊ฒ์ ์ญํ ์ ๊ถํ์ ์ฌ์ฉํ์ฌ ์์ ์ ์ํํ ์ ์๋ค๋ ์๋ฏธ์ ๋๋ค. ๋์งธ, ๊ถํ ์ ์ฑ ์ "์ญํ ์ ๋งก์" ์๋น์ค/์ฌ๋/๋ฆฌ์์ค๊ฐ ํ๋์ ํน์ ๋ฒํท์ ์ก์ธ์คํ๋ ์ง Capital One์ ๊ฒฝ์ฐ์ฒ๋ผ 3๊ฐ ์ด์์ ๋ฒํท์ ์ก์ธ์คํ๋ ์๊ด์์ด S700์์ ๋ฌด์์ด๋ ํ ์ ์๋๋ก ํ์ฉํฉ๋๋ค.
IAM ์ญํ ์ด ์๋ EC2 ์ธ์คํด์ค์ ์์ผ๋ฉด ๋ค์๊ณผ ๊ฐ์ ์ฌ๋ฌ ๋ฐฉ๋ฒ์ผ๋ก ์๊ฒฉ ์ฆ๋ช ์ ์ป์ ์ ์์ต๋๋ค.
- ๋ค์์์ ์ธ์คํด์ค ๋ฉํ๋ฐ์ดํฐ๋ฅผ ์์ฒญํ ์ ์์ต๋๋ค.
http://169.254.169.254/latest/meta-data
๋ฌด์๋ณด๋ค๋ ์ด ์ฃผ์์ ์ก์ธ์ค ํค๋ฅผ ์ฌ์ฉํ์ฌ IAM ์ญํ ์ ์ฐพ์ ์ ์์ต๋๋ค. ๋ฌผ๋ก , ์ธ์คํด์ค์ ์๋ ๊ฒฝ์ฐ์๋ง ํด๋น๋ฉ๋๋ค.
- AWS CLI๋ฅผ ์ฌ์ฉํ์ธ์...
AWS CLI๊ฐ ์ค์น๋ ๊ฒฝ์ฐ IAM ์ญํ (์๋ ๊ฒฝ์ฐ)์ ์๊ฒฉ ์ฆ๋ช ๊ณผ ํจ๊ป ๋ก๋๋ฉ๋๋ค. ๋จ์ ๊ฒ์ ์ธ์คํด์ค๋ฅผ ํตํด ์์ ํ๋ ๊ฒ๋ฟ์ ๋๋ค. ๋ฌผ๋ก , ์ ๋ขฐ ์ ์ฑ ์ด ๊ณต๊ฐ๋์ด ์๋ค๋ฉด Paige๋ ๋ชจ๋ ๊ฒ์ ์ง์ ํ ์ ์์ต๋๋ค.
๋ฐ๋ผ์ IAM ์ญํ ์ ํต์ฌ์ ์ผ๋ถ ๋ฆฌ์์ค๊ฐ ์ฌ์ฉ์๋ฅผ ๋์ ํ์ฌ ๋ค๋ฅธ ๋ฆฌ์์ค์ ๋ํด ์๋ํ๋๋ก ํ์ฉํ๋ ๊ฒ์ ๋๋ค.
์ด์ IAM์ ์ญํ ์ ์ดํดํ์ผ๋ฏ๋ก Paige Thompson์ด ์ํํ ์์ ์ ๋ํด ์ด์ผ๊ธฐํ ์ ์์ต๋๋ค.
- ๋ฐฉํ๋ฒฝ์ ๊ตฌ๋ฉ์ ํตํด ์๋ฒ(EC2 ์ธ์คํด์ค)์ ์ ๊ทผํ๊ฒ ๋์์ต๋๋ค.
๋ณด์ ๊ทธ๋ฃน/ACL์ด๋ ์์ฒด ์น ์ ํ๋ฆฌ์ผ์ด์ ๋ฐฉํ๋ฒฝ์ด๋ ๊ณต์ ๊ธฐ๋ก์ ๋ช ์๋ ๋๋ก ๊ตฌ๋ฉ์ ๋ง๋ ๊ฒ์ ์๋ง๋ ๋งค์ฐ ์ฌ์ ์ ๊ฒ์ ๋๋ค.
- ์๋ฒ์ ์ ์ํ ํ ๊ทธ๋ ๋ ์์ ์ด ์๋ฒ์ธ ๊ฒ์ฒ๋ผ "๋ง์น" ํ๋ํ ์ ์์์ต๋๋ค.
- IAM ์๋ฒ ์ญํ ์ S3๊ฐ ์ด๋ฌํ 700๊ฐ ์ด์์ ๋ฒํท์ ์ก์ธ์คํ๋๋ก ํ์ฉํ๊ธฐ ๋๋ฌธ์ ํด๋น ๋ฒํท์ ์ก์ธ์คํ ์ ์์์ต๋๋ค.
๊ทธ ์๊ฐ๋ถํฐ ๊ทธ๋
๊ฐ ํด์ผ ํ ์ผ์ ๋ช
๋ น์ ์คํํ๋ ๊ฒ๋ฟ์ด์์ต๋๋ค. List Buckets
๊ทธ๋ฐ ๋ค์ ๋ช
๋ น Sync
AWS CLI์์...
์ด์ผ๊ธฐ์ ๊ตํ: ์์ ์ ํ์ธํ์ธ์. ์ ๊ธฐ์ ์ธ ๊ฐ์ฌ๋ฅผ ์ค์ํฉ๋๋ค. ๋ณด์ ์ ์ฑ ์ ๋ํ ์ต์ ๊ถํ ์์น์ ์กด์คํฉ๋๋ค.
(
์ถ์ฒ : habr.com