Alpine ํ”„๋กœ์ ํŠธ GitLab ์„œ๋ฒ„ ๊ณต๊ฒฉ ๋ฐœ์ƒ Linux

์•ŒํŒŒ์ธ ์œ ํ†ต ๊ฐœ๋ฐœ์ž Linux ๊ทธ๋“ค์€ APK ํŒจํ‚ค์ง€ ๊ด€๋ฆฌ์ž, ๋นŒ๋“œ ๋„๊ตฌ, ์ธํ”„๋ผ ๊ตฌ์„ฑ ์š”์†Œ ๋ฐ ํŒจํ‚ค์ง€ ๋นŒ๋“œ ์Šคํฌ๋ฆฝํŠธ(aport) ์ž‘์—…์ด ์ด๋ฃจ์–ด์ง€๋Š” ํ˜‘์—… ๊ฐœ๋ฐœ ํ”Œ๋žซํผ์ธ gitlab.alpinelinux.org์— ๋Œ€ํ•œ ํ•ดํ‚น ์‹œ๋„์— ๊ด€ํ•œ ์ •๋ณด๋ฅผ ๊ณต๊ฐœํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ณต๊ฒฉ์€ Ruby ์ •๊ทœ ํ‘œํ˜„์‹ ์—”์ง„์˜ ์ •์ˆ˜ ์˜ค๋ฒ„ํ”Œ๋กœ๋กœ ์ธํ•ด ๋ฐœ์ƒํ•˜๋Š” GitLab ํ”Œ๋žซํผ์˜ ์ทจ์•ฝ์ ์„ ์•…์šฉํ•˜์—ฌ ์ด๋ฃจ์–ด์กŒ์Šต๋‹ˆ๋‹ค. ํ•ดํ‚น ์„ฑ๊ณต์˜ ์ฆ๊ฑฐ๋‚˜ ํ”์ ์€ ๋ฐœ๊ฒฌ๋˜์ง€ ์•Š์•˜์ง€๋งŒ, ์ทจ์•ฝ์  ์•…์šฉ ๊ฐ€๋Šฅ์„ฑ์„ ์™„์ „ํžˆ ๋ฐฐ์ œํ•  ์ˆ˜ ์—†์œผ๋ฏ€๋กœ GitLab ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ์ž ์žฌ์ ์œผ๋กœ ์†์ƒ๋œ ๊ฒƒ์œผ๋กœ ๊ฐ„์ฃผ๋˜์–ด ์ปจํ…Œ์ด๋„ˆ์˜ ๋ชจ๋“  ๋‚ด์šฉ์„ ์ฒ˜์Œ๋ถ€ํ„ฐ ๋‹ค์‹œ ๊ตฌ์ถ•ํ•˜๊ณ  ์‚ฌ์šฉ์ž๋“ค์„ ์œ„ํ•œ ๋น„๋ฐ€๋ฒˆํ˜ธ ์žฌ์„ค์ • ์ ˆ์ฐจ๋ฅผ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค.

์•ŒํŒŒ์ธ ์ธํ”„๋ผ ๊ด€๋ฆฌ์ž Linux ํƒ€์‚ฌ ํŒŒ์ผ, ์˜์‹ฌ์Šค๋Ÿฌ์šด ์‹คํ–‰ ํ”„๋กœ์„ธ์Šค, ๋น„์ •์ƒ์ ์ธ API ํ˜ธ์ถœ, ์„ค์ • ๋˜๋Š” ์‹œ์Šคํ…œ ํŒŒ์ผ ๋ณ€๊ฒฝ, ๋Œ€๋Ÿ‰ ๋ฐ์ดํ„ฐ ์ถ”์ถœ์—์„œ ํ”ํžˆ ๋ฐœ์ƒํ•˜๋Š” ๋ถ€ํ•˜ ๊ธ‰์ฆ ๋“ฑ์€ ๊ฐ์ง€๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. aports ์ €์žฅ์†Œ, ํŒจํ‚ค์ง€ ๋ฐ ๋ฆด๋ฆฌ์Šค ํŒŒ์ผ์˜ ๋ฌด๊ฒฐ์„ฑ ๋ถ„์„๊ณผ ์™ธ๋ถ€ ๋นŒ๋“œ ์„œ๋ฒ„ ๋ฐ ๊ฐœ๋ฐœ์ž ์‹œ์Šคํ…œ์˜ ์‚ฌ๋ณธ๊ณผ์˜ ๋Œ€์กฐ ๊ฒ€์ฆ ๊ฒฐ๊ณผ, ์ˆจ๊ฒจ์ง„ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์€ ๋ฐœ๊ฒฌ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

๋‚˜๊ฐ€๋Š” ๋„คํŠธ์›Œํฌ ์—ฐ๊ฒฐ์— ๋Œ€ํ•œ ์ •๋ณด ๋ถ€์กฑ, ๋กœ๊ทธ ์ˆœํ™˜ ๊ณผ์ •์—์„œ ์ผ๋ถ€ ๋กœ๊ทธ ์‚ญ์ œ(์˜ˆ: cron ๋กœ๊ทธ), ์›น ์„œ๋ฒ„ ๋กœ๊ทธ์˜ ์ƒ์„ธ ์ •๋ณด ๋ถ€์กฑ(ํฌ๋ž˜์‹œ๋ฅผ ๋ฐœ์ƒ์‹œํ‚ค์ง€ ์•Š๋Š” ์ต์Šคํ”Œ๋กœ์ž‡์˜ ์„ฑ๊ณต์ ์ธ ์‚ฌ์šฉ์€ ๋กœ๊ทธ์— ๋ฐ˜์˜๋˜์ง€ ์•Š์Œ)์œผ๋กœ ์ธํ•ด ๊ณต๊ฒฉ ์„ฑ๊ณต ๊ฐ€๋Šฅ์„ฑ์„ ์™„์ „ํžˆ ๋ฐฐ์ œํ•  ์ˆ˜๋Š” ์—†์Šต๋‹ˆ๋‹ค.
๊ณต๊ฒฉ์ด ์„ฑ๊ณตํ•˜๋ฉด ๊ณต๊ฒฉ์ž๋Š” ๋ชจ๋“  GitLab ์‚ฌ์šฉ์ž์— ๋Œ€ํ•œ ๋ฐ์ดํ„ฐ(๋น„๋ฐ€๋ฒˆํ˜ธ ํ•ด์‹œ, ์ด๋ฉ”์ผ ๋“ฑ)๊ฐ€ ํฌํ•จ๋œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. IP ์ฃผ์†Œ ํ™˜๊ฒฝ ๋ณ€์ˆ˜ ๋ฐ ์ง€์†์  ํ†ตํ•ฉ ์‹œ์Šคํ…œ์˜ ํ† ํฐ, 2๋‹จ๊ณ„ ์ธ์ฆ ์ฝ”๋“œ, ๊ฐœ์ธ ์•ก์„ธ์Šค ํ† ํฐ์˜ ํ•ด์‹œ๊ฐ’, ๊ฐœ์ธ ์ €์žฅ์†Œ ๋‚ด์šฉ, ๊ธฐ๋ฐ€ ๋…ผ์˜ ๋‚ด์šฉ ๋“ฑ. ๊ณต๊ฒฉ ๋Œ€์ƒ ์„œ๋ฒ„์—์„œ ๋ฆด๋ฆฌ์Šค ๋ฐ ํŒจํ‚ค์ง€์— ๋Œ€ํ•œ ๋””์ง€ํ„ธ ์„œ๋ช…์„ ์ƒ์„ฑํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ํ‚ค. ์„ฌ๊ธฐ๋Š” ์‚ฌ๋žŒ ์ €์žฅ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

ํ•ด๋‹น ์ทจ์•ฝ์ ์„ ์•…์šฉํ•˜๋ ค๋Š” ์ฒซ ๋ฒˆ์งธ ์‹œ๋„๋Š” 10์›” 20์ผ๊ณผ 21์ผ์— ๊ธฐ๋ก๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๊ณต๊ฒฉ์ž๋Š” GitLab ๊ณ„์ •์„ ๋“ฑ๋กํ•˜๊ณ  ์ˆ˜์ •๋œ ์„ค์ •์„ ์ง€์†์  ํ†ตํ•ฉ ์‹œ์Šคํ…œ์œผ๋กœ ์ „์†กํ•˜๋ ค๊ณ  ์‹œ๋„ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋กœ๊ทธ์—๋Š” GitLab ํ”„๋กœ์„ธ์Šค ์ถฉ๋Œ์ด 8๊ฑด ๊ธฐ๋ก๋˜์—ˆ์œผ๋ฉฐ, ๊ทธ์ค‘ 4๊ฑด์€ ํ•ด๋‹น ์ทจ์•ฝ์  ์•…์šฉ๊ณผ ๊ด€๋ จ์ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๊ณต๊ฒฉ์˜ 1๋‹จ๊ณ„๋Š” ์„ฑ๊ณตํ–ˆ์ง€๋งŒ, 2๋‹จ๊ณ„๋Š” ์‹คํŒจํ–ˆ์Šต๋‹ˆ๋‹ค.

๊ณต๊ฒฉ ๋‹น์‹œ ์ปจํ…Œ์ด๋„ˆ๋Š” ์ทจ์•ฝํ•œ ๋ฒ„์ „์˜ GitLab 19.3.4๋ฅผ ์‹คํ–‰ ์ค‘์ด์—ˆ์œผ๋ฉฐ, 10์›” 22์ผ์— GitLab 19.3.6์œผ๋กœ ์—…๋ฐ์ดํŠธ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ Alpine ๊ด€๋ฆฌ์ž๋Š” ํ•ด๋‹น ์ˆ˜์ • ์‚ฌํ•ญ์ด ๊ณต์‹ GitLab 19.3.6 ์„ค์น˜ ํŒจํ‚ค์ง€์—๋งŒ ํฌํ•จ๋˜๊ณ  GitLab ์ฝ”๋“œ ์ž์ฒด์—๋Š” ํฌํ•จ๋˜์ง€ ์•Š์•˜๋‹ค๋Š” ์ ์„ ๊ณ ๋ คํ•˜์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค. ์ทจ์•ฝ์ ์€ Ruby ํˆด์ฒด์ธ์— ์กด์žฌํ–ˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ์ปจํ…Œ์ด๋„ˆ๋Š” ๊ณ„์†ํ•ด์„œ ์ด์ „ ๋ฒ„์ „์˜ Ruby ํˆด์ฒด์ธ์„ ์‚ฌ์šฉํ–ˆ๊ณ , ์ทจ์•ฝ์ ์€ ํŒจ์น˜๋˜์ง€ ์•Š์€ ์ฑ„๋กœ ๋‚จ์•„ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

๋‚˜๋จธ์ง€ ์ทจ์•ฝ์ ์€ 10์›” 26์ผ์—์•ผ ๋ฐœ๊ฒฌ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋กœ๊ทธ ๋ถ„์„ ๊ฒฐ๊ณผ ๊ณต๊ฒฉ์ž๋“ค์€ 10์›” 25์ผ๊ณผ 26์ผ์— ๊ณต๊ฒฉ์„ ์žฌ๊ฐœํ•œ ๊ฒƒ์œผ๋กœ ๋‚˜ํƒ€๋‚ฌ์Šต๋‹ˆ๋‹ค. 10์›” 27์ผ์—๋Š” GitLab์— ๋Œ€ํ•œ ์ œ3์ž ์ ‘๊ทผ์ด ์ œํ•œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. 10์›” 28์ผ์—๋Š” ์ฝ˜ํ…์ธ ๊ฐ€ ๋ณต๊ตฌ๋˜๊ณ  ๋ชจ๋“  ๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ์žฌ์„ค์ •๋˜์—ˆ์œผ๋ฉฐ(์‚ฌ์šฉ์ž๋Š” ๋น„๋ฐ€๋ฒˆํ˜ธ ์ฐพ๊ธฐ ์ ˆ์ฐจ๋ฅผ ํ†ตํ•ด ์ƒˆ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์„ค์ •ํ•ด์•ผ ํ•จ), ์ ‘๊ทผ ํ‚ค๊ฐ€ ๊ต์ฒด๋˜์—ˆ์Šต๋‹ˆ๋‹ค. 10์›” 29์ผ์—๋Š” ์—…๋ฐ์ดํŠธ๋œ ๋‚ด์šฉ์ด ๊ฒŒ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์„œ๋ฒ„ ํ•ด๋‹น ํ”„๋กœ์ ํŠธ์—์„œ ๊ด€๋ฆฌํ•˜๋Š” Docker ์ปจํ…Œ์ด๋„ˆ alpinelinux/gitlab์€ 10์›” 27์ผ๊นŒ์ง€ ์ทจ์•ฝํ•œ ์ƒํƒœ์˜€์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

DDoS ๋ณดํ˜ธ, VPS VDS ์„œ๋ฒ„๊ฐ€ ์žˆ๋Š” ์‚ฌ์ดํŠธ๋ฅผ ์œ„ํ•œ ์•ˆ์ •์ ์ธ ํ˜ธ์ŠคํŒ… ๊ตฌ์ž… ๐Ÿ”ฅ DDoS ๊ณต๊ฒฉ ๋ฐฉ์ง€ ๊ธฐ๋Šฅ์ด ํƒ‘์žฌ๋œ ์•ˆ์ •์ ์ธ ์›น์‚ฌ์ดํŠธ ํ˜ธ์ŠคํŒ…, VPS ๋ฐ VDS ์„œ๋ฒ„๋ฅผ ๊ตฌ๋งคํ•˜์„ธ์š” | ProHoster