๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด4๋กœ ํ† ์ดํ”„๋กœ์ ํŠธ์šฉ ์„œ๋ฒ„ ๋งŒ๋“ค๊ธฐ - 1ํŽธ

๋ธ”๋กœ๊ทธ ์˜ฎ๊ฒผ์Šต๋‹ˆ๋‹ค! ๐Ÿก’ integer.blog

ํ† ์ดํ”„๋กœ์ ํŠธ๋ฅผ ์˜ฌ๋ฆด ์„œ๋ฒ„๋ฅผ 2019๋…„ 7์›”์— ์ƒˆ๋กœ ์ถœ์‹œํ•œ ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด4๋กœ ๋งŒ๋“ค์–ด ๋ณด์•˜๋‹ค.

ํฌ๊ฒŒ 3๋‹จ๊ณ„๋กœ ์ž‘์—…์„ ์ง„ํ–‰ํ•  ์˜ˆ์ •์ด๋‹ค.

1ํŽธ - ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด4๋ฅผ ์„œ๋ฒ„๋กœ ๋งŒ๋“ค๊ธฐ
2ํŽธ - ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฐฐํฌ
3ํŽธ - ๋„์ปค๋ผ์ด์ง•

0. ๋ชฉ์ฐจ

  1. ์žฌ๋ฃŒ ์ค€๋น„ ๋ฐ ์‹œ์ž‘
    1.0. ๊ตฌ์ž…ํ•œ ์ œํ’ˆ๋“ค
    1.1. ์ „์› ์—ฐ๊ฒฐ
    1.2. ์•ˆ์ „ํ•˜๊ฒŒ ์ข…๋ฃŒํ•˜๊ธฐ

  2. OS ์„ค์น˜
    2.0. Raspbian ์„ค์น˜ ๋ฐฉ๋ฒ• ์„ ํƒ
    2.1. Raspbian ์ด๋ฏธ์ง€ ๋‹ค์šด๋กœ๋“œ
    2.2. SD์นด๋“œ์— Raspbian ์ด๋ฏธ์ง€ ๊ตฝ๊ธฐ
    2.3. ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด์— OS ์„ค์น˜

  3. ๊ธฐ๋ณธ ํ™˜๊ฒฝ ์„ค์ •
    3.0. ์„ค์ • ๋„๊ตฌ ์‹คํ–‰
    3.1. ๋น„๋ฐ€๋ฒˆํ˜ธ ๋ณ€๊ฒฝ
    3.2. Locale ์„ค์ •
    3.3. Timezone ์„ค์ •
    3.4. Keyboard Layout ์„ค์ •
    3.5. Wi-fi Country ์„ค์ •
    3.6. Wi-fi ์„ค์ • (raspi-config ์‚ฌ์šฉ)
    3.7. Wi-fi ์„ค์ • (wpa_passphrase ์‚ฌ์šฉ)
    3.8. SSH ํ—ˆ์šฉ ๋ฐ ์ ‘์†
    3.9. Hostname, Wi-fi ์„ค์ •

  4. ๋„คํŠธ์›Œํฌ ์„ค์ •
    4.0. ๋‚ด๋ถ€IP ๊ณ ์ •
    4.1. DDNS ์„ค์ •
    4.2. ํฌํŠธํฌ์›Œ๋”ฉ ์„ค์ •
    4.3. ipTIME ์›๊ฒฉ์ ‘์† ํ—ˆ์šฉ

  5. Nginx ์„ค์น˜ ๋ฐ ์„ค์ •
    5.0. Nginx ์„ค์น˜
    5.1. ํ•œ๊ธ€ ํฐํŠธ ๋ฐ ์ž…๋ ฅ๊ธฐ ์„ค์น˜
    5.2 Nginx ๋ฌธ์ž์…‹ ์„ค์ •

  6. ๋„๋ฉ”์ธ, SSL ์„ค์ •
    6.0. ๋„๋ฉ”์ธ ๊ตฌ์ž…
    6.1. ๋„๋ฉ”์ธ ์—ฐ๊ฒฐ
    6.2. SSL ์ธ์ฆ์„œ ์ƒ์„ฑ ๋ฐ ์ ์šฉ
    6.3. SSL ์ธ์ฆ์„œ ์ž๋™๊ฐฑ์‹  ์„ค์ •

  7. ๊ธฐํƒ€
    7.0. ์˜จ๋„ ์ธก์ •์šฉ ์‰˜ ์Šคํฌ๋ฆฝํŠธ ์ž‘์„ฑ


1. ์žฌ๋ฃŒ ์ค€๋น„ ๋ฐ ์‹œ์ž‘

๊ตฌ์ž…ํ•  ๋‹น์‹œ์— ํ•œ๊ตญ์— ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด4 ํŒ๋งค์ฒ˜๊ฐ€ ์•„์˜ˆ ์—†์–ด์„œ, ๋ฏธ๊ตญ์— ์‚ฌ๋Š” ์ฒ˜๋‚จ์—๊ฒŒ ๋ถ€ํƒํ•ด์„œ ์ œํ’ˆ์„ ๊ตฌ๋งคํ–ˆ๋‹ค.
๊ตฌ๊ธ€๋ง์„ ๊ฝค ํ•ด๋ณด๊ณ  ๋ฆฌ๋ทฐ๋“ค๋„ ์ฝ์–ด ๋ณธ ํ›„์— ๊ตฌ๋งคํ•œ ์ œํ’ˆ๋“ค์ด์ง€๋งŒ, ์ตœ๊ณ ์˜ ์„ ํƒ์ด ์•„๋‹ ์ˆ˜๋„ ์žˆ๋‹ค.
(์ œํ’ˆ ํ™๋ณด ์ ˆ๋Œ€ ์•„๋‹˜!)

1.0. ๊ตฌ์ž…ํ•œ ์ œํ’ˆ๋“ค

  1. Raspberry Pi 4 ๋ณด๋“œ (๋งํฌ)
  2. USB C Type ์ถฉ์ „๊ธฐ (5V 3A) (๋งํฌ)
    • ์ƒ๊ฐ๋ณด๋‹ค 5V 3A PSU๋ฅผ ๊ตฌํ•˜๊ธฐ๊ฐ€ ํž˜๋“ค์—ˆ๋‹ค.
    • ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด4 ๊ณต์‹ PSU์˜ ๊ฒฝ์šฐ ์œ ๋Ÿฝ ์ œํ’ˆ์„ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๋Š”๋ฐ, ์œ ๋Ÿฝ ์‚ฌ์ดํŠธ์—์„œ ์ง๊ตฌํ•ด์•ผํ•ด์„œ ๋น„์‹ธ๋‹ค.
    • ์ด ์ œํ’ˆ์„ ์‚ฌ์šฉํ•ด๋„ ๋  ๊ฒƒ ๊ฐ™๋‹ค.
  3. ๋ชจ๋‹ˆํ„ฐ ์ผ€์ด๋ธ” (Micro-HDMI to HDMI) (๋งํฌ)
  4. Micro SD ์นด๋“œ (64GB) (๋งํฌ)
  5. ์ผ€์ด์Šค + ์ฟจ๋งํŒฌ (๋งํฌ)
    • ๋ฐ˜๋“œ์‹œ ํ•„์š”ํ•œ ๊ฒƒ์€ ์•„๋‹ˆ์ง€๋งŒ, ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด4์˜ ๋ฐœ์—ด ์ด์Šˆ๊ฐ€ ์žˆ๋Š”๋ฐ ํ•ด์™ธ ์œ ์ €๋“ค์€ ์ฟจ๋งํŒฌ์œผ๋กœ ํ•ด๊ฒฐํ•œ๋‹ค๊ณ  ํ•œ๋‹ค.
    • ๋ฐœ์—ด ์ด์Šˆ ๋•Œ๋ฌธ์— ๋ณด๋“œ ์„ค๊ณ„๋ฅผ ์ˆ˜์ •ํ•  ๊ฒƒ์ด๋ผ๋Š” ์ œ์ž‘์‚ฌ์ธก์˜ ๋ฐœํ‘œ๋„ ์žˆ์—ˆ๋‹ค. (์  ์žฅ)

1.1. ์ „์› ์—ฐ๊ฒฐ

  1. ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด ๋ณด๋“œ๋ฅผ ์ผ€์ด์Šค์™€ ๊ฒฐํ•ฉ
  2. ์ฟจ๋งํŒฌ์„ ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด ๋ณด๋“œ์˜ GPIO์— ์—ฐ๊ฒฐ
    • ์ด ๊ณณ์—์„œ ํ•€์˜ ์œ„์น˜๋ฅผ ํ™•์ธํ•œ๋‹ค.
    • ํŒฌ์˜ ์†๋„๋ฅผ 3.3v์˜ low speed์™€ 5v์˜ high speed ์ค‘ ์„ ํƒํ•  ์ˆ˜ ์žˆ๋‹ค.
    • 3.3v(low speed)์˜ ์œ„์น˜๋Š” ์œ„์˜ ๋งํฌ์—์„œ 1๋ฒˆ(๋นจ๊ฐ„์„ ), 6๋ฒˆ(๊ฒ€์ •์„ )
    • 5v(high speed)์˜ ์œ„์น˜๋Š” 4๋ฒˆ(๋นจ๊ฐ„์„ ), 6๋ฒˆ(๊ฒ€์ •์„ )
  3. ์ „์›์„ ์—ฐ๊ฒฐํ•˜๋ฉด ๋นจ๊ฐ„๋ถˆ๊ณผ ๋…น์ƒ‰๋ถˆ์ด ์ผœ์ง€๊ณ , ํŒฌ์ด ๋Œ์•„๊ฐ„๋‹ค.

1.2. ์•ˆ์ „ํ•˜๊ฒŒ ์ข…๋ฃŒํ•˜๊ธฐ

  • ์ฒ˜์Œ์—๋Š” ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด์˜ ์ „์›์ฝ”๋“œ๋ฅผ ๋ฝ‘๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ ์ข…๋ฃŒ๋ฅผ ํ•ด์™”๋Š”๋ฐ, ์œ„ํ—˜ํ•œ ๋ฐฉ๋ฒ•์ด์—ˆ๋‹ค.
  • ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด ์ข…๋ฃŒํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋ผ๋Š” ๊ธ€์— ์˜ํ•˜๋ฉด, SD์นด๋“œ๊ฐ€ ๊ณ ์žฅ๋‚  ์ˆ˜ ์žˆ๊ณ , ์ƒํ™ฉ์— ๋”ฐ๋ผ ๋ฐ์ดํ„ฐ๊ฐ€ ์†์‹ค๋  ์ˆ˜ ์žˆ๋‹ค๊ณ  ํ•œ๋‹ค.
  • $ sudo shutdown -h now ๋ช…๋ น์„ ํ•˜๋ฉด, ์•„๋ž˜์˜ ๊ณผ์ •์„ ๊ฑฐ์ณ ์•ˆ์ „ํ•˜๊ฒŒ ์ข…๋ฃŒ๋œ๋‹ค.
    1. ์‹คํ–‰์ค‘์ธ ๋ชจ๋“  ํ”„๋กœ์„ธ์Šค์— SIGTERM ๋ช…๋ น์„ ๋ณด๋‚ด์„œ ์•ˆ์ „ํ•˜๊ฒŒ ์ €์žฅํ•˜๊ณ  ์ข…๋ฃŒ(Exit)ํ•˜๊ฒŒ ํ•œ๋‹ค.
    2. ์•ฝ๊ฐ„์˜ ๊ฐ„๊ฒฉ์„ ๋‘๊ณ , SIGKILL ๋ช…๋ น์„ ๋ณด๋‚ด์„œ ๋‚จ์•„์žˆ๋Š” ํ”„๋กœ์„ธ์Šค๋“ค์„ ์ข…๋ฃŒ(Halt)ํ•œ๋‹ค.
    3. ๋ชจ๋“  ํŒŒ์ผ ์‹œ์Šคํ…œ๋“ค์„ ๋ถ„๋ฆฌ(unmount)ํ•œ๋‹ค.
    4. ํ™”๋ฉด์— System Halted๋ผ๊ณ  ํ‘œ์‹œ๋œ๋‹ค. (๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด4์˜ ๊ฒฝ์šฐ ํ‘œ์‹œ๋˜๋Š” ๋ฉ”์„ธ์ง€๋ฅผ ๋ณผ ๊ฒจ๋ฅผ ์—†์ด ๋ชจ๋‹ˆํ„ฐ ์—ฐ๊ฒฐ์ด ์ข…๋ฃŒ๋œ๋‹ค.)
    5. ์ด์ œ ์ „์›์ฝ”๋“œ๋ฅผ ๋ฝ‘์•„๋„ ๋œ๋‹ค.
    6. ๋‹ค์‹œ ๋ถ€ํŒ…ํ•˜๋ ค๋ฉด ์ „์›์ฝ”๋“œ๋ฅผ ์—ฐ๊ฒฐํ•˜๋ฉด ๋œ๋‹ค.

2. OS ์„ค์น˜

๋‹ค๋ฅธ ์„ ํƒ์ง€๋“ค๋„ ์žˆ์ง€๋งŒ, ์ฒซ ๊ฒฝํ—˜์ด๋ฏ€๋กœ ์–Œ์ „ํ•˜๊ฒŒ ๊ณต์‹ OS์ธ Raspbian์„ ์„ค์น˜ํ•œ๋‹ค.

2.0. Raspbian ์„ค์น˜ ๋ฐฉ๋ฒ• ์„ ํƒ

  1. NOOBS ์‚ฌ์šฉ
    • NOOBS(New Out Of the Box Software)๋ผ๋Š” ์šด์˜์ฒด์ œ ์„ค์น˜ ๊ด€๋ฆฌ์ž๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์„ค์น˜ํ•  OS๋ฅผ ์„ ํƒํ•˜๋Š” ๋ฐฉ๋ฒ•
    • ๋ถ€ํŒ…๊ณผ ์„ค์น˜ ์†๋„๊ฐ€ ๋Š๋ฆฌ๋‹ค.
    • ๋‹ค์–‘ํ•œ OS ์ค‘์— ์„ ํƒํ•˜์—ฌ ์„ค์น˜ ๊ฐ€๋Šฅ.
  2. OS ์ด๋ฏธ์ง€๋ฅผ SD์นด๋“œ์— ๊ธฐ๋กํ•˜์—ฌ ์„ค์น˜
    • ์ด๋ฏธ์ง€ ๊ธฐ๋ก ํ”„๋กœ๊ทธ๋žจ(Etcher ๋˜๋Š” Win32 Disk Imager)์„ ์‚ฌ์šฉํ•˜์—ฌ SD์นด๋“œ์— OS ์ด๋ฏธ์ง€๋ฅผ ๊ตฌ์›Œ์„œ ์„ค์น˜ํ•˜๋Š” ๋ฐฉ๋ฒ•
    • ๋ถ€ํŒ…๊ณผ ์„ค์น˜ ์†๋„๊ฐ€ ๋น ๋ฅด๋‹ค.

๋‚˜์˜ ๊ฒฝ์šฐ ์„ค์น˜ํ•˜๋ ค๋Š” OS์™€ ์„ค์น˜ ๋ชฉ์ ์ด ๋ถ„๋ช…ํ•˜๋ฏ€๋กœ 2๋ฒˆ ๋ฐฉ๋ฒ•์œผ๋กœ ์„ค์น˜๋ฅผ ์ง„ํ–‰ํ–ˆ๋‹ค.

2๋ฒˆ ๋ฐฉ๋ฒ•์œผ๋กœ Raspbian ์„ค์น˜ ์ ˆ์ฐจ

  1. OS ์ด๋ฏธ์ง€ ๋‹ค์šด๋กœ๋“œ
  2. ๋‹ค์šด๋ฐ›์€ ์ด๋ฏธ์ง€(zip ๋˜๋Š” torrent)๋ฅผ Micro SD ์นด๋“œ์— ๊ตฝ๊ธฐ
  3. OS ์ด๋ฏธ์ง€๊ฐ€ ๊ตฌ์›Œ์ง„ Micro SD์นด๋“œ๋ฅผ ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด์— ์‚ฝ์ž…ํ•˜๊ณ  ๋ถ€ํŒ…ํ•˜์—ฌ ์„ค์น˜ํ•˜๊ธฐ

2.1. Raspbian ์ด๋ฏธ์ง€ ๋‹ค์šด๋กœ๋“œ

  • ์ด ๊ณณ์—์„œ Raspbian ์ด๋ฏธ์ง€๋ฅผ ๋‹ค์šด๋กœ๋“œ ๋ฐ›๋Š”๋‹ค.
  • ๋‚˜๋Š” ์„œ๋ฒ„๋กœ๋งŒ ์‚ฌ์šฉํ•  ์˜ˆ์ •์ด๊ธฐ ๋•Œ๋ฌธ์— Desktop GUI๊ฐ€ ์—†์ง€๋งŒ ๋ฆฌ์†Œ์Šค ์†Œ๋ชจ๊ฐ€ ์ ์€ Lite ๋ฒ„์ „์„ ์„ ํƒํ–ˆ๋‹ค.

2.2. SD์นด๋“œ์— Raspbian ์ด๋ฏธ์ง€ ๊ตฝ๊ธฐ

  1. ๊ธฐ์กด์— ์‚ฌ์šฉํ–ˆ์—ˆ๋˜ SD์นด๋“œ๋Š” ํฌ๋งทํ•œ ํ›„์— ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์•ˆ์ „ํ•˜๋‹ค. (SD Memory Card Formatter)
  2. ์ค€๋น„ํ•ด๋‘” Micro SD์นด๋“œ๋ฅผ SD Adapter ํ˜น์€ USB ๋ฆฌ๋”๊ธฐ์— ๊ฝ‚์•„์„œ ๋žฉํƒ‘/๋ฐ์Šคํฌํƒ‘์— ์—ฐ๊ฒฐํ•œ๋‹ค.
  3. Etcher๋ฅผ ์‚ฌ์šฉํ•ด์„œ ๋‹ค์šด๋ฐ›์€ OS ์ด๋ฏธ์ง€๋ฅผ Micro SD์นด๋“œ์— ๊ตฝ๋Š”๋‹ค.(flash)
    • Etcher ์‚ฌ์šฉ๋ฒ•์€ ๊ฐ„๋‹จํ•˜๋‹ค.
    • ์ด๋ฏธ์ง€๋ฅผ ์„ ํƒํ•˜๊ณ , SD์นด๋“œ๋ฅผ ์„ ํƒํ•˜๊ณ , Flash(๊ตฝ๊ธฐ)!
      • ์ด ๋•Œ, ๋‹ค์šด๋ฐ›์€ Raspbian OS ์ด๋ฏธ์ง€๊ฐ€ zip ํŒŒ์ผ์ผํ…๋ฐ, ์••์ถ•์„ ํ’€ ํ•„์š”์—†์ด ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ•˜๋ฉด ๋œ๋‹ค.

2.3. ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด์— OS ์„ค์น˜

  1. Rasbian ์ด๋ฏธ์ง€๊ฐ€ ๊ตฌ์›Œ์ง„ SD์นด๋“œ๋ฅผ ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด์— ์‚ฝ์ž…ํ•œ๋‹ค.
  2. ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด์— ๋ชจ๋‹ˆํ„ฐ์™€ ํ‚ค๋ณด๋“œ๋ฅผ ์—ฐ๊ฒฐํ•œ ํ›„, ์ „์›์„ ์—ฐ๊ฒฐํ•œ๋‹ค.
  3. ์ „์›์„ ์—ฐ๊ฒฐํ•˜๋ฉด ๋นจ๊ฐ„ ๋ผ์ฆˆ๋ฒ ๋ฆฌ 4๊ฐœ๊ฐ€ ํ™”๋ฉด์— ํ‘œ์‹œ๋˜๋ฉด์„œ ๋ถ€ํŒ…์ด ์‹œ์ž‘๋˜๊ณ , Rasbian์ด ์ž๋™์œผ๋กœ ์„ค์น˜๋œ๋‹ค.
  4. ์„ค์น˜๊ฐ€ ์ •์ƒ์ ์œผ๋กœ ์™„๋ฃŒ๋˜๋ฉด (Lite ๋ฒ„์ „์˜ ๊ฒฝ์šฐ) raspberrypi login:์ด ๋ณด์ธ๋‹ค.
  5. ์ดˆ๊ธฐ ์•„์ด๋””๋Š” pi, ๋น„๋ฐ€๋ฒˆํ˜ธ๋Š” raspberry

3. ๊ธฐ๋ณธ ํ™˜๊ฒฝ ์„ค์ •

Raspbian Lite ๋ฒ„์ „์„ ๊ธฐ์ค€์œผ๋กœ ์„œ๋ฒ„๋กœ ํ™œ์šฉํ•˜๊ธฐ ์œ„ํ•œ ๊ธฐ๋ณธ ํ™˜๊ฒฝ์„ ์„ค์ •ํ•œ๋‹ค.

3.0. ์„ค์ • ๋„๊ตฌ ์‹คํ–‰

  1. $ sudo raspi-config ๋ช…๋ น์„ ํ†ตํ•ด ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด ์„ค์ • ๋„๊ตฌ(Raspberry Pi Software Configuration Tool)๋ฅผ ์‹คํ–‰ํ•œ๋‹ค.
  2. ๊ทธ๋Ÿผ ์•„๋ž˜์™€ ๊ฐ™์ด ๋ธ”๋ฃจ๋ผ์ดํŠธ ์ฐจ๋‹จ ์•ˆ๊ฒฝ์„ ๋ฌด๋ ฅํ™”ํ•˜๋Š” ์ƒˆํŒŒ๋ž€ ์„ค์ • ๋„๊ตฌ๊ฐ€ ์‹คํ–‰๋œ๋‹ค.

3.1. ๋น„๋ฐ€๋ฒˆํ˜ธ ๋ณ€๊ฒฝ

  1. 1. Change User Password๋ฅผ ์„ ํƒํ•˜์—ฌ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ๋ณ€๊ฒฝํ•œ๋‹ค.
  2. ์ดˆ๊ธฐ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์‚ฌ์šฉํ•ด๋„ ๋˜์ง€๋งŒ, ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด๋ฅผ ๋ถ„์‹คํ–ˆ์„ ๊ฒฝ์šฐ๋ฅผ ๊ณ ๋ คํ•˜๋ฉด ๋ฐ”๊พธ๋Š” ๊ฒƒ์ด ๋งˆ์Œ ํŽธํ•˜๋‹ค.
  3. (์ฃผ์˜) ํ‚ค๋ณด๋“œ ์„ค์ •์„ ํ•˜๊ธฐ ์ „์—๋Š” !@#$%^&* ๋“ฑ์˜ ๋ฌธ์ž๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

3.2. Locale ์„ค์ •

  1. 4. Localisation Options -> I1 Change Locale ํด๋ฆญ
  2. ์ญ‰ ๋‚ด๋ ค๊ฐ€์„œ [*] en_US.UTF-8 UTF-8 ์„ ํƒ (์ŠคํŽ˜์ด์Šค๋ฐ” ์‚ฌ์šฉ) ํ›„ OK
    • ko_KR.UTF-8 UTF-8์„ ์‚ฌ์šฉํ•˜๋ฉด ์—๋Ÿฌ ๋ฉ”์„ธ์ง€๋กœ ๊ตฌ๊ธ€๋งํ•˜๊ธฐ๊ฐ€ ๋” ์–ด๋ ค์›Œ์„œ ๋ฏธ๊ตญ์œผ๋กœ ์„ ํƒํ–ˆ๋‹ค.
  3. Default locale for the system environment ๋ฅผ ๋ฌป๋Š” ํ™”๋ฉด์—์„œ en.US.UTF-8 ์„ ํƒ ํ›„ OK

3.3. Timezone ์„ค์ •

  1. 4. Localisation Options -> I2 Change Timezone ํด๋ฆญ
  2. Asia ์„ ํƒ, Seoul ์„ ํƒ
    • ์„œ๋ฒ„ ์‹œ๊ฐ„์„ ๊ทธ๋ฆฌ๋‹ˆ์น˜ ํ‘œ์ค€์‹œ(GMT+0) ๋˜๋Š” ํ˜‘์ • ์„ธ๊ณ„์‹œ(UTC+0)๋กœ ๋งž์ถ”๋ ค๋ฉด London์„ ์„ ํƒํ•œ๋‹ค.

3.4. Keyboard Layout ์„ค์ •

  1. 4. Localisation Options -> I3 Change Keyboard Layout ํด๋ฆญ
  2. ์ž์„ธํžˆ ์„ค๋ช…๋œ ๊ธ€์„ ์ฐธ๊ณ ํ•˜์—ฌ ํ‚ค๋ณด๋“œ๋ฅผ ์„ค์ •ํ•œ๋‹ค.
  3. ์„ค์ •ํ•˜์ง€ ์•Š์œผ๋ฉด !@#$%^&*() ๋“ฑ์˜ Shift+์ˆซ์žํ‚ค๋กœ ์‚ฌ์šฉํ•˜๋Š” ํ‚ค๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋‹ค๊ณ  ํ•œ๋‹ค.
  4. ํ•ดํ”ผํ•ดํ‚น๋„ ์„ ํƒ์ง€์— ์žˆ์–ด์„œ ๊ธฐ๋ปค๋‹ค.

3.5. Wi-fi Country ์„ค์ •

(์ฃผ์˜) ๋ฐ˜๋“œ์‹œ ๋ณ€๊ฒฝํ•ด์•ผ ๋˜๋Š” ๊ฒƒ์€ ์•„๋‹ˆ๋‹ค.
๋ณ€๊ฒฝํ•  ๊ฒฝ์šฐ /etc/wpa_supplicant/wpa_supplicant.conf ํŒŒ์ผ์— country={๊ตญ๊ฐ€์ฝ”๋“œ}๊ฐ€ ์ž‘์„ฑ๋˜๋Š”๋ฐ,
์ด๊ฒƒ์ด ์—†์–ด์•ผ๋งŒ ๋ฌด์„  ๋„คํŠธ์›Œํฌ๊ฐ€ ๊ฒ€์ƒ‰๋˜๋Š” ๊ฒฝ์šฐ๋„ ์žˆ๋‹ค๊ณ  ํ•œ๋‹ค.

  1. 4. Localisation Options -> I4 Change Wi-fi Country ํด๋ฆญ
  2. US United States ํ˜น์€ GB Britain (UK) ์„ ํƒ
    • GB Britain (UK)๋ฅผ ์„ ํƒํ•ด์•ผ๋งŒ ์ •์ƒ ๋™์ž‘ ํ•œ๋‹ค๋Š” ์‚ฌ์šฉ์ž๋“ค๋„ ์žˆ๋‹ค.
    • u๋ฅผ ์ž…๋ ฅํ•˜๋ฉด United States(๋ฏธ๊ตญ)์„ ๊ธˆ๋ฐฉ ์ฐพ์„ ์ˆ˜ ์žˆ๋‹ค.
  3. KR Korea (South)๋ฅผ ์„ ํƒํ•˜๋ฉด ์•ˆ๋œ๋‹ค.
    • ํ•œ๊ตญ์œผ๋กœ ์„ ํƒํ–ˆ์„๋•Œ ๋ฌด์„  ๋„คํŠธ์›Œํฌ๋ฅผ ๊ฒ€์ƒ‰ํ•˜์ง€ ๋ชปํ•œ๋‹ค๋Š” ๋ธ”๋กœ๊ทธ ๊ธ€์ด ๋งŽ๋‹ค.
    • ๋‚˜์˜ ๊ฒฝ์šฐ
      • ํ•œ๊ตญ์œผ๋กœ ์„ ํƒํ•ด๋„ ์šฐ๋ฆฌ์ง‘ ๋ฌด์„  ๋„คํŠธ์›Œํฌ๋Š” ๊ฒ€์ƒ‰์ด ๋œ๋‹ค.
      • ๊ฒ€์ƒ‰ ๋ฐฉ๋ฒ• : sudo iwlist wlan0 scan
      • ๊ทธ๋Ÿฐ๋ฐ ํ•œ๊ตญ์„ ์„ ํƒํ•˜๊ณ  $ ping www.google.com์œผ๋กœ ping์„ ๋‚ ๋ ค๋ณด๋ฉด,
      • ํŒจํ‚ท์ด ์ „์†ก๋˜์ง€ ์•Š๊ณ  ping: www.google.com: Temporary failure in name resolution ๋ฉ”์„ธ์ง€๊ฐ€ ๋œฌ๋‹ค.
      • ๋ฏธ๊ตญ, ์˜๊ตญ, ์ผ๋ณธ์„ ์„ ํƒํ•˜๋ฉด ํŒจํ‚ท์ด ์ •์ƒ์ ์œผ๋กœ ์ „์†ก๋œ๋‹ค.
      • ๋˜๋Š” ๊ตญ๊ฐ€์ฝ”๋“œ๋ฅผ ์•„์˜ˆ ์‚ญ์ œํ•ด๋„ ํŒจํ‚ท์ด ์ •์ƒ์ ์œผ๋กœ ์ „์†ก๋œ๋‹ค.
      • ๊ตญ๊ฐ€์ฝ”๋“œ ์‚ญ์ œ ๋ฐฉ๋ฒ• : /etc/wpa_supplicant/wpa_supplicant.conf ํŒŒ์ผ์— country={๊ตญ๊ฐ€์ฝ”๋“œ} ์‚ญ์ œ

3.6. Wi-fi ์„ค์ • (raspi-config ์‚ฌ์šฉ)

์™€์ดํŒŒ์ด๋ฅผ raspi-config๋กœ ์„ค์ •ํ•˜๋Š” ๋ฐฉ๋ฒ•๊ณผ wpa_passphrase๋กœ ์„ค์ •ํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ๋‹ค.

  1. 2. Network Options -> N2 Wi-fi Enter SSID and passphrase ํด๋ฆญ
  2. ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด๊ฐ€ ์‚ฌ์šฉํ•  ๊ณต์œ ๊ธฐ์˜ SSID(์™€์ดํŒŒ์ด ์ด๋ฆ„) ์ž…๋ ฅ. ์˜ˆ์‹œ) KT_GiGA_2G_XXXX
  3. ๋น„๋ฐ€๋ฒˆํ˜ธ ์ž…๋ ฅ
  4. ๊ณต์œ ๊ธฐ ์ ‘์† ํ™•์ธ
    • $ iwconfig ๋ช…๋ น์˜ ๊ฒฐ๊ณผ์—์„œ ESSID๊ฐ€ ์ž…๋ ฅํ•œ ๊ฒƒ๊ณผ ๊ฐ™์œผ๋ฉด ์ •์ƒ ์ ‘์†.
  5. ์„ค์ • ํ™•์ธ
    • ์„ค์ • ํŒŒ์ผ(/etc/wpa_supplicant/wpa_supplicant.conf)์—์„œ SSID์™€ ๋น„๋ฐ€๋ฒˆํ˜ธ ํ™•์ธ ๊ฐ€๋Šฅ

3.7. Wi-fi ์„ค์ • (wpa_passphrase ์‚ฌ์šฉ)

raspi-config๋กœ ์™€์ดํŒŒ์ด ์„ค์ • ์‹œ, password๊ฐ€ ์„ค์ • ํŒŒ์ผ(/etc/wpa_supplicant/wpa_supplicant.conf)์— ๊ทธ๋Œ€๋กœ ๋…ธ์ถœ๋œ๋‹ค.
๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์•”ํ˜ธํ™”ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” raspi-config ๋Œ€์‹  wpa_passphrase ๋ช…๋ น์œผ๋กœ ์™€์ดํŒŒ์ด๋ฅผ ์„ค์ •ํ•˜๋Š” ๊ฒƒ์ด ์ข‹๋‹ค.

  1. $ wpa_passphrase {SSID} {๋น„๋ฐ€๋ฒˆํ˜ธ} ๋ช…๋ น์„ ์น˜๋ฉด, network ์ •๋ณด๊ฐ€ ์•„๋ž˜์™€ ๊ฐ™์ด ์ฝ˜์†”์— ์ถœ๋ ฅ๋œ๋‹ค.

    network={
            ssid="KT_GiGA_5G_HOME"
            #psk="{๋น„๋ฐ€๋ฒˆํ˜ธ}"
            psk=7ac0c35da93c82d ....(์ƒ๋žต)
    }
    
  2. ์ถœ๋ ฅ๋œ network ์ •๋ณด๋ฅผ ์„ค์ • ํŒŒ์ผ(/etc/wpa_supplicant/wpa_supplicant.conf)์— ์ถ”๊ฐ€ํ•œ๋‹ค.

    $ sudo su  # root ๊ถŒํ•œ์œผ๋กœ ๋ณ€๊ฒฝ
    $ wpa_passphrase {SSID} {๋น„๋ฐ€๋ฒˆํ˜ธ} >> /etc/wpa_supplicant/wpa_supplicant.conf
  3. wpa_supplicant.conf ํŒŒ์ผ์€ ์•„๋ž˜์™€ ๊ฐ™๋‹ค.

    ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
    update_config=1
        
    network={
              ssid="KT_GiGA_5G_HOME"
              #psk="{๋น„๋ฐ€๋ฒˆํ˜ธ}"
              psk=7ac0c35da93c82d ....(์ƒ๋žต)
    }
    • (์ฃผ์˜) network ์œ—๋ถ€๋ถ„์˜ ๋‚ด์šฉ๋„ ๋ฐ˜๋“œ์‹œ ํฌํ•จ๋˜์–ด์•ผ ํ•œ๋‹ค.
    • ๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ๋…ธ์ถœ๋œ #psk="{๋น„๋ฐ€๋ฒˆํ˜ธ}"๋Š” ์ง€์šฐ๋Š” ๊ฒƒ์ด ์ข‹๋‹ค.

3.8. SSH ํ—ˆ์šฉ ๋ฐ ์ ‘์†

์‹œ๋ ฅ ๋ณดํ˜ธ๋ฅผ ์œ„ํ•ด ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด์— SSH๋กœ ์›๊ฒฉ ์ ‘์†ํ•ด์„œ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ํ›จ์”ฌ ํŽธ๋ฆฌํ•˜๋‹ค.
SSH ์ ‘์†์„ ํ—ˆ์šฉํ•˜๋ฉด ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด์— ๋ชจ๋‹ˆํ„ฐ์™€ ํ‚ค๋ณด๋“œ๋ฅผ ์—ฐ๊ฒฐํ•  ํ•„์š” ์—†์ด,
PC/๋žฉํƒ‘์—์„œ SSH๋ฅผ ํ†ตํ•ด ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด์— ์ ‘์†ํ•˜๋ฉด ๋œ๋‹ค. (๋งˆ์น˜ AWS EC2 ์ธ์Šคํ„ด์Šค๊ฐ€ ๋‚ด ์ฑ…์ƒ์—..)

  1. SSH ํ—ˆ์šฉ
    • 5. Interfacing Options -> P2 SSH -> YES
  2. ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด IP ํ™•์ธ
    • $ ifconfig
    • ๋ฌด์„ ๋žœ์˜ ๊ฒฝ์šฐ, wlan0 ์˜ inet addr: xxx.xx.x.xx์— ์ ํžŒ IP ํ™•์ธ (์œ ์„ ์€ eth0)
  3. SSH ์ ‘์†
    • (๋‚ด๋ถ€๋ง) ์ฃผ๋กœ ์‚ฌ์šฉํ•˜๋Š” PC/๋žฉํƒ‘์—์„œ $ ssh pi@{๋‚ด๋ถ€IP ์ฃผ์†Œ}๋กœ ์ ‘์†
    • (์™ธ๋ถ€๋ง) ๋ฐ‘์—์„œ ์„ค๋ช…ํ•œ ํฌํŠธํฌ์›Œ๋”ฉ ์„ค์ • ํ›„ $ ssh -p {์™ธ๋ถ€ํฌํŠธ} pi@{์™ธ๋ถ€IP์ฃผ์†Œ ํ˜น์€ ๋„๋ฉ”์ธ๋ช…}๋กœ ์ ‘์†
  4. ๋Š๋ฆฐ SSH ๋กœ๊ทธ์ธ ๋ฌธ์ œ ํ•ด๊ฒฐ
    • ๊ฐ€๋” ssh ๋กœ๊ทธ์ธ ์‹œ๋„๋ฅผ ํ•˜๋ฉด ์—„์ฒญ ๋Š๋ฆฌ๊ฒŒ ์‘๋‹ต์ด ์˜ค๋Š” ํ˜„์ƒ์ด ์žˆ๋Š”๋ฐ, DNS ์กฐํšŒ ์„ค์ • ๋ณ€๊ฒฝ์œผ๋กœ ์ด๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋‹ค.
    • $ sudo vi /etc/ssh/sshd_config ๋ช…๋ น์œผ๋กœ ์„ค์ •ํŒŒ์ผ์— ์ ‘๊ทผ.
    • ํŒŒ์ผ ํ•˜๋‹จ ์ฏค์— ์ฃผ์„์ฒ˜๋ฆฌ ๋˜์–ด์žˆ๋Š” #UseDNS no์˜ ์ฃผ์„(#)์„ ํ•ด์ œ.
    • $ sudo service ssh restart ๋ช…๋ น์œผ๋กœ sshd ์žฌ์‹œ์ž‘.

4. ๋„คํŠธ์›Œํฌ ์„ค์ •

์ด ๋ถ€๋ถ„์€ ์‚ฌ์šฉํ•˜๋Š” ๊ณต์œ ๊ธฐ์— ๋”ฐ๋ผ ์„ค์ • ๋ฐฉ๋ฒ•์ด ๋‹ค๋ฅด๋‹ค.
ipTIME A3004NS-M ๋ชจ๋ธ (ํŽŒ์›จ์–ด ๋ฒ„์ „ 11.00.4) ๊ธฐ์ค€์œผ๋กœ ์ž‘์„ฑํ–ˆ๋‹ค.

4.0. ๋‚ด๋ถ€IP ๊ณ ์ •

๊ณต์œ ๊ธฐ๋ฅผ ํ†ตํ•ด wi-fi๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ธฐ๊ธฐ๋“ค์—๊ฒŒ ๊ณต์œ ๊ธฐ๋Š” ์ž„์˜๋กœ ๋‚ด๋ถ€IP(์‚ฌ์„คIP)๋ฅผ ํ• ๋‹นํ•œ๋‹ค.
๊ธฐ๊ธฐ๋ฅผ wi-fi์— ์—ฐ๊ฒฐํ•œ ์ˆœ์„œ์— ๋”ฐ๋ผ, ๋งฅ๋ถ์€ 192.168.0.2, ํœด๋Œ€ํฐ์€ 192.168.0.3, ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด๋Š” 192.168.0.4 ์ด๋Ÿฐ์‹์ด๋‹ค.
๊ทธ๋Ÿฐ๋ฐ ๊ณต์œ ๊ธฐ์— ์ „์›์ด ์ฐจ๋‹จ๋˜์–ด ๊ณต์œ ๊ธฐ๊ฐ€ ์žฌ๋ถ€ํŒ…๋˜๋Š” ๊ฒฝ์šฐ ๋“ฑ์œผ๋กœ ์ธํ•ด ๋‚ด๋ถ€ IP ์„ค์ •์ด ์ดˆ๊ธฐํ™” ๋  ์ˆ˜ ์žˆ๋‹ค.
์ด๋Ÿฐ ์ƒํ™ฉ์„ ๋Œ€๋น„ํ•ด์„œ ๋‚ด๋ถ€ IP๋ฅผ ๊ณต์œ ๊ธฐ ๋‚ด์—์„œ ๊ณ ์ •์‹œํ‚ค๋Š” ๊ฒƒ์ด ์ข‹๋‹ค.

  1. ipTIME ์ ‘์† (192.168.0.1)
  2. ๊ณ ๊ธ‰์„ค์ • - ๋„คํŠธ์›Œํฌ ๊ด€๋ฆฌ - DHCP ์„œ๋ฒ„ ์„ค์ •
  3. ํ•˜๋‹จ์— [์‚ฌ์šฉ์ค‘์ธ IP ์ฃผ์†Œ ์ •๋ณด] ์ค‘ ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด์˜ ์ฒดํฌ๋ฐ•์Šค๋ฅผ ํด๋ฆญํ•˜๊ณ  ์œ„์— ๋“ฑ๋ก ๋ฒ„ํŠผ ํด๋ฆญ.

4.1. DDNS ์„ค์ •

ISP ์‚ฌ์—…์ž(KT, SKT ๋“ฑ)๋Š” DHCP(๋™์  ํ˜ธ์ŠคํŠธ๋ฅผ ์ œ๊ณตํ•˜๋Š” ํ”„๋กœํ† ์ฝœ)๋ฅผ ํ†ตํ•ด ๊ฐ€์ •์ง‘์— ์œ ๋™ IP๋ฅผ ํ• ๋‹นํ•ด์ค€๋‹ค.

์œ ๋™IP๋ผ๋„ IP๊ฐ€ ์ž์ฃผ ๋ฐ”๋€Œ์ง€๋Š” ์•Š๋Š”๋‹ค.
ํ•˜์ง€๋งŒ ISP ์‚ฌ์—…์ž๊ฐ€ DHCP ์„œ๋ฒ„๋ฅผ ๋ฆฌ์…‹ํ•˜๋Š” ๋“ฑ์˜ ์ˆ˜์ž‘์„ ๋ถ€๋ฆฌ๋ฉด ์šฐ๋ฆฌ์ง‘์— ํ• ๋‹น๋˜์—ˆ๋˜ IP๊ฐ€ ๋ณ€๊ฒฝ๋œ๋‹ค.
์ด ๊ฒฝ์šฐ DNS์— ๋“ฑ๋กํ•œ A ๋ ˆ์ฝ”๋“œ(IP์ฃผ์†Œ)๊ฐ€ ๋ณ€๊ฒฝ๋œ ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์—, A ๋ ˆ์ฝ”๋“œ๋ฅผ ์ƒˆ๋กœ์šด IP๋กœ ๋ณ€๊ฒฝํ•˜์—ฌ ๋„๋ฉ”์ธ์ด ์ƒˆ IP๋ฅผ ๋ฐ”๋ผ๋ณด๊ฒŒ ํ•ด์•ผํ•œ๋‹ค.

๊ทธ๋Ÿฐ๋ฐ DDNS ์„œ๋น„์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด A๋ ˆ์ฝ”๋“œ์˜ ๋ณ€๊ฒฝ์„ ๊ฐ์ง€ํ•ด์„œ ์ž๋™์œผ๋กœ ์—…๋ฐ์ดํŠธ ํ•ด์ฃผ๊ธฐ ๋•Œ๋ฌธ์—,
IP ๋ณ€๊ฒฝ์— ์‹ ๊ฒฝ ์“ธ ํ•„์š”์—†์ด ๊ณ ์ •IP ์ฒ˜๋Ÿผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

ํŽธ๋ฆฌํ•˜๊ฒŒ๋„ ipTIME์—์„œ ์ž์ฒด DDNS ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•œ๋‹ค.
๊ตฌ์ž…ํ•œ ๋„๋ฉ”์ธ์˜ CNAME(ํ˜น์€ ANAME, ํ˜น์€ Alias)์œผ๋กœ ipTIME DDNS๋ฅผ ๋“ฑ๋กํ•ด์„œ ๊ณ ์ •IP ์ฒ˜๋Ÿผ ์‚ฌ์šฉํ•  ์˜ˆ์ •์ด๋‹ค.

  1. ipTIME ์ ‘์† (192.168.0.1)
  2. ๊ณ ๊ธ‰์„ค์ • - ํŠน์ˆ˜๊ธฐ๋Šฅ - DDNS ์„ค์ •
  3. ํ˜ธ์ŠคํŠธ์ด๋ฆ„๊ณผ ์‚ฌ์šฉ์ž ID ์ž…๋ ฅ ํ›„ ์ƒ์„ฑ
    • ์ด์ œ ์™ธ๋ถ€IP ๋Œ€์‹  ๋„๋ฉ”์ธ({ํ˜ธ์ŠคํŠธ์ด๋ฆ„}.iptime.org)์œผ๋กœ ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋‹ค.

4.2. ํฌํŠธํฌ์›Œ๋”ฉ ์„ค์ •

์™ธ๋ถ€์—์„œ ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด์˜ IP ํ˜น์€ ๋„๋ฉ”์ธ๊ณผ ์ง€์ •๋œ ํฌํŠธ๋กœ ์ ‘๊ทผํ–ˆ์„ ๋•Œ, ์—ฐ๊ฒฐ์‹œํ‚ฌ ๋‚ด๋ถ€ ํฌํŠธ ์„ค์ •

  1. ipTIME ์ ‘์† (192.168.0.1)
  2. ๊ณ ๊ธ‰์„ค์ • - NAT/๋ผ์šฐํ„ฐ ๊ด€๋ฆฌ - ํฌํŠธํฌ์›Œ๋“œ ์„ค์ •
  3. ์ƒˆ ๊ทœ์น™ ์ถ”๊ฐ€
    • ๊ทœ์น™์ด๋ฆ„: ์‚ฌ์šฉ์ž ์ •์˜
    • ๋‚ด๋ถ€ IP์ฃผ์†Œ: 3.7์—์„œ ํ™•์ธํ•œ ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด์˜ IP์ฃผ์†Œ ์ž…๋ ฅ
    • ํ”„๋กœํ† ์ฝœ: TCP
    • ์™ธ๋ถ€ ํฌํŠธ: ์˜ˆ์‹œ- 20000(ssh), 443(https), 80(http)
    • ๋‚ด๋ถ€ ํฌํŠธ: 22(ssh), 443(https), 80(http) ๋“ฑ

์ฐธ๊ณ  : http์˜ ๊ธฐ๋ณธ ํฌํŠธ๊ฐ€ 80, https์˜ ๊ธฐ๋ณธ ํฌํŠธ๊ฐ€ 443์ธ ์ด์œ ๋Š” ๋ฌด์—‡์ผ๊นŒ?

4.3. ipTIME ์›๊ฒฉ์ ‘์† ํ—ˆ์šฉ

  1. ipTIME ์ ‘์† (192.168.0.1)
  2. ๊ณ ๊ธ‰์„ค์ • - ๋ณด์•ˆ๊ธฐ๋Šฅ - ๊ณต์œ ๊ธฐ ์ ‘์†/๋ณด์•ˆ๊ด€๋ฆฌ
  3. ์›๊ฒฉ ๊ด€๋ฆฌ ํฌํŠธ ์‚ฌ์šฉ ์ฒดํฌ ๋ฐ ์›ํ•˜๋Š” ํฌํŠธ๋ฒˆํ˜ธ ์„ค์ •
  4. ์„ค์ •ํ•ด๋‘” ipTIME์˜ DDNS ๋„๋ฉ”์ธ + ํฌํŠธ๋ฒˆํ˜ธ๋กœ ์›๊ฒฉ์—์„œ ipTIME ์ ‘๊ทผ ๊ฐ€๋Šฅ
    • (์˜ˆ์‹œ) 1nteger.iptime.org:22000

5. Nginx ์„ค์น˜ ๋ฐ ์„ค์ •

ํ•œ๊ธ€ ํฐํŠธ์™€ ๋ฌธ์ž์…‹ ์„ค์ •์€ ๋‹น์žฅ ํ•„์š”ํ•˜์ง€ ์•Š์ง€๋งŒ ํ•ด๋‘์—ˆ๋‹ค.

5.0. Nginx ์„ค์น˜

  1. $ sudo apt-get update
  2. $ sudo apt-get install nginx

5.1. ํ•œ๊ธ€ ํฐํŠธ ๋ฐ ์ž…๋ ฅ๊ธฐ ์„ค์น˜

  • $ sudo apt-get install fonts-unfonts-core
  • $ sudo apt-get install ibus-hangul

5.2 Nginx ๋ฌธ์ž์…‹ ์„ค์ •

  • $ sudo vim /etc/nginx/nginx.conf
  • Basic Settings ํ•˜๋‹จ์— ์•„๋ž˜ ๋‚ด์šฉ ์ถ”๊ฐ€ ~~~ charset utf-8; server { charset utf-8; } ~~~

6. ๋„๋ฉ”์ธ, SSL ์„ค์ •

6.0. ๋„๋ฉ”์ธ ๊ตฌ์ž…

๋ธ”๋กœ๊ทธ ๋„๋ฉ”์ธ์„ Godaddy์—์„œ ๊ตฌ์ž…ํ–ˆ์—ˆ๋Š”๋ฐ, ๋น„์‹ธ๋‹ค.
๊ตฌ๊ธ€๋ง ๊ฒฐ๊ณผ Namecheap์˜ ํ‰๊ฐ€๊ฐ€ ํ›จ์”ฌ ์ข‹์•„์„œ ์„ ํƒํ–ˆ๋‹ค.
๊ทธ๋ฆฌ๊ณ  Godaddy๋Š” ANAME์ด๋‚˜ Alias๋ฅผ ์ œ๊ณตํ•˜์ง€ ์•Š์•„์„œ ๊ธฐ์กด์— ์žˆ๋˜ ๋„๋ฉ”์ธ๋„ Namecheap์œผ๋กœ ์ด์ „ํ–ˆ๋‹ค.

6.1. ๋„๋ฉ”์ธ ์—ฐ๊ฒฐ

์ด ๋ถ€๋ถ„์—์„œ ์‚ฝ์งˆ์„ ๋งŽ์ด ํ–ˆ๋‹ค. ์•„๋ž˜์— ์‚ฝ์งˆ ๊ณผ์ •์„ ์š”์•ฝํ–ˆ๋‹ค.

  1. ipTIME์—์„œ ์„ค์ •ํ•œ DDNS ๋„๋ฉ”์ธ(go-quality.iptime.org)์„ ๊ตฌ์ž…ํ•œ ๋„๋ฉ”์ธ(go-quality.dev)์˜ CNAME์œผ๋กœ ๋“ฑ๋กํ•ด์„œ ๊ณ ์ •IP ์ฒ˜๋Ÿผ ์‚ฌ์šฉํ•˜๋ ค ํ–ˆ๋‹ค.
  2. ํ•˜์ง€๋งŒ ์ •์ƒ์ ์œผ๋กœ ์ ‘์†๋˜์ง€ ์•Š์•˜๋‹ค.
  3. go-quality.iptime.org๋Š” ์„œ๋ธŒ ๋„๋ฉ”์ธ(e.g. www)์ด ์—†๋Š” Root domain์ธ๋ฐ, Root domain์€ ์„œ๋ธŒ ๋„๋ฉ”์ธ์ด ์—†์œผ๋ฏ€๋กœ CNAME ๋“ฑ๋กํ•˜๋ฉด์„œ Host ๋ถ€๋ถ„์— ์™€์ผ๋“œ์นด๋“œ(* ๋˜๋Š” @)๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋œ๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ๋‹ค.
  4. ์•Œ์•„๋ณด๋‹ˆ Root domain์€ CNAME์œผ๋กœ ์„ค์ •ํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์ด ํ‘œ์ค€(RFC 1912, RFC 2181) ์ด์—ˆ๋‹ค.
  5. ์ด ํ‘œ์ค€์€ ๊ธฐ์ˆ ์ ์ธ ์ œ์•ฝ์€ ์•„๋‹ˆ๊ณ  Contractual ์ œ์•ฝ์ธ๋ฐ, Namecheap์ด๋‚˜ Godaddy์—์„œ๋Š” ํ‘œ์ค€์„ ๋”ฐ๋ฅด๊ณ  ์žˆ์—ˆ๋‹ค.
  6. ๊ทธ๋ž˜์„œ ์„œ๋ธŒ๋„๋ฉ”์ธ์ด ์—†๋Š” Root domain์„ CNAME์œผ๋กœ ๋“ฑ๋กํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๊ตฌ๊ธ€๋งํ•˜๋‹ค๋ณด๋‹ˆ ANAME, ALIAS ๋“ฑ์˜ ๋ฐฉ๋ฒ•์„ ์ œ๊ณตํ•˜๋Š” ์—…์ฒด๋“ค์ด ์žˆ์—ˆ๋‹ค.
  7. Godaddy์—์„œ๋Š” ANAME๋„ ALIAS๋„ ์ œ๊ณตํ•˜์ง€ ์•Š์•˜๋Š”๋ฐ, ๋‹คํ–‰ํžˆ Namecheap์—์„œ๋Š” ALIAS๋ฅผ ์‚ฌ์šฉํ•ด์„œ CNAME ์ฒ˜๋Ÿผ ๋“ฑ๋กํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค.
  8. ํ•˜์ง€๋งŒ ๋˜ ๋‹ค์‹œ ์ •์ƒ์ ์œผ๋กœ ์ ‘์†๋˜์ง€ ์•Š์•˜๋‹ค.
  9. ์•Œ์•„๋ณด๋‹ˆ .dev ๋„๋ฉ”์ธ์€ https ์ ‘์†์ด default์ธ๋ฐ, SSL ์ธ์ฆ์„œ๋ฅผ ์„ธํŒ…ํ•˜์ง€ ์•Š์€ ๊ฒƒ์ด๋‹ค.
  10. ์šฐ์„  Alias๋กœ ๋“ฑ๋กํ•œ Root domain์ด CNAME ์ฒ˜๋Ÿผ ๋“ฑ๋ก๋˜์—ˆ๋Š”์ง€ ๋จผ์ € ํ…Œ์ŠคํŠธ๋ฅผ ํ•ด๋ณด๊ณ  SSL ์ธ์ฆ์„œ๋ฅผ ์„ธํŒ…ํ•˜๊ธฐ๋กœ ํ–ˆ๋‹ค.
  11. ํ…Œ์ŠคํŠธ๋ฅผ ์œ„ํ•ด Godaddy์— ๋“ฑ๋ก๋œ ๋„๋ฉ”์ธ ์ค‘ www.๋†€๊ณ ์žˆ๋˜๋„๋ฉ”์ธ.com์„ Namecheap์œผ๋กœ ์˜ฎ๊ฒผ๋‹ค.
  12. ๊ทธ๋ฆฌ๊ณ  www.๋†€๊ณ ์žˆ๋˜๋„๋ฉ”์ธ.com ๋„๋ฉ”์ธ์— go-quality.iptime.org๋ฅผ ALIAS๋กœ ์„ค์ •ํ–ˆ๋”๋‹ˆ, CNAME ์ฒ˜๋Ÿผ ๋“ฑ๋ก๋˜์—ˆ๋‹ค.
  13. Alias ์„ค์ • ํ›„, www.๋†€๊ณ ์žˆ๋˜๋„๋ฉ”์ธ.com ์œผ๋กœ ์ ‘๊ทผํ•˜๋‹ˆ go-quality.iptime.org์— ๋„์›Œ๋‘” Nginx ๋žœ๋”ฉํŽ˜์ด์ง€๋ฅผ ๋ณผ ์ˆ˜ ์žˆ์—ˆ๋‹ค. (Alias ํ…Œ์ŠคํŠธ ์„ฑ๊ณต)
  14. ๊ทธ ์ดํ›„, SSL์„ ์„ค์ •ํ•˜๊ณ  go-quality.dev๋กœ ์ ‘๊ทผํ•˜๋‹ˆ ์•„๋ž˜ ์ฒ˜๋Ÿผ ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด์— ์‹คํ–‰์ค‘์ธ Nginx ๋žœ๋”ฉํŽ˜์ด์ง€๊ฐ€ ๋‚˜ํƒ€๋‚ฌ๋‹ค. (๋„๋ฉ”์ธ ์—ฐ๊ฒฐ ์„ฑ๊ณต)

6.2. SSL ์ธ์ฆ์„œ ์ƒ์„ฑ ๋ฐ ์ ์šฉ

Let’s Encrypt๋ฅผ ์‚ฌ์šฉํ•ด์„œ ๋ฌด๋ฃŒ๋กœ SSL ์ธ์ฆ์„œ๋ฅผ ์„ธํŒ…ํ•ด๋ณธ๋‹ค.
Let’s Encrypt๋Š” “์ „ ์„ธ๊ณ„ ๋ชจ๋“  ์‚ฌ์ดํŠธ๋ฅผ HTTPS๋กœ ๋งŒ๋“ค๊ธฐ!โ€ ๋ผ๋Š” ์Šฌ๋กœ๊ฑด์œผ๋กœ ์‹œ์ž‘ ๋œ ์˜คํ”ˆ์†Œ์Šค ํ”„๋กœ์ ํŠธ์ด๋‹ค.
3๊ฐœ์›”๋งˆ๋‹ค ์ธ์ฆ์„œ๋ฅผ ๊ฐฑ์‹ ํ•ด์•ผ ํ•˜์ง€๋งŒ, ์ž๋™ํ™”ํ•  ์ˆ˜ ์žˆ์œผ๋‹ˆ ๋ฌธ์ œ์—†๋‹ค.

  1. ์‹คํ–‰์ค‘์ธ Nginx ์ข…๋ฃŒ
    • letsencrypt๊ฐ€ 80๋ฒˆ ํฌํŠธ๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์ธ์ฆ์„ ์‹œ๋„ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์‹คํ–‰์ค‘์ธ nginx๋ฅผ ์ข…๋ฃŒํ•ด์•ผ ํ•œ๋‹ค.
      • $ sudo service nginx stop
    • 80๋ฒˆ ํฌํŠธ๊ฐ€ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ๊ฒƒ์„ ํ™•์ธํ•œ๋‹ค.
      • $ netstat -ant
  2. ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด์— letsencrypt๋ฅผ ์„ค์น˜ํ•œ๋‹ค.
    • $ sudo apt install letsencrypt
  3. ์ธ์ฆ์„œ ์ƒ์„ฑ
    • sudo letsencrypt certonly --standalone -d go-quality.dev
  4. ์ธ์ฆ์„œ ์ƒ์„ฑ ๊ฒฐ๊ณผ ํ™•์ธ

    • ์œ„์˜ ๊ฒฐ๊ณผ๋ฅผ ์š”์•ฝํ•˜์ž๋ฉด,
      • ์ธ์ฆ์„œ์™€ ํ‚ค ํŒŒ์ผ์ด ๊ฐ๊ฐ ์•„๋ž˜ ๊ฒฝ๋กœ์— ์ €์žฅ๋˜์—ˆ๋‹ค.
        • /etc/letsencrypt/live/go-quality.dev/fullchain.pem
        • /etc/letsencrypt/live/go-quality.dev/privkey.pem
      • ์ธ์ฆ์„œ๋Š” 2020๋…„ 2์›” 21์ผ์— ๋งŒ๋ฃŒ๋˜๊ณ , $ certbot renew ๋ช…๋ น์„ ํ†ตํ•ด ๊ฐฑ์‹ ํ•  ์ˆ˜ ์žˆ๋‹ค.
      • Certbot ์„ค์ • ๋””๋ ‰ํ† ๋ฆฌ(/etc/letsencrypt)์— ๋„ˆ์˜ ๊ณ„์ • credential๊ณผ ์ธ์ฆ์„œ, ๊ทธ๋ฆฌ๊ณ  private key๊ฐ€ ์ €์žฅ๋˜์—ˆ์œผ๋‹ˆ, ์•ˆ์ „ํ•œ ๋ฐฑ์—…ํด๋”๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๊ฒƒ์ด ์ข‹๋‹ค.
      • Certbot์— ๊ธฐ๋ถ€์ข€ ํ•ด์ค˜.
    • $ certbot certificates ๋ช…๋ น์œผ๋กœ ๋ฐœ๊ธ‰๋ฐ›์€ ์ธ์ฆ์„œ ๋ชฉ๋ก ํ™•์ธ
  5. Nginx์— ์ธ์ฆ์„œ ์ ์šฉ

    • Nginx ์„ค์ • ํŒŒ์ผ(/etc/nginx/nginx.conf)์˜ http{ ... } ์•ˆ์— ์•„๋ž˜ ๋‚ด์šฉ์„ ์ถ”๊ฐ€ํ•œ๋‹ค.

      server {
              listen 443 ssl default_server;
              listen [::]:443 ssl default_server;
                      
              ssl_certificate /etc/letsencrypt/live/{๋„๋ฉ”์ธ๋ช…}/fullchain.pem;
              ssl_certificate_key /etc/letsencrypt/live/{๋„๋ฉ”์ธ๋ช…}/privkey.pem;
              ssl_protocols   TLSv1 TLSv1.1 TLSv1.2;
              ssl_ciphers     HIGH:!aNULL:!MD5;
      }
  6. Nginx ์‹œ์ž‘ ๋ฐ ํฌํŠธํ™•์ธ

    • $ sudo service nginx start
    • $ netstat -ant
      • 443 ํฌํŠธ listening์„ ํ™•์ธํ•œ๋‹ค.
  7. SSL ์ ์šฉ ํ™•์ธ

    • SSL์„ ์ ์šฉํ–ˆ๋Š”๋ฐ ๋ธŒ๋ผ์šฐ์ €์˜ ์ฃผ์†Œ์ฐฝ ์™ผ์ชฝ ์ž๋ฌผ์‡ ๊ฐ€ ์—ฌ์ „ํžˆ ์ž ๊ฒจ์žˆ์ง€ ์•Š๋‹ค๋ฉด, whynopadlock์—์„œ ๋ฌธ์ œ์ ์„ ์ง„๋‹จ๋ฐ›์•„๋ณธ๋‹ค.

์ฐธ๊ณ  : LETSENCRYPT ์—์„œ SSL ์ธ์ฆ์„œ๋ฅผ ๋ฌด๋ฃŒ๋กœ ๋ฐœ๊ธ‰ ๋ฐ›์•„ ์›น ์„œ๋ฒ„์— ์ ์šฉํ•˜๊ธฐ

6.3. SSL ์ธ์ฆ์„œ ์ž๋™๊ฐฑ์‹  ์„ค์ •

30์ผ ๋งˆ๋‹ค ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด์— ์ ‘์†ํ•ด์„œ $ certbot renew๋ฅผ ์ž…๋ ฅํ•˜๋Š” ๊ฒƒ์€ ๊ท€์ฐฎ๋‹ค.
Crontab์œผ๋กœ ์ธ์ฆ์„œ ๊ฐฑ์‹ ์„ ์ž๋™ํ™” ํ•œ๋‹ค.

  1. ์ธ์ฆ์„œ ๋งŒ๋ฃŒ์ผ ํ™•์ธ
    • $ certbot certificates ๋ช…๋ น์œผ๋กœ Expiry Date ํ™•์ธ
  2. ์‹œ์Šคํ…œ ์‹œ๊ฐ„ ํ™•์ธ
    • $ date
  3. ๊ธฐ์กด์— ์„ค์ •๋œ Crontab ํ™•์ธ
    • $ sudo cron -l
  4. Crontab ํŽธ์ง‘

    • $ sudo cron -e
    • ์•„๋ž˜ ๋‚ด์šฉ ์ถ”๊ฐ€ ํ›„ ์ €์žฅ

      # ๋งค์›” 1์ผ ์ƒˆ๋ฒฝ4์‹œ์— $ certbot renew ๋ช…๋ น์„ ๋‚ด๋ฆฌ๊ณ , ๊ฐฑ์‹ ์— ์„ฑ๊ณตํ•˜๋ฉด nginx reload
      0 04 1 * * /usr/bin/certbot renew --renew-hook="sudo systemctl reload nginx"
  5. Crontab ์‹คํ–‰ ๋กœ๊ทธ ํ™•์ธ

    • ๊ฐฑ์‹ ์ด ์ œ๋Œ€๋กœ ์ด๋ฃจ์–ด์ง€๋Š”์ง€ ๋กœ๊ทธ๋กœ ํ™•์ธํ•œ๋‹ค.
    • $ view /var/log/syslog

์ฐธ๊ณ  - Let’s Encrypt SSL ์ธ์ฆ์„œ ์ž๋™ ๊ฐฑ์‹  ์„ค์ • ๋ฐฉ๋ฒ• - SSL ์ธ์ฆ์„œ ์ž๋™ ๊ฐฑ์‹  ์˜ค๋ฅ˜

7. ๊ธฐํƒ€

7.0. ์˜จ๋„ ์ธก์ •์šฉ ์‰˜ ์Šคํฌ๋ฆฝํŠธ ์ž‘์„ฑ

  1. ์‰˜ ์Šคํฌ๋ฆฝํŠธ ํŒŒ์ผ ์ƒ์„ฑ
    • $ sudo vim thermometer.sh
  2. ์‰˜ ์Šคํฌ๋ฆฝํŠธ ์ž‘์„ฑ

    #!/bin/bash
    cpuTemp=$(cat /sys/class/thermal/thermal_zone0/temp)
    cpuTemp1=$(($cpuTemp/1000))
    cpuTemp2=$(($cpuTemp/100))
    cpuTempM=$(($cpuTemp2 % $cpuTemp1))
        
    gpuTemp=$(/opt/vc/bin/vcgencmd measure_temp)
    gpuTemp=${gpuTemp}
    gpuTemp=${gpuTemp//temp=/}
        
    echo $(date "+%Y-%m-%d %H:%M")
    echo Temperature CPU : $cpuTemp1"."$cpuTempM"'C, GPU : "$gpuTemp
  3. ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด ์˜จ๋„ ํ™•์ธ

    • $ ./thermometer.sh

์ฐธ๊ณ  : ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด ์‹œ์Šคํ…œ ์˜จ๋„(๋ฐœ์—ด) ํ™•์ธ


1ํŽธ ๋.

์ฒ˜์Œ์— ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด์— ํ† ์ดํ”„๋กœ์ ํŠธ๋ฅผ ์˜ฌ๋ ค์•ผ๊ฒ ๋‹ค๋Š” ์ƒ๊ฐ์ด ๋“ค์—ˆ์„ ๋•Œ๋Š”,
์†”์งํžˆ ์ด๋ ‡๊ฒŒ ์‚ฝ์งˆ์„ ๋งŽ์ด ํ•˜๊ฒŒ ๋  ์ค„(๋งŽ์€ ๊ฑธ ๋ฐฐ์šฐ๊ฒŒ ๋  ์ค„)์€ ๋ชฐ๋ž๋‹ค.
๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด ์‚ฌ์„œ, OS ์„ค์น˜ํ•˜๊ณ , wi-fi ์—ฐ๊ฒฐํ•˜๊ณ , nginx ์„ค์น˜ํ•˜๊ณ , jarํŒŒ์ผ ์˜ฌ๋ฆฌ๊ณ , ๋„๋ฉ”์ธ ์—ฐ๋™ํ•˜๋ฉด ๋์ด๋ผ๊ณ  ์ƒ๊ฐํ–ˆ๋˜ ๊ฒƒ์ด๋‹ค.

์‹ค์ œ๋กœ ๊ทธ๊ฒŒ ์ „๋ถ€๋‹ค.
ํ•˜์ง€๋งŒ ๊ทธ ์‚ฌ์ด์‚ฌ์ด์—, ๋‚ด๊ฐ€ ๊ฐ€์ง„ ๊ฐœ๋ฐœ์ง€์‹์˜ ๋นˆ ํ‹ˆ๋“ค์ด ๋ฏธ์ณ ๋‚ ๋›ฐ์–ด์ค€ ๋•๋ถ„์—
๋‚ด๊ฐ€ ์ด๊ฑธ ์—ฌํƒœ ๋ชจ๋ฅด๊ณ  ๊ฐœ๋ฐœ์ž๋ผ๊ณ  ๋– ๋“ค๊ณ  ๋‹ค๋…”๊ตฌ๋‚˜.. ๋ผ๋Š” ์•„..ํ•˜.. ๋ชจ๋ฉ˜ํŠธ๊ฐ€ ์‰ด ์ƒˆ ์—†์ด ํœ˜๋ชฐ์•„์ณค๋‹ค.

์ปด๊ณต ์ „๊ณต์ž๋“ค์€ ๋Œ€ํ•™์ƒ๋•Œ ํ•™๊ต ๊ณผ์ œ๋กœ, ํ˜น์€ ์‹ฌ์‹ฌํ’€์ด๋กœ ๋งŒ์ง„๋‹ค๋Š” ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด๋ฅผ..
๋‚˜๋Š” ๋œจ๊ฑฐ์šด ์‡ ๊ณต์„ ๊ตด๋ฆฌ๋“ฏ, ์† ๋Œˆ ๋•Œ๋งˆ๋‹ค ์•— ๋œจ๊ฑฐ! ํ•˜๋ฉฐ, ๊ตฌ๊ธ€๋ง ์‚ผ๋งค๊ฒฝ์— ๋น ์กŒ๋”๋žœ๋‹ค.
๋“ค์ธ ์‹œ๊ฐ„ ๋Œ€๋น„ ์‹ค์ œ๋กœ ํ•œ ๊ฒƒ์€ ๋ณ„๋กœ ์—†์ง€๋งŒ, ์ด๋ ‡๊ฒŒ๋ผ๋„ ๋นˆ ํ‹ˆ์„ ์ฑ„์šธ ์ˆ˜ ์žˆ์–ด์„œ ์ข‹์•˜๋‹ค.

2ํŽธ์€ Spring boot ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด์— ๋ฐฐํฌํ•˜๋Š” ๊ณผ์ •์„ ์ •๋ฆฌํ•  ์˜ˆ์ •์ด๊ณ ,
3ํŽธ์€ ํ† ์ดํ”„๋กœ์ ํŠธ์˜ ์ธํ”„๋ผ ํ™˜๊ฒฝ์„ ๋„์ปค ๊ธฐ๋ฐ˜์œผ๋กœ ๋ฐ”๊พธ๋Š” ๊ณผ์ •์„ ์ •๋ฆฌํ•  ์˜ˆ์ •์ด๋‹ค.


Reference