แ„€แ…ฆแ„‹แ…ตแ†ทแ„Œแ…ตแ†ซแ„€แ…ฆแ„‹แ…ตแ†ทแ„Œแ…ขแ†ท/
์˜คโ˜๏ธ์™„ 04 - ์„œ๋น„์Šค์™€ ๋‚˜๐Ÿงข
: ๊ตฌ๋…ํ•ด์ง€์™€ ํšŒ์›ํƒˆํ‡ด, ๊ทธ ํ›„...

๋งค์ผ ๋งค์ผ์ด ํˆฌ์Ÿ๊ณผ๋„ ๊ฐ™์€๋ฐ์š”. ๋‹น์‹ ์ด ํˆฌ์Ÿ์—์„œ ๋ฉ‹๋“œ๋Ÿฌ์ง€๊ฒŒ ์Šน๋ฆฌํ•˜๋˜์ง€, ์žฅ๋ ฌํ•˜๊ฒŒ ํŒจ๋ฐฐํ•˜๊ณ  ๋Œ์•„์˜ค๋˜์ง€ ์ง‘์— ๋Œ์•„์˜ค๋ฉด ํฌ๊ทผํ•˜๊ณ  ๋”ฐ๋œปํ•œ ์นจ๋Œ€์™€ ์ง‘์ด ๋‹น์‹ ์„ ๋งž์•„์ฃผ๊ณ  ์žˆ๋‚˜์š”?
๋„คํŠธ์›Œํฌ์˜ ๋ถ•๊ดด๋Š” ๋ฏธ๋ž˜์˜ ์‚ฌ๊ฑด์ด ์•„๋‹์ง€๋„ ๋ชจ๋ฆ…๋‹ˆ๋‹ค. ์ง€๊ธˆ ํ˜„์žฌ ๋ฒŒ์–ด์ง€๊ณ  ์žˆ๋Š” ์ผ์ด์ฃ . ๋ชจ๋“  ๊ฒƒ์ด ๋‹ค ํƒ€๋ฒ„๋ฆฌ๊ธฐ ์ „์— ๋‚จ์•„์žˆ๋Š” ๋ช‡๊ฐ€์ง€ ํŠœํ† ๋ฆฌ์–ผ๊ณผ ์ฝ”๋“œ ์กฐ๊ฐ๋“ค์„ ์–ด์„œ ๋ชจ์•„-๋ชจ์•„์„œ ์šฐ๋ฆฌ๋“ค์˜ ์•„๋Š‘ํ•œ ์ง‘์„ ๋งŒ๋“ค์–ด์•ผ ํ•ด์š”.
๊ทธ ๋ˆ„๊ตฌ๋„ ์Šน๋ฆฌํ•  ์ˆ˜ ์—†๋Š” ํŒจ๋ฐฐ๊ฐ€ ๋งŒ์—ฐํ•œ ์„ธ์ƒ์ด ๋„๋ž˜ํ–ˆ์„๋•Œ์—๋„ ๊ณ ๋‹ฌํ”ˆ ๋ชธ์„ ๋ˆ„์ด๊ณ  ์‰ด ์ˆ˜ ์žˆ๋Š” ์•ˆ์‹์ฒ˜์™€ ๊ฐ™์€ ํ™ˆ์„œ๋ฒ„๐Ÿ ๋ฅผ ๋งŒ๋“œ๋Š” ๊ณผ์ •, ํ•จ๊ป˜ ํ•˜์‹ค๋ž˜์š”?

#์Šคํ„ฐ๋”” #๋ฆฌ์„œ์น˜ #ํ•ด์ปค #์•„ํ‹ฐ์ŠคํŠธ #ํ•ด์ปค์•„ํ‹ฐ์ŠคํŠธ

๐ŸŒณ์ฒซ ๋ชจ์ž„ ๋‚ ์งœ : 5์›” 17์ผ (๊ธˆ) ์˜คํ›„ 7์‹œ-์˜คํ›„ 9์‹œ
๐ŸŒณ์‹œ์ฆŒ1 ์ฐธ๊ฐ€๋น„ : 8๋งŒ์› (4ํšŒ)
๐ŸŒณ์žฅ์†Œ : ์šฐ๋ฃจ๋ฃจ (ํ™์ œ์ฒœ๋กœ6๊ธธ 33, 2์ธต)
๐ŸŒณ์ค€๋น„๋ฌผ : ๋…ธํŠธ๋ถ, ์„œ๋ฒ„์šฉ ์ปดํ“จํ„ฐ (๋ฐฉ๊ตฌ์„์— ๋‚ก์€ pc ๋˜๋Š” ์•ˆ์“ฐ๋Š” ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด ๋“ฑ ๊ฐ€๋Šฅ), ์ธํ„ฐ๋„ท ํšŒ์„ 

๐Ÿงข<์„œ๋น„์Šค์™€ ๋‚˜>๋Š” ์‹œ์ฆŒ 1๊ณผ ์‹œ์ฆŒ 2๋กœ ๋‚˜๋ˆ„์–ด์„œ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฒˆ์— ์‹œ์ฆŒ1(4ํšŒ) ์ฐธ์—ฌ์ž๋ฅผ ๋ชจ์ง‘ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿš์„œ๋ฒ„ ๋ฐ ๋ฆฌ๋ˆ…์Šค ์ฒซ๊ฑธ์Œ ์ฝ”์Šค์ž…๋‹ˆ๋‹ค. ๋ˆ„๊ตฌ๋‚˜ ์ฐธ์—ฌ๊ฐ€๋Šฅ.


๐Ÿš๊ณผ์ • ๋กœ๋“œ๋งต

(์‹œ์ฆŒ1)
1โšพ๏ธ ํ™ˆ๊ทธ๋ผ์šด๋“œ (๋กœ์ปฌ ๋„คํŠธ์›Œํฌ) - ์ต์ˆ™ํ•œ ๊ณณ์—์„œ ์‹œ์ž‘
2โšพ๏ธ ์žฅ์™ธ ํ™ˆ๋Ÿฐ (๊ธ€๋กœ๋ฒŒ ๋„คํŠธ์›Œํฌ) - ๋„๋ฉ”์ธ ์—ฐ๊ฒฐ & ๋ณด์•ˆ ์„œ๋ฒ„๋˜๊ธฐ (ssl ์ธ์ฆ) ์‹œ์—ฐ
3โšพ๏ธ ๊ธ€๋กœ๋ธŒ์™€ ๋ฐฐํŠธ - ์ž๊ธฐ ์„œ๋ฒ„ ์ปดํ“จํ„ฐ ๋งŒ๋“ค๊ธฐ (linux)
4โšพ๏ธ ๊ธฐ๋ณธ๊ธฐ ํ›ˆ๋ จ - ์œ ์ €/ํผ๋ฏธ์…˜ ๊ด€๋ฆฌ & shell๊ณผ systemd (linux)

(ํ™ˆํŠธ)๐Ÿ“ - ์„œ๋ฒ„ ์„ค์น˜, ๊ณต์œ ๊ธฐ ์›๊ฒฉ๊ด€๋ฆฌ ๋ชจ๋“œ, ssh ์ ‘์†

(์‹œ์ฆŒ2 ๋ฏธ๋ฆฌ๋ณด๊ธฐ)
5โšพ๏ธ ์ œ๊ตฌ๋ ฅ (์„œ๋น„์Šค ์‹œ์ž‘ํ•˜๊ธฐ) - ๋„๋ฉ”์ธ ์—ฐ๊ฒฐ + nginx + filebrowser
6โšพ๏ธ ๋งˆ์ด๋ณผ (์„œ๋น„์Šค ๊ตณํžˆ๊ธฐ) - ๋ณด์•ˆ ์„œ๋ฒ„๋˜๊ธฐ (ssl ์ธ์ฆ) + icecast2 (์›น ๋ผ๋””์˜ค)
7โšพ๏ธ ๋„๋ฃจ (์„œ๋ฒ„ ์†Œํ™˜์ˆ ) - writefreely (language:go)
8โšพ๏ธ ๋งŒ๋ฃจํ™ˆ๋Ÿฐ (์„œ๋ฒ„ ์šธํ‹ฐ๋งˆ) - etherpad (platform: node.js)

๐Ÿ–์‹œ์ฆŒ1 

1โšพ๏ธ ํ™ˆ๊ทธ๋ผ์šด๋“œ (๋กœ์ปฌ ๋„คํŠธ์›Œํฌ) - ์ต์ˆ™ํ•œ ๊ณณ์—์„œ ์‹œ์ž‘
๐Ÿ“๋กœ์ปฌ์•ฑ - ์ผ๋‹จ ๊ทธ๋ƒฅ ๋…ธํŠธ๋ถ์—์„œ ํ•ด๋ณด๊ธฐ + ๋กœ์ปฌ์—์„œ ์„œ๋กœ์˜ ์•ฑ ์ ‘๊ทผ.
1) ์ •์ ์ธ ์›นํŽ˜์ด์ง€ ์„œ๋น„์Šค์™€ ๋‚˜
2) ํŒŒ์ผ์„œ๋ฒ„ filebrowser์™€ ๋‚˜
3) ๋˜๋‹ค๋ฅธ ์„œ๋น„์Šค์™€ ๋‚˜

2โšพ๏ธ ์žฅ์™ธ ํ™ˆ๋Ÿฐ (๊ธ€๋กœ๋ฒŒ ๋„คํŠธ์›Œํฌ) - ๋„๋ฉ”์ธ ์—ฐ๊ฒฐ & ๋ณด์•ˆ ์„œ๋ฒ„๋˜๊ธฐ (ssl ์ธ์ฆ)
๐Ÿ“๊ธ€๋กœ๋ฒŒ์•ฑ(nginx) - ์™ธ๋ถ€์—์„œ ์ ‘๊ทผ(reverse proxy), ์„œ๋ธŒ๋„๋ฉ”์ธ(abc.ururu.cloud) ์‚ฌ์šฉํ•ด๋ณด๊ธฐ
1) ์„œ๋ธŒ๋„๋ฉ”์ธ ์„ค์ •ํ•˜๋Š” ๋ฒ• (์‹œ์—ฐ๐Ÿ“บ)
2) ๋ณด์•ˆ์„œ๋ฒ„๋˜๊ธฐ certbot ์‚ฌ์šฉ (์‹œ์—ฐ๐Ÿ“บ)

3โšพ๏ธ ๊ธ€๋กœ๋ธŒ์™€ ๋ฐฐํŠธ - ์ž๊ธฐ ์„œ๋ฒ„ ์ปดํ“จํ„ฐ ๋งŒ๋“ค๊ธฐ (linux)
๐Ÿ“๋‚˜์˜ ์„œ๋ฒ„ ๋“ฑํŒ - ๋ฐ๋น„์•ˆ(debian) ๊น”๊ณ  ์‹œ์ž‘, ๋ฆฌ๋ˆ…์Šค101
1) ๋„คํŠธ์›Œํฌ ๋กœ๊ทธ์ธ (ssh) ์„ค์ •, key ๋งŒ๋“ค๊ธฐ & ๊ตํ™˜ํ•˜๊ธฐ
2) ์—…๋ฐ์ดํŠธ/์—…๊ทธ๋ ˆ์ด๋“œ ๋“ฑ ์„œ๋ฒ„๊ด€๋ฆฌํ•˜๊ธฐ

4โšพ๏ธ ๊ธฐ๋ณธ๊ธฐ ํ›ˆ๋ จ - ์œ ์ €/ํผ๋ฏธ์…˜ ๊ด€๋ฆฌ & shell๊ณผ systemd (linux)
๐Ÿ“์—ฐ์Šต ๋˜ ์—ฐ์Šต
1) ์œ ์ €/ํผ๋ฏธ์…˜ ์ดํ•ดํ•˜๊ณ  ํ•ด๋ณด๊ธฐ
2) ๊ฐ„๋‹จํ•œ shell๐Ÿš ์Šคํฌ๋ฆฝํŠธ + systemd (๋ฆฌ๋ˆ…์Šค ์„œ๋น„์Šค ๊ด€๋ฆฌ์ž) ์ดํ•ดํ•˜๊ณ  ํ•ด๋ณด๊ธฐ
3) ๋žœ์ž‘๋™ ํ…Œ์ŠคํŠธ - ์ง‘์—๊ฐ€์„œ ์„ค์น˜ํ•˜๊ธฐ์ „์— ๊ผญ ํ™•์ธ!
(ํ™ˆํŠธ)๐Ÿ“ - ๊ฐ์ž ์ง‘์—๊ฐ€์„œ ๋งŒ๋“  ์„œ๋ฒ„ ์„ค์น˜, ๊ณต์œ ๊ธฐ ์›๊ฒฉ๊ด€๋ฆฌ ๋ชจ๋“œ ์„ค์ • + ssh ์ ‘์† ํ™•์ธ ํ›„ ์‹œ์ฆŒ2 ์ค€๋น„์™„๋ฃŒ!


๐Ÿ–์‹œ์ฆŒ2 

5โšพ๏ธ ์ œ๊ตฌ๋ ฅ (์„œ๋น„์Šค ์‹œ์ž‘ํ•˜๊ธฐ) - ๋„๋ฉ”์ธ ์—ฐ๊ฒฐ + nginx + filebrowser (filebrowser์˜ ํ™œ์šฉํŽธ: ์™ธ์žฅํ•˜๋“œ ์—ฐ๊ฒฐํ•˜๊ธฐ๋ผ๋˜๊ฐ€.. shell ์“ฐ๊ธฐ ๋“ฑ๋“ฑ? ๋‹ค๋ฅธ ์‚ฌ์šฉ์ž ๋ฐ›๊ธฐ ๋“ฑ๋“ฑ..)
=> nginx(์›น์„œ๋ฒ„) ๋ฐฐ์šฐ๊ธฐ -> ์›นํŽ˜์ด์ง€ ์„œ๋น„์Šคํ•˜๊ธฐ ์›นํŽ˜์ด์ง€ ์„œ๋น„์Šคํ•˜๊ธฐ ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค!์ข‹์Šต๋‹ˆ๋‹น~ :D

6)โšพ๏ธ ๋งˆ์ด๋ณผ (์„œ๋น„์Šค ๊ตณํžˆ๊ธฐ) - ๋ณด์•ˆ ์„œ๋ฒ„๋˜๊ธฐ (ssl ์ธ์ฆ) + icecast2 (์›น ๋ผ๋””์˜ค)
=> ๋„๋ฉ”์ธ ์—ฐ๊ฒฐ + ssl ์ธ์ฆ ๊นŒ์ง€ ํ•ด๋ณด๊ธฐ + etherpad ๊ด€๋ฆฌ์ž ๋ชจ๋“œ + ํ”Œ๋Ÿฌ๊ทธ์ธ ์„ค์น˜

7โšพ๏ธ ๋„๋ฃจ (์„œ๋ฒ„ ์†Œํ™˜์ˆ ) - writefreelydendrite matrix (language:go) (fediverse chat service) ๋˜๋Š” peertube?

8โšพ๏ธ ๋งŒ๋ฃจํ™ˆ๋Ÿฐ (์„œ๋ฒ„ ์šธํ‹ฐ๋งˆ) - etherpad (platform: node.js)glitch.com node.js ์•ฑ ๋งŒ๋“ค๊ธฐ.. MobMuPlat + websocket ์†Œ๊ฐœ