ํ์ดํธ๋ฆฌ์คํธ ๋ค์ ํฌํธ๋ฅผ ์จ๊ธฐ๋ผ๋ ๋์ ๊ถ๊ณ ์ ๋ํด ๊ฐ์ฌ๋ฅผ ์ค์ํ ํ ๋ช ๋ฒ์ด๊ณ ์คํด์ ๋ฒฝ์ ๋ถ๋ชํ์ต๋๋ค. ์์ฃผ ๋ฉ์ง ๊ด๋ฆฌ์/DevOps์กฐ์ฐจ๋ "์?!?"๋ผ๊ณ ๋ฌป์ต๋๋ค.
๋๋ ๋ฐ์ ๊ฐ๋ฅ์ฑ๊ณผ ํผํด์ ๊ฐ๋ฅ์ฑ์ด ๋์ ์์๋๋ก ์ํ์ ๊ณ ๋ คํ ๊ฒ์ ์ ์ํฉ๋๋ค.
- ๊ตฌ์ฑ ์ค๋ฅ
- IP๋ฅผ ํตํ DDoS
- ๋ฌด์ฐจ๋ณ ๋์
- ์๋น์ค ์ทจ์ฝ์
- ์ปค๋ ์คํ ์ทจ์ฝ์
- DDoS ๊ณต๊ฒฉ ์ฆ๊ฐ
๊ตฌ์ฑ ์ค๋ฅ
๊ฐ์ฅ ์ผ๋ฐ์ ์ด๊ณ ์ํํ ์ํฉ์ ๋๋ค. ์ด๋ป๊ฒ ์ผ์ด๋๋์ง. ๊ฐ๋ฐ์๋ ๊ฐ์ค์ ์ ์ํ๊ฒ ํ ์คํธํด์ผ ํ๋ฉฐ mysql/redis/mongodb/elastic์ ์ฌ์ฉํ์ฌ ์์ ์๋ฒ๋ฅผ ์ค์ ํฉ๋๋ค. ๋ฌผ๋ก ๋น๋ฐ๋ฒํธ๋ ๋ณต์กํด์ ์ด๋์์๋ ์ฌ์ฉํฉ๋๋ค. ์ด๋ ์ ์ธ๊ณ์ ์๋น์ค๋ฅผ ์ ๊ณตํฉ๋๋ค. VPN ์์ด PC์์ ์ฐ๊ฒฐํ๋ ๊ฒ์ด ํธ๋ฆฌํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋๋ฌด ๊ฒ์ผ๋ฅธ ๋๋จธ์ง iptables ๊ตฌ๋ฌธ์ ๊ธฐ์ตํ์ง ๋ชปํฉ๋๋ค. ์ด์จ๋ ์๋ฒ๋ ์ผ์์ ์ ๋๋ค. ๋ฉฐ์น ๋ ๊ฐ๋ฐ์ ํด๋ณด๋ ๊ฒฐ๊ณผ๊ฐ ํ๋ฅญํด ๊ณ ๊ฐ์๊ฒ ๋ณด์ฌ์ค ์ ์๊ฒ ๋์์ต๋๋ค. ๊ณ ๊ฐ์ด ์ข์ํ๋ฏ๋ก ๋ค์ ์คํํ ์๊ฐ์ด ์์ต๋๋ค. PROD๋ก ์ถ์ํฉ๋๋ค!
๋ชจ๋ ๊ฐํด๋ฅผ ํต๊ณผํ๊ธฐ ์ํด ์๋์ ์ผ๋ก ๊ณผ์ฅ๋ ์:
- ์์๋ณด๋ค ์๊ตฌ์ ์ธ ๊ฒ์ ์์ต๋๋ค. ์ด ๋ฌธ๊ตฌ๋ ๋ง์์ ๋ค์ง ์์ง๋ง ์ฃผ๊ด์ ์ธ ๋๋์ ๋ฐ๋ฅด๋ฉด ์์ ์๋ฒ์ 20~40%๊ฐ ์ค๋ซ๋์ ๋จ์ ์์ต๋๋ค.
- ๋ง์ ์๋น์ค์์ ์ฌ์ฉ๋๋ ๋ณต์กํ ๋ฒ์ฉ ๋น๋ฐ๋ฒํธ๋ ์ฌ์
ํฉ๋๋ค. ์ด ๋น๋ฐ๋ฒํธ๊ฐ ์ฌ์ฉ๋ ์๋น์ค ์ค ํ๋๊ฐ ํดํน๋นํ์ ๊ฐ๋ฅ์ฑ์ด ์๊ธฐ ๋๋ฌธ์
๋๋ค. ์ด๋ค ์์ผ๋ก๋ ํดํน๋ ์๋น์ค์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ํ๋๋ก ๋ชจ์ฌ [๋ฌด์ฐจ๋ณ ๋์
]*์ ์ฌ์ฉ๋ฉ๋๋ค.
์ค์น ํ redis, mongodb ๋ฐ elastic์ ์ผ๋ฐ์ ์ผ๋ก ์ธ์ฆ ์์ด ์ฌ์ฉํ ์ ์์ผ๋ฉฐ ์ข ์ข ๋ณด์ถฉ๋๋ค๋ ์ ์ ๋ง๋ถ์ผ ๊ฐ์น๊ฐ ์์ต๋๋ค.๊ณต๊ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ชจ์ . - ๋ฉฐ์น ๋ด์ ์๋ฌด๋ ๊ทํ์ 3306 ํฌํธ๋ฅผ ์ค์บํ์ง ์์ ๊ฒ ๊ฐ์ต๋๋ค. ๊ทธ๊ฒ์ ๋ง์์ด๋ค! Masscan์ ๋ฐ์ด๋ ์ค์บ๋์ด๋ฉฐ ์ด๋น 10M ํฌํธ๋ก ์ค์บํ ์ ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ธํฐ๋ท์๋ IPv4๊ฐ 4์ต ๊ฐ๋ฐ์ ์์ต๋๋ค. ๋ฐ๋ผ์ ์ธํฐ๋ท์ ์๋ 3306๊ฐ์ ํฌํธ๋ฅผ ๋ชจ๋ 7๋ถ ์์ ์ฐพ์๋
๋๋ค. ์ฐฐ์ค!!! XNUMX๋ถ!
โ๋๊ฐ ์ด๊ฒ ํ์ํ๋ฐ?โ - ๋น์ ์ ๋ฐ๋ํฉ๋๋ค. ๊ทธ๋์ ๋๋กญ๋ ํจํค์ง์ ํต๊ณ๋ฅผ ๋ณด๋ฉด ๊น์ง ๋๋ผ๊ฒ ๋ฉ๋๋ค. ํ๋ฃจ์ 40๊ฐ์ ๊ณ ์ IP์์ 3๋ฒ์ ์ค์บ ์๋๊ฐ ์ด๋์ ๋ฐ์ํฉ๋๊น? ์ด์ ์๋ง์ ํด์ปค๋ถํฐ ์ ๋ถ๊น์ง ๋ชจ๋๊ฐ ์ค์บํ๊ณ ์์ต๋๋ค. ํ์ธํ๋ ๊ฒ์ ๋งค์ฐ ์ฝ์ต๋๋ค. ** ์ ๊ฐ ํญ๊ณต์ฌ์์ $3-5์ VPS๋ฅผ ๋ฐ๊ณ , ๋จ์ด์ง ํจํค์ง์ ๋ํ ๊ธฐ๋ก์ ํ์ฑํํ๊ณ ํ๋ฃจ์ ๋ก๊ทธ๋ฅผ ํ์ธํ์ธ์.
๋ก๊น ํ์ฑํ
/etc/iptables/rules.v4์์ ๋์ ๋ค์์ ์ถ๊ฐํฉ๋๋ค.
-A INPUT -j LOG --log-prefix "[FW - ALL] " --log-level 4
๊ทธ๋ฆฌ๊ณ /etc/rsyslog.d/10-iptables.conf์์
:msg,contains,"[FW - "/var/log/iptables.log
& ๋ฉ์ถ๋ค
IP๋ฅผ ํตํ DDoS
๊ณต๊ฒฉ์๊ฐ ๊ทํ์ IP๋ฅผ ์๊ณ ์๋ค๋ฉด ๋ช ์๊ฐ ๋๋ ๋ฉฐ์น ๋์ ๊ทํ์ ์๋ฒ๋ฅผ ํ์ด์ฌํนํ ์ ์์ต๋๋ค. ๋ชจ๋ ์ ๊ฐํ ํธ์คํ ์ ๊ณต์ ์ฒด๊ฐ DDoS ๋ณดํธ ๊ธฐ๋ฅ์ ๊ฐ์ถ ๊ฒ์ ์๋๋ฉฐ ์๋ฒ๊ฐ ๋คํธ์ํฌ์์ ์ฐ๊ฒฐ์ด ๋์ด์ง๋๋ค. ์๋ฒ๋ฅผ CDN ๋ค์ ์จ๊ธด ๊ฒฝ์ฐ IP๋ฅผ ๋ณ๊ฒฝํ๋ ๊ฒ์ ์์ง ๋ง์ธ์. ๊ทธ๋ ์ง ์์ผ๋ฉด ํด์ปค๊ฐ ํด๋น ์๋ฒ๋ฅผ ๊ฒ์ํ์ฌ CDN์ ์ฐํํ์ฌ ์๋ฒ์ DDoS ๊ณต๊ฒฉ์ ๊ฐํ ๊ฒ์ ๋๋ค(๋งค์ฐ ํํ ์ค์).
์๋น์ค ์ทจ์ฝ์
๋๋ฆฌ ์ฌ์ฉ๋๋ ๋ชจ๋ ์ํํธ์จ์ด๋ ์กฐ๋ง๊ฐ ์ค๋ฅ๋ฅผ ๋ฐ๊ฒฌํฉ๋๋ค. ์ฌ์ง์ด ๊ฐ์ฅ ๋ง์ด ํ
์คํธ๋๊ณ ์ค์ํ ์ํํธ์จ์ด๋ผ๋ ์ค๋ฅ๊ฐ ๋ฐ๊ฒฌ๋ฉ๋๋ค. IB ์ ๋ฌธ๊ฐ๋ค ์ฌ์ด์๋ ๋ฐ ๋๋ด์ด ์์ต๋๋ค. ์ธํ๋ผ ๋ณด์์ ๋ง์ง๋ง ์
๋ฐ์ดํธ ์์ ๊น์ง ์์ ํ๊ฒ ํ๊ฐํ ์ ์์ต๋๋ค. ๊ทํ์ ์ธํ๋ผ๊ฐ ์ธ๊ณ๋ก ํ์ด๋์จ ํฌํธ๊ฐ ํ๋ถํ๊ณ XNUMX๋
๋์ ์
๋ฐ์ดํธํ์ง ์์ ๊ฒฝ์ฐ ๋ณด์ ์ ๋ฌธ๊ฐ๋ ๊ทํ๊ฐ ๋์ถ๋๊ณ ์ด๋ฏธ ํดํน๋นํ์ ๊ฐ๋ฅ์ฑ์ด ๋๋ค๋ ์ฌ์ค์ ๋ณด์ง ์๊ณ ๋ ์๋ ค์ค ๊ฒ์
๋๋ค.
์๋ ค์ง ๋ชจ๋ ์ทจ์ฝ์ ์ด ํ๋ ์๋ ค์ง์ง ์์๋ค๋ ์ ๋ ์ธ๊ธํ ๊ฐ์น๊ฐ ์์ต๋๋ค. ์ด๋ฌํ ์ทจ์ฝ์ ์ ๋ฐ๊ฒฌํ๊ณ 7๋ถ ๋ง์ ์ ์ฒด ์ธํฐ๋ท์ ๊ฒ์ํ์ฌ ์กด์ฌ ์ฌ๋ถ๋ฅผ ํ์ธํ๋ ํด์ปค๋ฅผ ์์ํด ๋ณด์ญ์์ค... ์ฌ๊ธฐ์ ์๋ก์ด ๋ฐ์ด๋ฌ์ค ์ ์ผ๋ณ์ด ์์ต๋๋ค) ์
๋ฐ์ดํธ๊ฐ ํ์ํ์ง๋ง ์ด๋ก ์ธํด ์ ํ์ ํด๋ฅผ ๋ผ์น ์ ์๋ค๊ณ ๋งํฉ๋๋ค. ๊ณต์ OS ๋ฆฌํฌ์งํ ๋ฆฌ์์ ํจํค์ง๊ฐ ์ค์น๋์ง ์์ ๊ฒฝ์ฐ์๋ ๋ง์ต๋๋ค. ๊ฒฝํ์ ๊ณต์ ์ ์ฅ์์ ์
๋ฐ์ดํธ๋ก ์ธํด ์ ํ์ด ์ค๋จ๋๋ ๊ฒฝ์ฐ๋ ๊ฑฐ์ ์์ต๋๋ค.
๋ฌด์ฐจ๋ณ ๋์
์์์ ์ค๋ช ํ ๊ฒ์ฒ๋ผ ํค๋ณด๋๋ก ํธ๋ฆฌํ๊ฒ ์ ๋ ฅํ ์ ์๋ XNUMX์ต ๊ฐ์ ๋น๋ฐ๋ฒํธ๊ฐ ํฌํจ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ์์ต๋๋ค. ์ฆ, ๋น๋ฐ๋ฒํธ๋ฅผ ์์ฑํ์ง ์๊ณ ํค๋ณด๋์์ ์ธ์ ํ ๊ธฐํธ๋ฅผ ์ ๋ ฅํ ๊ฒฝ์ฐ์๋ ๋๋๋นํ ์ ์์ผ๋ ์์ฌํ์ธ์*.
์ปค๋ ์คํ ์ทจ์ฝ์ .
์ปค๋ ๋คํธ์ํฌ ์คํ ์์ฒด๊ฐ ์ทจ์ฝํ ๋ ์ด๋ค ์๋น์ค๊ฐ ํฌํธ๋ฅผ ์ฌ๋์ง๋ ์ค์ํ์ง ์์ ๊ฒฝ์ฐ๋ ์์ต๋๋ค. ์ฆ, XNUMX๋ ๋ ์์คํ ์ ๋ชจ๋ tcp/udp ์์ผ์ DDoS๋ก ์ด์ด์ง๋ ์ทจ์ฝ์ฑ์ ์ทจ์ฝํฉ๋๋ค.
DDoS ๊ณต๊ฒฉ ์ฆ๊ฐ
์ง์ ์ ์ธ ํผํด๋ฅผ ์ ํ์ง๋ ์์ง๋ง ์ฑ๋์ ๋ง๊ณ ์์คํ ๋ถํ๋ฅผ ์ฆ๊ฐ์ํค๋ฉฐ IP๊ฐ ๋ธ๋๋ฆฌ์คํธ*****์ ์ฌ๋ผ๊ฐ๊ณ ํธ์คํ ์ ์ฒด๋ก๋ถํฐ ์ ์ฉ์ ๋นํ ์ ์์ต๋๋ค.
์ด ๋ชจ๋ ์ํ์ด ์ ๋ง๋ก ํ์ํฉ๋๊น? ์ง๊ณผ ์ง์ฅ IP๋ฅผ ํ์ดํธ๋ฆฌ์คํธ์ ์ถ๊ฐํ์ธ์. ๋์ ์ด๋๋ผ๋ ํธ์คํ ์ ์ฒด์ ๊ด๋ฆฌ ํจ๋, ์น ์ฝ์์ ํตํด ๋ก๊ทธ์ธํ๊ณ ๋ค๋ฅธ ๊ฒ์ ์ถ๊ฐํ๋ฉด ๋ฉ๋๋ค.
์ ๋ 15๋ ๋์ IT ์ธํ๋ผ๋ฅผ ๊ตฌ์ถํ๊ณ ๋ณดํธํด ์์ต๋๋ค. ๋๋ ๋ชจ๋ ์ฌ๋์๊ฒ ๊ฐ๋ ฅํ ์ถ์ฒํ๋ ๊ท์น์ ๊ฐ๋ฐํ์ต๋๋ค. ํ์ดํธ๋ฆฌ์คํธ ์์ด๋ ์ด๋ค ํฌํธ๋ ์ธ์์ ํ์ด๋์์๋ ์ ๋ฉ๋๋ค..
์๋ฅผ ๋ค์ด ๊ฐ์ฅ ์์ ํ ์น ์๋ฒ***๋ CDN/WAF์ ๋ํด์๋ง 80๊ณผ 443์ ์ฌ๋ ์๋ฒ์ ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์๋น์ค ํฌํธ(ssh, netdata, bacula, phpmyadmin)๋ ์ต์ํ ํ์ดํธ๋ฆฌ์คํธ ๋ค์ ์์ด์ผ ํ๋ฉฐ, VPN ๋ค์๋ ํจ์ฌ ๋ ๋ค์ ์์ด์ผ ํฉ๋๋ค. ๊ทธ๋ ์ง ์์ผ๋ฉด ์์๋ ์ํ์ด ์์ต๋๋ค.
๊ทธ๊ฒ์ด ๋ด๊ฐ ๋งํ๊ณ ์ถ์ ์ ๋ถ์ ๋๋ค. ํฌํธ๋ฅผ ๋ซ์๋์ธ์!
- (1) Upd1:
์ฌ๊ธฐ์ ๋ฉ์ง ๋ฒ์ฉ ๋น๋ฐ๋ฒํธ๋ฅผ ํ์ธํ ์ ์์ต๋๋ค(๋ชจ๋ ์๋น์ค์์ ์ด ๋น๋ฐ๋ฒํธ๋ฅผ ์์์ ๋น๋ฐ๋ฒํธ๋ก ๋ฐ๊พธ์ง ์๊ณ ๋ ์ด ์์ ์ ์ํํ์ง ๋ง์ญ์์ค.), ๋ณํฉ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ํ์๋๋์ง ์ฌ๋ถ.๊ทธ๋ฆฌ๊ณ ์ฌ๊ธฐ ํดํน๋นํ ์๋น์ค ์, ์ด๋ฉ์ผ์ด ํฌํจ๋ ์์น๋ฅผ ํ์ธํ ์ ์์ผ๋ฉฐ ์ด์ ๋ฐ๋ผ ๋ฉ์ง ๋ฒ์ฉ ๋น๋ฐ๋ฒํธ๊ฐ ์์๋์๋์ง ํ์ธํ ์ ์์ต๋๋ค. - (2) Amazon์ ์ ์ฉ์ผ๋ก LightSail์ ์ต์ํ์ ์ค์บ์ ์ํํฉ๋๋ค. ๋ถ๋ช ํ ๊ทธ๋ค์ ๊ทธ๊ฒ์ ์ด๋ป๊ฒ๋ ํํฐ๋งํฉ๋๋ค.
- (3) ํจ์ฌ ๋ ์์ ํ ์น ์๋ฒ๋ ์ ์ฉ ๋ฐฉํ๋ฒฝ ๋ค์ ์๋ ์์ฒด WAF์ด์ง๋ง ์ฌ๊ธฐ์๋ ๊ณต๊ฐ VPS/์ ์ฉ์ ๋ํด ์ด์ผ๊ธฐํ๊ณ ์์ต๋๋ค.
- (4) ์ธ๊ทธ๋จผํธ๋ง.
- (5) ํ์ด์ดํ.
๋ฑ๋ก๋ ์ฌ์ฉ์๋ง ์ค๋ฌธ ์กฐ์ฌ์ ์ฐธ์ฌํ ์ ์์ต๋๋ค.
ํฌํธ๊ฐ ํ์ด๋์ ์๋์?
-
ํญ์
-
๋๋๋ก
-
์ด๋จธ ๋๋๋ค
-
๋ชจ๋ฅด๊ฒ ์ด, ์ ์ฅ
54๋ช
์ ์ฌ์ฉ์๊ฐ ํฌํํ์ต๋๋ค. 6๋ช
์ ์ฌ์ฉ์๊ฐ ๊ธฐ๊ถํ์ต๋๋ค.
์ถ์ฒ : habr.com