Cloud for Charities: ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ๊ฐ€์ด๋“œ

Cloud for Charities: ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ๊ฐ€์ด๋“œ

์–ผ๋งˆ ์ „ Mail.Ru Cloud Solutions(MCS)์™€ Dobro Mail.Ru ์„œ๋น„์Šค๊ฐ€ ํ”„๋กœ์ ํŠธ๋ฅผ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค.์ž์„ ๋‹จ์ฒด๋ฅผ ์œ„ํ•œ ํด๋ผ์šฐ๋“œโ€ ๋•๋ถ„์— ๋น„์˜๋ฆฌ ์กฐ์ง์€ MCS ํด๋ผ์šฐ๋“œ ํ”Œ๋žซํผ์˜ ๋ฆฌ์†Œ์Šค๋ฅผ ๋ฌด๋ฃŒ๋กœ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž์„  ์žฌ๋‹จ "์„ ํ•จ์˜ ์‚ฐ์ˆ ยป ํ”„๋กœ์ ํŠธ์— ์ฐธ์—ฌํ•˜์—ฌ MCS ๊ธฐ๋ฐ˜ ์ธํ”„๋ผ์˜ ์ผ๋ถ€๋ฅผ ์„ฑ๊ณต์ ์œผ๋กœ ๋ฐฐํฌํ–ˆ์Šต๋‹ˆ๋‹ค.

๊ฒ€์ฆ์„ ํ†ต๊ณผํ•œ NPO๋Š” MCS๋กœ๋ถ€ํ„ฐ ๊ฐ€์ƒ ์šฉ๋Ÿ‰์„ ๋ฐ›์„ ์ˆ˜ ์žˆ์ง€๋งŒ ์ถ”๊ฐ€ ๊ตฌ์„ฑ์—๋Š” ํŠน์ • ์ž๊ฒฉ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์ด ์ž๋ฃŒ์—์„œ๋Š” ๋ฌด๋ฃŒ SSL ์ธ์ฆ์„œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ฃผ์š” ๊ธฐ๋ฐ˜ ์›น์‚ฌ์ดํŠธ์™€ ์—ฌ๋Ÿฌ ํ•˜์œ„ ๋„๋ฉ”์ธ์„ ์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•ด Ubuntu Linux ๊ธฐ๋ฐ˜ ์„œ๋ฒ„๋ฅผ ์„ค์ •ํ•˜๋Š” ๊ตฌ์ฒด์ ์ธ ์ง€์นจ์„ ๊ณต์œ ํ•˜๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค. ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์—๊ฒŒ ์ด๊ฒƒ์€ ๊ฐ„๋‹จํ•œ ์ง€์นจ์ด ๋  ๊ฒƒ์ด์ง€๋งŒ, ์šฐ๋ฆฌ์˜ ๊ฒฝํ—˜์ด ๋‹ค๋ฅธ ๋น„์˜๋ฆฌ ๋‹จ์ฒด๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๋‹ค๋ฅธ ๋น„์˜๋ฆฌ ๋‹จ์ฒด์—๋„ ๋„์›€์ด ๋˜๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.

FYI: MCS์—์„œ ๋ฌด์—‡์„ ์–ป์„ ์ˆ˜ ์žˆ๋‚˜์š”? CPU 4๊ฐœ, 32GB RAM, 1TB HDD, Ubuntu Linux OS, 500GB ๊ฐœ์ฒด ์Šคํ† ๋ฆฌ์ง€.

1๋‹จ๊ณ„: ๊ฐ€์ƒ ์„œ๋ฒ„ ์‹œ์ž‘

๋ณธ๋ก ์œผ๋กœ ๋“ค์–ด๊ฐ€ MCS ๊ฐœ์ธ ๊ณ„์ •์— ๊ฐ€์ƒ ์„œ๋ฒ„(์ผ๋ช… "์ธ์Šคํ„ด์Šค")๋ฅผ ์ƒ์„ฑํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์•ฑ ์Šคํ† ์–ด์—์„œ๋Š” ๋Œ€๋ถ€๋ถ„์˜ ์›น์‚ฌ์ดํŠธ๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ์„œ๋ฒ„ ์†Œํ”„ํŠธ์›จ์–ด(LAMP = Linux, Apache, MySQL, PHP) ์„ธํŠธ์ธ ๊ธฐ์„ฑํ’ˆ LAMP ์Šคํƒ์„ ์„ ํƒํ•˜์—ฌ ์„ค์น˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

Cloud for Charities: ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ๊ฐ€์ด๋“œ
Cloud for Charities: ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ๊ฐ€์ด๋“œ
Cloud for Charities: ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ๊ฐ€์ด๋“œ
์ ์ ˆํ•œ ์„œ๋ฒ„ ๊ตฌ์„ฑ์„ ์„ ํƒํ•˜๊ณ  ์ƒˆ SSH ํ‚ค๋ฅผ ๋งŒ๋“ญ๋‹ˆ๋‹ค. "์„ค์น˜" ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜๋ฉด ์„œ๋ฒ„ ๋ฐ LAMP ์Šคํƒ ์„ค์น˜๊ฐ€ ์‹œ์ž‘๋˜๋ฉฐ ์‹œ๊ฐ„์ด ๋‹ค์†Œ ๊ฑธ๋ฆฝ๋‹ˆ๋‹ค. ์‹œ์Šคํ…œ์€ ๋˜ํ•œ ์ฝ˜์†”์„ ํ†ตํ•ด ๊ฐ€์ƒ ๋จธ์‹ ์„ ๊ด€๋ฆฌํ•˜๊ณ  ์ €์žฅํ•˜๊ธฐ ์œ„ํ•ด ์ปดํ“จํ„ฐ์— ๊ฐœ์ธ ํ‚ค๋ฅผ ๋‹ค์šด๋กœ๋“œํ•  ๊ฒƒ์„ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค.

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์„ค์น˜ํ•œ ํ›„ ์ฆ‰์‹œ ๋ฐฉํ™”๋ฒฝ์„ ์„ค์ •ํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ด ์ž‘์—…์€ ๊ฐœ์ธ ๊ณ„์ •์—์„œ๋„ ์ˆ˜ํ–‰๋ฉ๋‹ˆ๋‹ค. "ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ… -> ๊ฐ€์ƒ ๋จธ์‹ " ์„น์…˜์œผ๋กœ ์ด๋™ํ•˜์—ฌ "๋ฐฉํ™”๋ฒฝ ์„ค์ •"์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

Cloud for Charities: ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ๊ฐ€์ด๋“œ
ํฌํŠธ 80 ๋ฐ 9997์„ ํ†ตํ•ด ๋“ค์–ด์˜ค๋Š” ํŠธ๋ž˜ํ”ฝ์— ๋Œ€ํ•œ ๊ถŒํ•œ์„ ์ถ”๊ฐ€ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ๋‚˜์ค‘์— SSL ์ธ์ฆ์„œ๋ฅผ ์„ค์น˜ํ•˜๊ณ  phpMyAdmin์„ ์‚ฌ์šฉํ•˜๋Š” ๋ฐ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ์ ์œผ๋กœ ๊ทœ์น™ ์„ธํŠธ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค.

Cloud for Charities: ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ๊ฐ€์ด๋“œ
์ด์ œ SSH ํ”„๋กœํ† ์ฝœ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ช…๋ น์ค„์„ ํ†ตํ•ด ์„œ๋ฒ„์— ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ ค๋ฉด ์ปดํ“จํ„ฐ์˜ SSH ํ‚ค์™€ ์„œ๋ฒ„์˜ ์™ธ๋ถ€ IP ์ฃผ์†Œ("๊ฐ€์ƒ ๋จธ์‹ " ์„น์…˜์—์„œ ์ฐพ์„ ์ˆ˜ ์žˆ์Œ)๋ฅผ ๊ฐ€๋ฆฌํ‚ค๋Š” ๋‹ค์Œ ๋ช…๋ น์„ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค.

$ ssh -i /ะฟัƒั‚ัŒ/ะบ/ะบะปัŽั‡ัƒ/key.pem ubuntu@<ip_ัะตั€ะฒะตั€ะฐ>

์„œ๋ฒ„์— ์ฒ˜์Œ ์—ฐ๊ฒฐํ•˜๋Š” ๊ฒฝ์šฐ ์ตœ์‹  ์—…๋ฐ์ดํŠธ๋ฅผ ๋ชจ๋‘ ์„ค์น˜ํ•˜๊ณ  ์žฌ๋ถ€ํŒ…ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ ค๋ฉด ๋‹ค์Œ ๋ช…๋ น์„ ์‹คํ–‰ํ•˜์„ธ์š”.

$ sudo apt-get update

์‹œ์Šคํ…œ์€ ์—…๋ฐ์ดํŠธ ๋ชฉ๋ก์„ ์ˆ˜์‹ ํ•˜๊ณ  ์ด ๋ช…๋ น์„ ์‚ฌ์šฉํ•˜์—ฌ ์„ค์น˜ํ•œ ํ›„ ์ง€์นจ์„ ๋”ฐ๋ฆ…๋‹ˆ๋‹ค.

$ sudo apt-get upgrade

์—…๋ฐ์ดํŠธ๋ฅผ ์„ค์น˜ํ•œ ํ›„ ์„œ๋ฒ„๋ฅผ ๋‹ค์‹œ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.

$ sudo reboot

2๋‹จ๊ณ„: ๊ฐ€์ƒ ํ˜ธ์ŠคํŠธ ์„ค์ •

๋งŽ์€ ๋น„์˜๋ฆฌ ๋‹จ์ฒด์—์„œ๋Š” ์—ฌ๋Ÿฌ ๋„๋ฉ”์ธ ๋˜๋Š” ํ•˜์œ„ ๋„๋ฉ”์ธ(์˜ˆ: ํ™๋ณด ์บ ํŽ˜์ธ์„ ์œ„ํ•œ ๊ธฐ๋ณธ ์›น์‚ฌ์ดํŠธ ๋ฐ ์—ฌ๋Ÿฌ ๋žœ๋”ฉ ํŽ˜์ด์ง€ ๋“ฑ)์„ ๋™์‹œ์— ์œ ์ง€ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ชจ๋“  ๊ฒƒ์€ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๊ฐ€์ƒ ํ˜ธ์ŠคํŠธ๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ํ•˜๋‚˜์˜ ์„œ๋ฒ„์— ํŽธ๋ฆฌํ•˜๊ฒŒ ๋ฐฐ์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋จผ์ € ๋ฐฉ๋ฌธ์ž์—๊ฒŒ ํ‘œ์‹œ๋  ์‚ฌ์ดํŠธ์— ๋Œ€ํ•œ ๋””๋ ‰ํ„ฐ๋ฆฌ ๊ตฌ์กฐ๋ฅผ ๋งŒ๋“ค์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋ช‡ ๊ฐ€์ง€ ๋””๋ ‰ํ„ฐ๋ฆฌ๋ฅผ ๋งŒ๋“ค์–ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

$ sudo mkdir -p /var/www/a-dobra.ru/public_html

$ sudo mkdir -p /var/www/promo.a-dobra.ru/public_html

๊ทธ๋ฆฌ๊ณ  ํ˜„์žฌ ์‚ฌ์šฉ์ž์˜ ์†Œ์œ ์ž๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.

$ sudo chown -R $USER:$USER /var/www/a-dobra.ru/public_html

$ sudo chown -R $USER:$USER /var/www/promo.a-dobra.ru/public_html

๋ณ€์ˆ˜ $USER ํ˜„์žฌ ๋กœ๊ทธ์ธํ•œ ์‚ฌ์šฉ์ž ์ด๋ฆ„์„ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค(๊ธฐ๋ณธ์ ์œผ๋กœ ์ด ์‚ฌ์šฉ์ž๋Š” ubuntu). ์ด์ œ ํ˜„์žฌ ์‚ฌ์šฉ์ž๋Š” ์ฝ˜ํ…์ธ ๋ฅผ ์ €์žฅํ•  public_html ๋””๋ ‰ํ„ฐ๋ฆฌ๋ฅผ ์†Œ์œ ํ•ฉ๋‹ˆ๋‹ค.

๋˜ํ•œ ๊ณต์œ  ์›น ๋””๋ ‰ํ„ฐ๋ฆฌ์™€ ์—ฌ๊ธฐ์— ํฌํ•จ๋œ ๋ชจ๋“  ํŒŒ์ผ ๋ฐ ํด๋”์— ๋Œ€ํ•œ ์ฝ๊ธฐ ์•ก์„ธ์Šค๊ฐ€ ํ—ˆ์šฉ๋˜๋„๋ก ๊ถŒํ•œ์„ ์•ฝ๊ฐ„ ํŽธ์ง‘ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ์‚ฌ์ดํŠธ ํŽ˜์ด์ง€๊ฐ€ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ํ‘œ์‹œ๋˜๋Š” ๋ฐ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

$ sudo chmod -R 755 /var/www

์ด์ œ ์›น ์„œ๋ฒ„๊ฐ€ ์ฝ˜ํ…์ธ ๋ฅผ ํ‘œ์‹œํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ๊ถŒํ•œ์„ ๊ฐ–๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ์ด์ œ ์‚ฌ์šฉ์ž๋Š” ํ•„์š”ํ•œ ๋””๋ ‰ํ„ฐ๋ฆฌ์— ์ฝ˜ํ…์ธ ๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

/var/www/html ๋””๋ ‰ํ† ๋ฆฌ์— index.php ํŒŒ์ผ์ด ์ด๋ฏธ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ์ƒˆ ๋””๋ ‰ํ† ๋ฆฌ์— ๋ณต์‚ฌํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ํ˜„์žฌ๋กœ์„œ๋Š” ์ด๊ฒƒ์ด ๋‚ด์šฉ์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค:

$ cp /var/www/html/index.php /var/www/a-dobra.ru/public_html/index.php

$ cp /var/www/html/index.php /var/www/promo.a-dobra.ru/public_html/index.php

์ด์ œ ์‚ฌ์šฉ์ž๊ฐ€ ๊ท€ํ•˜์˜ ์‚ฌ์ดํŠธ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์ธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ์œ„ํ•ด ๋จผ์ € Apache ์›น ์„œ๋ฒ„๊ฐ€ ๋‹ค๋ฅธ ๋„๋ฉ”์ธ์— ๋Œ€ํ•œ ์š”์ฒญ์— ์‘๋‹ตํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๊ฒฐ์ •ํ•˜๋Š” ๊ฐ€์ƒ ํ˜ธ์ŠคํŠธ ํŒŒ์ผ์„ ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค.

๊ธฐ๋ณธ์ ์œผ๋กœ Apache์—๋Š” ์‹œ์ž‘์ ์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ€์ƒ ํ˜ธ์ŠคํŠธ ํŒŒ์ผ 000-default.conf๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ๋ณต์‚ฌํ•˜์—ฌ ๊ฐ ๋„๋ฉ”์ธ์— ๋Œ€ํ•œ ๊ฐ€์ƒ ํ˜ธ์ŠคํŠธ ํŒŒ์ผ์„ ์ƒ์„ฑํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ํ•˜๋‚˜์˜ ๋„๋ฉ”์ธ์œผ๋กœ ์‹œ์ž‘ํ•˜์—ฌ ์ด๋ฅผ ๊ตฌ์„ฑํ•˜๊ณ  ๋‹ค๋ฅธ ๋„๋ฉ”์ธ์— ๋ณต์‚ฌํ•œ ๋‹ค์Œ ํ•„์š”ํ•œ ํŽธ์ง‘์„ ๋‹ค์‹œ ์ˆ˜ํ–‰ํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

Ubuntu์˜ ๊ธฐ๋ณธ ๊ตฌ์„ฑ์—์„œ๋Š” ๊ฐ ๊ฐ€์ƒ ํ˜ธ์ŠคํŠธ ํŒŒ์ผ์— *.conf ํ™•์žฅ์ž๊ฐ€ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ฒซ ๋ฒˆ์งธ ๋„๋ฉ”์ธ์˜ ํŒŒ์ผ์„ ๋ณต์‚ฌํ•˜๋Š” ๊ฒƒ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

$ sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/a-dobra.ru.conf

๋ฃจํŠธ ๊ถŒํ•œ์ด ์žˆ๋Š” ํŽธ์ง‘๊ธฐ์—์„œ ์ƒˆ ํŒŒ์ผ์„ ์—ฝ๋‹ˆ๋‹ค.

$ sudo nano /etc/apache2/sites-available/a-dobra.ru.conf

๋ฐ์ดํ„ฐ๋ฅผ ํฌํŠธ 80์œผ๋กœ ์ง€์ •ํ•˜์—ฌ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋ฐ์ดํ„ฐ๋ฅผ ํŽธ์ง‘ํ•ฉ๋‹ˆ๋‹ค. ServerAdmin, ServerName, ServerAlias, ์‚ฌ์ดํŠธ์˜ ๋ฃจํŠธ ๋””๋ ‰ํ„ฐ๋ฆฌ ๊ฒฝ๋กœ๋ฅผ ์ž…๋ ฅํ•˜๊ณ  ํŒŒ์ผ์„ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค(Ctrl+X๋ฅผ ๋ˆ„๋ฅธ ๋‹ค์Œ Y).

<VirtualHost *:80>
 
    ServerAdmin [email protected]
    ServerName a-dobra.ru
    ServerAlias www.a-dobra.ru
 
    DocumentRoot /var/www/a-dobra.ru/public_html
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
 
    <Directory /var/www/a-dobra.ru/public_html>
        Options -Indexes +FollowSymLinks +MultiViews
        AllowOverride All
        Require all granted
    </Directory>
 
    <FilesMatch .php$>
        SetHandler "proxy:unix:/var/run/php/php7.2-fpm.sock|fcgi://localhost/"
    </FilesMatch>
 
</VirtualHost>

ServerName ๊ฐ€์ƒ ํ˜ธ์ŠคํŠธ ์ด๋ฆ„๊ณผ ์ผ์น˜ํ•ด์•ผ ํ•˜๋Š” ๊ธฐ๋ณธ ๋„๋ฉ”์ธ์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ๊ท€ํ•˜์˜ ๋„๋ฉ”์ธ ์ด๋ฆ„์ด์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋‘๋ฒˆ์งธ, ServerAlias, ๊ธฐ๋ณธ ๋„๋ฉ”์ธ์ธ ๊ฒƒ์ฒ˜๋Ÿผ ํ•ด์„๋˜์–ด์•ผ ํ•˜๋Š” ๋‹ค๋ฅธ ์ด๋ฆ„์„ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” www๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋“ฑ ์ถ”๊ฐ€ ๋„๋ฉ”์ธ ์ด๋ฆ„์„ ์‚ฌ์šฉํ•  ๋•Œ ํŽธ๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

๋‹ค๋ฅธ ํ˜ธ์ŠคํŠธ์— ๋Œ€ํ•ด ์ด ๊ตฌ์„ฑ์„ ๋ณต์‚ฌํ•˜๊ณ  ๋™์ผํ•œ ๋ฐฉ์‹์œผ๋กœ ํŽธ์ง‘ํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

$ sudo cp /etc/apache2/sites-available/a-dobra.ru.conf /etc/apache2/sites-available/promo.a-dobra.ru.conf

๊ท€ํ•˜์˜ ์›น์‚ฌ์ดํŠธ์— ๋Œ€ํ•œ ๋””๋ ‰ํ† ๋ฆฌ์™€ ๊ฐ€์ƒ ํ˜ธ์ŠคํŠธ๋ฅผ ์›ํ•˜๋Š” ๋งŒํผ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค! ์ด์ œ ๊ฐ€์ƒ ํ˜ธ์ŠคํŠธ ํŒŒ์ผ์„ ๋งŒ๋“ค์—ˆ์œผ๋ฏ€๋กœ ์ด๋ฅผ ํ™œ์„ฑํ™”ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. a2ensite ์œ ํ‹ธ๋ฆฌํ‹ฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๊ฐ ์‚ฌ์ดํŠธ๋ฅผ ํ™œ์„ฑํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

$ sudo a2ensite a-dobra.ru.conf

$ sudo a2ensite promo.a-dobra.ru.conf 

๊ธฐ๋ณธ์ ์œผ๋กœ ํฌํŠธ 80์€ LAMP์—์„œ ๋‹ซํ˜€ ์žˆ์œผ๋ฉฐ ๋‚˜์ค‘์— SSL ์ธ์ฆ์„œ๋ฅผ ์„ค์น˜ํ•˜๋Š” ๋ฐ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์ด์ œ ์ฆ‰์‹œ ports.conf ํŒŒ์ผ์„ ํŽธ์ง‘ํ•œ ๋‹ค์Œ Apache๋ฅผ ๋‹ค์‹œ ์‹œ์ž‘ํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

$ sudo nano /etc/apache2/ports.conf

์ƒˆ ์ค„์„ ์ถ”๊ฐ€ํ•˜๊ณ  ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํŒŒ์ผ์„ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.

Listen 80
Listen 443
Listen 9997

์„ค์ •์„ ์™„๋ฃŒํ•œ ํ›„ ๋ชจ๋“  ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์ ์šฉํ•˜๋ ค๋ฉด Apache๋ฅผ ๋‹ค์‹œ ์‹œ์ž‘ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

$ sudo systemctl reload apache2

3๋‹จ๊ณ„: ๋„๋ฉ”์ธ ์ด๋ฆ„ ์„ค์ •

๋‹ค์Œ์œผ๋กœ ์ƒˆ ์„œ๋ฒ„๋ฅผ ๊ฐ€๋ฆฌํ‚ค๋Š” DNS ๋ ˆ์ฝ”๋“œ๋ฅผ ์ถ”๊ฐ€ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋„๋ฉ”์ธ์„ ๊ด€๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด Arithmetic of Good Foundation์€ dns-master.ru ์„œ๋น„์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๋ฐ, ์ด๋ฅผ ์˜ˆ์‹œ๋กœ ๋ณด์—ฌ๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค.

๊ธฐ๋ณธ ๋„๋ฉ”์ธ์— ๋Œ€ํ•œ A-๋ ˆ์ฝ”๋“œ ์„ค์ •์€ ์ผ๋ฐ˜์ ์œผ๋กœ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. @):

Cloud for Charities: ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ๊ฐ€์ด๋“œ
ํ•˜์œ„ ๋„๋ฉ”์ธ์˜ A ๋ ˆ์ฝ”๋“œ๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ง€์ •๋ฉ๋‹ˆ๋‹ค.

Cloud for Charities: ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ๊ฐ€์ด๋“œ
IP ์ฃผ์†Œ๋Š” ๋ฐฉ๊ธˆ ์ƒ์„ฑํ•œ Linux ์„œ๋ฒ„์˜ ์ฃผ์†Œ์ž…๋‹ˆ๋‹ค. TTL = 3600์„ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์‹œ๊ฐ„์ด ์ง€๋‚˜๋ฉด ๊ท€ํ•˜์˜ ์‚ฌ์ดํŠธ๋ฅผ ๋ฐฉ๋ฌธํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ์ง€๊ธˆ์€ ๋‹ค์Œ์„ ํ†ตํ•ด์„œ๋งŒ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. http://. ๋‹ค์Œ ๋‹จ๊ณ„์—์„œ๋Š” ์ง€์›์„ ์ถ”๊ฐ€ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. https://.

4๋‹จ๊ณ„: ๋ฌด๋ฃŒ SSL ์ธ์ฆ์„œ ์„ค์ •

๊ธฐ๋ณธ ์‚ฌ์ดํŠธ์™€ ๋ชจ๋“  ํ•˜์œ„ ๋„๋ฉ”์ธ์— ๋Œ€ํ•ด ๋ฌด๋ฃŒ Let's Encrypt SSL ์ธ์ฆ์„œ๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž๋™ ๊ฐฑ์‹ ์„ ๊ตฌ์„ฑํ•  ์ˆ˜๋„ ์žˆ๋Š”๋ฐ ์ด๋Š” ๋งค์šฐ ํŽธ๋ฆฌํ•ฉ๋‹ˆ๋‹ค. SSL ์ธ์ฆ์„œ๋ฅผ ์–ป์œผ๋ ค๋ฉด ์„œ๋ฒ„์— Certbot์„ ์„ค์น˜ํ•˜์‹ญ์‹œ์˜ค.

$ sudo add-apt-repository ppa:certbot/certbot

๋‹ค์Œ์„ ์‚ฌ์šฉํ•˜์—ฌ Apache์šฉ Certbot ํŒจํ‚ค์ง€๋ฅผ ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค. apt:

$ sudo apt install python-certbot-apache 

์ด์ œ Certbot์„ ์‚ฌ์šฉํ•  ์ค€๋น„๊ฐ€ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋‹ค์Œ ๋ช…๋ น์„ ์‹คํ–‰ํ•˜์„ธ์š”.

$ sudo certbot --apache -d a-dobra.ru -d www.a-dobra.ru -d promo.a-dobra.ru

์ด ๋ช…๋ น์€ certbot, ํ‚ค๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค. -d ์ธ์ฆ์„œ๊ฐ€ ๋ฐœ๊ธ‰๋˜์–ด์•ผ ํ•˜๋Š” ๋„๋ฉ”์ธ์˜ ์ด๋ฆ„์„ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค.

certbot์„ ์ฒ˜์Œ ์‹คํ–‰ํ•˜๋Š” ๊ฒฝ์šฐ ์ด๋ฉ”์ผ ์ฃผ์†Œ๋ฅผ ์ž…๋ ฅํ•˜๊ณ  ์„œ๋น„์Šค ์ด์šฉ ์•ฝ๊ด€์— ๋™์˜ํ•˜๋ผ๋Š” ๋ฉ”์‹œ์ง€๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ certbot์€ Let's Encrypt ์„œ๋ฒ„์— ์ ‘์†ํ•œ ๋‹ค์Œ ์ธ์ฆ์„œ๋ฅผ ์š”์ฒญํ•œ ๋„๋ฉ”์ธ์„ ์‹ค์ œ๋กœ ์ œ์–ดํ•˜๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

๋ชจ๋“  ๊ฒƒ์ด ์ˆœ์กฐ๋กญ๊ฒŒ ์ง„ํ–‰๋˜๋ฉด certbot์€ HTTPS ๊ตฌ์„ฑ์„ ์–ด๋–ป๊ฒŒ ๊ตฌ์„ฑํ• ์ง€ ๋ฌป์Šต๋‹ˆ๋‹ค.

Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-2] then [enter] (press 'c' to cancel):

์˜ต์…˜ 2๋ฅผ ์„ ํƒํ•˜๊ณ  ENTER๋ฅผ ๋ˆ„๋ฅด๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ๊ตฌ์„ฑ์ด ์—…๋ฐ์ดํŠธ๋˜๊ณ  Apache๊ฐ€ ๋‹ค์‹œ ์‹œ์ž‘๋˜์–ด ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.

์ด์ œ ์ธ์ฆ์„œ๊ฐ€ ๋‹ค์šด๋กœ๋“œ, ์„ค์น˜ ๋ฐ ์ž‘๋™๋ฉ๋‹ˆ๋‹ค. https://๋กœ ์‚ฌ์ดํŠธ๋ฅผ ๋‹ค์‹œ ๋กœ๋“œํ•˜๋ฉด ๋ธŒ๋ผ์šฐ์ €์— ๋ณด์•ˆ ์•„์ด์ฝ˜์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ์„œ๋ฒ„๋ฅผ ํ…Œ์ŠคํŠธํ•˜๋Š” ๊ฒฝ์šฐ SSL ์—ฐ๊ตฌ์†Œ ์„œ๋ฒ„ ํ…Œ์ŠคํŠธ, ๊ทธ๋Š” A๋“ฑ๊ธ‰์„ ๋ฐ›๊ฒŒ ๋  ๊ฒƒ์ด๋‹ค.

Let's Encrypt ์ธ์ฆ์„œ๋Š” 90์ผ ๋™์•ˆ๋งŒ ์œ ํšจํ•˜์ง€๋งŒ ๋ฐฉ๊ธˆ ์„ค์น˜ํ•œ certbot ํŒจํ‚ค์ง€๋Š” ์ธ์ฆ์„œ๋ฅผ ์ž๋™์œผ๋กœ ๊ฐฑ์‹ ํ•ฉ๋‹ˆ๋‹ค. ์—…๋ฐ์ดํŠธ ํ”„๋กœ์„ธ์Šค๋ฅผ ํ…Œ์ŠคํŠธํ•˜๊ธฐ ์œ„ํ•ด certbot์˜ ํ…Œ์ŠคํŠธ ์‹คํ–‰์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

$ sudo certbot renew --dry-run 

์ด ๋ช…๋ น์„ ์‹คํ–‰ํ•œ ๊ฒฐ๊ณผ ์˜ค๋ฅ˜๊ฐ€ ํ‘œ์‹œ๋˜์ง€ ์•Š์œผ๋ฉด ๋ชจ๋“  ๊ฒƒ์ด ์ž‘๋™ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค!

5๋‹จ๊ณ„: MySQL ๋ฐ phpMyAdmin์— ์•ก์„ธ์Šค

๋งŽ์€ ์›น์‚ฌ์ดํŠธ๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ๋ฅผ ์œ„ํ•œ phpMyAdmin ๋„๊ตฌ๋Š” ์ด๋ฏธ ์„œ๋ฒ„์— ์„ค์น˜๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์•ก์„ธ์Šคํ•˜๋ ค๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋งํฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ธŒ๋ผ์šฐ์ €๋กœ ์ด๋™ํ•˜์„ธ์š”.

https://<ip-ะฐะดั€ะตั ัะตั€ะฒะตั€ะฐ>:9997

๋ฃจํŠธ ์•ก์„ธ์Šค๋ฅผ ์œ„ํ•œ ๋น„๋ฐ€๋ฒˆํ˜ธ๋Š” MCS ๊ฐœ์ธ ๊ณ„์ •(https://mcs.mail.ru/app/services/marketplace/apps/). ์ฒ˜์Œ ๋กœ๊ทธ์ธํ•  ๋•Œ ๋ฃจํŠธ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ๋ณ€๊ฒฝํ•˜๋Š” ๊ฒƒ์„ ์žŠ์ง€ ๋งˆ์„ธ์š”!

6๋‹จ๊ณ„: SFTP๋ฅผ ํ†ตํ•œ ํŒŒ์ผ ์—…๋กœ๋“œ ์„ค์ •

๊ฐœ๋ฐœ์ž๋Š” SFTP๋ฅผ ํ†ตํ•ด ์›น์‚ฌ์ดํŠธ์— ํŒŒ์ผ์„ ์—…๋กœ๋“œํ•˜๋Š” ๊ฒƒ์ด ํŽธ๋ฆฌํ•˜๋‹ค๋Š” ๊ฒƒ์„ ์•Œ๊ฒŒ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๋ฅผ ์œ„ํ•ด ์ƒˆ ์‚ฌ์šฉ์ž๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ๊ทธ๋ฅผ ์›น๋งˆ์Šคํ„ฐ๋ผ๊ณ  ๋ถ€๋ฆ…๋‹ˆ๋‹ค.

$ sudo adduser webmaster

์‹œ์Šคํ…œ์€ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์„ค์ •ํ•˜๊ณ  ๋‹ค๋ฅธ ๋ฐ์ดํ„ฐ๋ฅผ ์ž…๋ ฅํ•˜๋ผ๋Š” ๋ฉ”์‹œ์ง€๋ฅผ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.

์›น์‚ฌ์ดํŠธ์˜ ๋””๋ ‰ํ† ๋ฆฌ ์†Œ์œ ์ž ๋ณ€๊ฒฝ:

$ sudo chown -R webmaster:webmaster /var/www/a-dobra.ru/public_html

์ด์ œ ์ƒˆ ์‚ฌ์šฉ์ž๊ฐ€ SSH ํ„ฐ๋ฏธ๋„์ด ์•„๋‹Œ SFTP์—๋งŒ ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ๋„๋ก SSH ๊ตฌ์„ฑ์„ ๋ณ€๊ฒฝํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

$ sudo nano /etc/ssh/sshd_config

๊ตฌ์„ฑ ํŒŒ์ผ์˜ ๋งจ ๋์œผ๋กœ ์Šคํฌ๋กคํ•˜์—ฌ ๋‹ค์Œ ๋ธ”๋ก์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

Match User webmaster
ForceCommand internal-sftp
PasswordAuthentication yes
ChrootDirectory /var/www/a-dobra.ru
PermitTunnel no
AllowAgentForwarding no
AllowTcpForwarding no
X11Forwarding no

ํŒŒ์ผ์„ ์ €์žฅํ•˜๊ณ  ์„œ๋น„์Šค๋ฅผ ๋‹ค์‹œ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.

$ sudo systemctl restart sshd

์ด์ œ FileZilla ๋“ฑ SFTP ํด๋ผ์ด์–ธํŠธ๋ฅผ ํ†ตํ•ด ์„œ๋ฒ„์— ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ•ฉ๊ณ„

  1. ์ด์ œ ๋™์ผํ•œ ์„œ๋ฒ„ ๋‚ด์—์„œ ์›น ์‚ฌ์ดํŠธ์— ๋Œ€ํ•œ ์ƒˆ ๋””๋ ‰ํ„ฐ๋ฆฌ๋ฅผ ๋งŒ๋“ค๊ณ  ๊ฐ€์ƒ ํ˜ธ์ŠคํŠธ๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•˜์Šต๋‹ˆ๋‹ค.
  2. ํ•„์š”ํ•œ SSL ์ธ์ฆ์„œ๋ฅผ ์‰ฝ๊ฒŒ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฌด๋ฃŒ์ด๋ฉฐ ์ž๋™์œผ๋กœ ์—…๋ฐ์ดํŠธ๋ฉ๋‹ˆ๋‹ค.
  3. ์นœ์ˆ™ํ•œ phpMyAdmin์„ ํ†ตํ•ด MySQL ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋กœ ํŽธ๋ฆฌํ•˜๊ฒŒ ์ž‘์—…ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  4. ์ƒˆ๋กœ์šด SFTP ๊ณ„์ •์„ ์ƒ์„ฑํ•˜๊ณ  ์•ก์„ธ์Šค ๊ถŒํ•œ์„ ์„ค์ •ํ•˜๋Š” ๋ฐ๋Š” ๋งŽ์€ ๋…ธ๋ ฅ์ด ํ•„์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๊ณ„์ •์€ ์ œXNUMX์ž ์›น ๊ฐœ๋ฐœ์ž ๋ฐ ์‚ฌ์ดํŠธ ๊ด€๋ฆฌ์ž์—๊ฒŒ ์–‘๋„๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  5. ์ •๊ธฐ์ ์œผ๋กœ ์‹œ์Šคํ…œ์„ ์—…๋ฐ์ดํŠธํ•˜๋Š” ๊ฒƒ์„ ์žŠ์ง€ ๋งˆ์‹ญ์‹œ์˜ค. ๋˜ํ•œ ๋ฐฑ์—…์„ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. MCS์—์„œ๋Š” ํ•œ ๋ฒˆ์˜ ํด๋ฆญ์œผ๋กœ ์ „์ฒด ์‹œ์Šคํ…œ์˜ "์Šค๋ƒ…์ƒท"์„ ์ฐ์€ ๋‹ค์Œ ํ•„์š”ํ•œ ๊ฒฝ์šฐ ์ „์ฒด ์ด๋ฏธ์ง€๋ฅผ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์œ ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์‚ฌ์šฉ๋œ ๋ฆฌ์†Œ์Šค:

https://www.digitalocean.com/community/tutorials/apache-ubuntu-14-04-lts-ru
https://www.digitalocean.com/community/tutorials/apache-let-s-encrypt-ubuntu-18-04-ru
https://www.digitalocean.com/community/tutorials/how-to-enable-sftp-without-shell-access-on-ubuntu-18-04

๋˜ํ•œ, ์—ฌ๊ธฐ์— ์šฐ๋ฆฌ ์žฌ๋‹จ์ด MCS ํด๋ผ์šฐ๋“œ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ณ ์•„๋ฅผ ์œ„ํ•œ ์˜จ๋ผ์ธ ๊ต์œก ํ”Œ๋žซํผ์„ ๋ฐฐํฌํ•œ ๋ฐฉ๋ฒ•์„ VC์—์„œ ์ฝ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : habr.com

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€