๋ธ๋ก๊ทธ ์ฎ๊ฒผ์ต๋๋ค! ๐ก integer.blog
ํ ์ดํ๋ก์ ํธ๋ฅผ ์ฌ๋ฆด ์๋ฒ๋ฅผ 2019๋ 7์์ ์๋ก ์ถ์ํ ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด4๋ก ๋ง๋ค์ด ๋ณด์๋ค.
ํฌ๊ฒ 3๋จ๊ณ๋ก ์์ ์ ์งํํ ์์ ์ด๋ค.
1ํธ - ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด4๋ฅผ ์๋ฒ๋ก ๋ง๋ค๊ธฐ
2ํธ - ์น ์ดํ๋ฆฌ์ผ์ด์ ๋ฐฐํฌ
3ํธ - ๋์ปค๋ผ์ด์ง
0. ๋ชฉ์ฐจ
์ฌ๋ฃ ์ค๋น ๋ฐ ์์
1.0. ๊ตฌ์ ํ ์ ํ๋ค
1.1. ์ ์ ์ฐ๊ฒฐ
1.2. ์์ ํ๊ฒ ์ข ๋ฃํ๊ธฐOS ์ค์น
2.0. Raspbian ์ค์น ๋ฐฉ๋ฒ ์ ํ
2.1. Raspbian ์ด๋ฏธ์ง ๋ค์ด๋ก๋
2.2. SD์นด๋์ Raspbian ์ด๋ฏธ์ง ๊ตฝ๊ธฐ
2.3. ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด์ OS ์ค์น๊ธฐ๋ณธ ํ๊ฒฝ ์ค์
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.0. ๋ด๋ถIP ๊ณ ์
4.1. DDNS ์ค์
4.2. ํฌํธํฌ์๋ฉ ์ค์
4.3. ipTIME ์๊ฒฉ์ ์ ํ์ฉNginx ์ค์น ๋ฐ ์ค์
5.0. Nginx ์ค์น
5.1. ํ๊ธ ํฐํธ ๋ฐ ์ ๋ ฅ๊ธฐ ์ค์น
5.2 Nginx ๋ฌธ์์ ์ค์ ๋๋ฉ์ธ, SSL ์ค์
6.0. ๋๋ฉ์ธ ๊ตฌ์
6.1. ๋๋ฉ์ธ ์ฐ๊ฒฐ
6.2. SSL ์ธ์ฆ์ ์์ฑ ๋ฐ ์ ์ฉ
6.3. SSL ์ธ์ฆ์ ์๋๊ฐฑ์ ์ค์ ๊ธฐํ
7.0. ์จ๋ ์ธก์ ์ฉ ์ ์คํฌ๋ฆฝํธ ์์ฑ
1. ์ฌ๋ฃ ์ค๋น ๋ฐ ์์
๊ตฌ์ ํ ๋น์์ ํ๊ตญ์ ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด4 ํ๋งค์ฒ๊ฐ ์์ ์์ด์, ๋ฏธ๊ตญ์ ์ฌ๋ ์ฒ๋จ์๊ฒ ๋ถํํด์ ์ ํ์ ๊ตฌ๋งคํ๋ค.
๊ตฌ๊ธ๋ง์ ๊ฝค ํด๋ณด๊ณ ๋ฆฌ๋ทฐ๋ค๋ ์ฝ์ด ๋ณธ ํ์ ๊ตฌ๋งคํ ์ ํ๋ค์ด์ง๋ง, ์ต๊ณ ์ ์ ํ์ด ์๋ ์๋ ์๋ค.
(์ ํ ํ๋ณด ์ ๋ ์๋!)
1.0. ๊ตฌ์ ํ ์ ํ๋ค
- Raspberry Pi 4 ๋ณด๋ (๋งํฌ)
- USB C Type ์ถฉ์ ๊ธฐ (5V 3A) (๋งํฌ)
- ์๊ฐ๋ณด๋ค 5V 3A PSU๋ฅผ ๊ตฌํ๊ธฐ๊ฐ ํ๋ค์๋ค.
- ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด4 ๊ณต์ PSU์ ๊ฒฝ์ฐ ์ ๋ฝ ์ ํ์ ์ฌ์ฉํด์ผ ํ๋๋ฐ, ์ ๋ฝ ์ฌ์ดํธ์์ ์ง๊ตฌํด์ผํด์ ๋น์ธ๋ค.
- ์ด ์ ํ์ ์ฌ์ฉํด๋ ๋ ๊ฒ ๊ฐ๋ค.
- ๋ชจ๋ํฐ ์ผ์ด๋ธ (Micro-HDMI to HDMI) (๋งํฌ)
- Micro SD ์นด๋ (64GB) (๋งํฌ)
- ์ผ์ด์ค + ์ฟจ๋งํฌ (๋งํฌ)
- ๋ฐ๋์ ํ์ํ ๊ฒ์ ์๋์ง๋ง, ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด4์ ๋ฐ์ด ์ด์๊ฐ ์๋๋ฐ ํด์ธ ์ ์ ๋ค์ ์ฟจ๋งํฌ์ผ๋ก ํด๊ฒฐํ๋ค๊ณ ํ๋ค.
- ๋ฐ์ด ์ด์ ๋๋ฌธ์ ๋ณด๋ ์ค๊ณ๋ฅผ ์์ ํ ๊ฒ์ด๋ผ๋ ์ ์์ฌ์ธก์ ๋ฐํ๋ ์์๋ค. (์ ์ฅ)
1.1. ์ ์ ์ฐ๊ฒฐ
- ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด ๋ณด๋๋ฅผ ์ผ์ด์ค์ ๊ฒฐํฉ
- ์ฟจ๋งํฌ์ ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด ๋ณด๋์ GPIO์ ์ฐ๊ฒฐ
- ์ด ๊ณณ์์ ํ์ ์์น๋ฅผ ํ์ธํ๋ค.
- ํฌ์ ์๋๋ฅผ 3.3v์ low speed์ 5v์ high speed ์ค ์ ํํ ์ ์๋ค.
- 3.3v(low speed)์ ์์น๋ ์์ ๋งํฌ์์ 1๋ฒ(๋นจ๊ฐ์ ), 6๋ฒ(๊ฒ์ ์ )
- 5v(high speed)์ ์์น๋ 4๋ฒ(๋นจ๊ฐ์ ), 6๋ฒ(๊ฒ์ ์ )
์ ์์ ์ฐ๊ฒฐํ๋ฉด ๋นจ๊ฐ๋ถ๊ณผ ๋ น์๋ถ์ด ์ผ์ง๊ณ , ํฌ์ด ๋์๊ฐ๋ค.
1.2. ์์ ํ๊ฒ ์ข ๋ฃํ๊ธฐ
- ์ฒ์์๋ ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด์ ์ ์์ฝ๋๋ฅผ ๋ฝ๋ ๋ฐฉ๋ฒ์ผ๋ก ์ข ๋ฃ๋ฅผ ํด์๋๋ฐ, ์ํํ ๋ฐฉ๋ฒ์ด์๋ค.
- ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด ์ข ๋ฃํ๋ ๋ฐฉ๋ฒ์ด๋ผ๋ ๊ธ์ ์ํ๋ฉด, SD์นด๋๊ฐ ๊ณ ์ฅ๋ ์ ์๊ณ , ์ํฉ์ ๋ฐ๋ผ ๋ฐ์ดํฐ๊ฐ ์์ค๋ ์ ์๋ค๊ณ ํ๋ค.
$ sudo shutdown -h now
๋ช ๋ น์ ํ๋ฉด, ์๋์ ๊ณผ์ ์ ๊ฑฐ์ณ ์์ ํ๊ฒ ์ข ๋ฃ๋๋ค.- ์คํ์ค์ธ ๋ชจ๋ ํ๋ก์ธ์ค์ SIGTERM ๋ช ๋ น์ ๋ณด๋ด์ ์์ ํ๊ฒ ์ ์ฅํ๊ณ ์ข ๋ฃ(Exit)ํ๊ฒ ํ๋ค.
- ์ฝ๊ฐ์ ๊ฐ๊ฒฉ์ ๋๊ณ , SIGKILL ๋ช ๋ น์ ๋ณด๋ด์ ๋จ์์๋ ํ๋ก์ธ์ค๋ค์ ์ข ๋ฃ(Halt)ํ๋ค.
- ๋ชจ๋ ํ์ผ ์์คํ ๋ค์ ๋ถ๋ฆฌ(unmount)ํ๋ค.
- ํ๋ฉด์ System Halted๋ผ๊ณ ํ์๋๋ค. (๋ผ์ฆ๋ฒ ๋ฆฌํ์ด4์ ๊ฒฝ์ฐ ํ์๋๋ ๋ฉ์ธ์ง๋ฅผ ๋ณผ ๊ฒจ๋ฅผ ์์ด ๋ชจ๋ํฐ ์ฐ๊ฒฐ์ด ์ข ๋ฃ๋๋ค.)
- ์ด์ ์ ์์ฝ๋๋ฅผ ๋ฝ์๋ ๋๋ค.
- ๋ค์ ๋ถํ ํ๋ ค๋ฉด ์ ์์ฝ๋๋ฅผ ์ฐ๊ฒฐํ๋ฉด ๋๋ค.
2. OS ์ค์น
๋ค๋ฅธ ์ ํ์ง๋ค๋ ์์ง๋ง, ์ฒซ ๊ฒฝํ์ด๋ฏ๋ก ์์ ํ๊ฒ ๊ณต์ OS์ธ Raspbian์ ์ค์นํ๋ค.
2.0. Raspbian ์ค์น ๋ฐฉ๋ฒ ์ ํ
- NOOBS ์ฌ์ฉ
- NOOBS(New Out Of the Box Software)๋ผ๋ ์ด์์ฒด์ ์ค์น ๊ด๋ฆฌ์๋ฅผ ์ฌ์ฉํด์ ์ค์นํ OS๋ฅผ ์ ํํ๋ ๋ฐฉ๋ฒ
- ๋ถํ ๊ณผ ์ค์น ์๋๊ฐ ๋๋ฆฌ๋ค.
- ๋ค์ํ OS ์ค์ ์ ํํ์ฌ ์ค์น ๊ฐ๋ฅ.
- OS ์ด๋ฏธ์ง๋ฅผ SD์นด๋์ ๊ธฐ๋กํ์ฌ ์ค์น
- ์ด๋ฏธ์ง ๊ธฐ๋ก ํ๋ก๊ทธ๋จ(Etcher ๋๋ Win32 Disk Imager)์ ์ฌ์ฉํ์ฌ SD์นด๋์ OS ์ด๋ฏธ์ง๋ฅผ ๊ตฌ์์ ์ค์นํ๋ ๋ฐฉ๋ฒ
- ๋ถํ
๊ณผ ์ค์น ์๋๊ฐ ๋น ๋ฅด๋ค.
๋์ ๊ฒฝ์ฐ ์ค์นํ๋ ค๋ OS์ ์ค์น ๋ชฉ์ ์ด ๋ถ๋ช ํ๋ฏ๋ก 2๋ฒ ๋ฐฉ๋ฒ์ผ๋ก ์ค์น๋ฅผ ์งํํ๋ค.
2๋ฒ ๋ฐฉ๋ฒ์ผ๋ก Raspbian ์ค์น ์ ์ฐจ
- OS ์ด๋ฏธ์ง ๋ค์ด๋ก๋
- ๋ค์ด๋ฐ์ ์ด๋ฏธ์ง(zip ๋๋ torrent)๋ฅผ Micro SD ์นด๋์ ๊ตฝ๊ธฐ
- OS ์ด๋ฏธ์ง๊ฐ ๊ตฌ์์ง Micro SD์นด๋๋ฅผ ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด์ ์ฝ์ ํ๊ณ ๋ถํ ํ์ฌ ์ค์นํ๊ธฐ
2.1. Raspbian ์ด๋ฏธ์ง ๋ค์ด๋ก๋
- ์ด ๊ณณ์์ Raspbian ์ด๋ฏธ์ง๋ฅผ ๋ค์ด๋ก๋ ๋ฐ๋๋ค.
- ๋๋ ์๋ฒ๋ก๋ง ์ฌ์ฉํ ์์ ์ด๊ธฐ ๋๋ฌธ์ Desktop GUI๊ฐ ์์ง๋ง ๋ฆฌ์์ค ์๋ชจ๊ฐ ์ ์ Lite ๋ฒ์ ์ ์ ํํ๋ค.
2.2. SD์นด๋์ Raspbian ์ด๋ฏธ์ง ๊ตฝ๊ธฐ
- ๊ธฐ์กด์ ์ฌ์ฉํ์๋ SD์นด๋๋ ํฌ๋งทํ ํ์ ์ฌ์ฉํ๋ ๊ฒ์ด ์์ ํ๋ค. (SD Memory Card Formatter)
- ์ค๋นํด๋ Micro SD์นด๋๋ฅผ SD Adapter ํน์ USB ๋ฆฌ๋๊ธฐ์ ๊ฝ์์ ๋ฉํ/๋ฐ์คํฌํ์ ์ฐ๊ฒฐํ๋ค.
- Etcher๋ฅผ ์ฌ์ฉํด์ ๋ค์ด๋ฐ์ OS ์ด๋ฏธ์ง๋ฅผ Micro SD์นด๋์ ๊ตฝ๋๋ค.(flash)
- Etcher ์ฌ์ฉ๋ฒ์ ๊ฐ๋จํ๋ค.
- ์ด๋ฏธ์ง๋ฅผ ์ ํํ๊ณ , SD์นด๋๋ฅผ ์ ํํ๊ณ , Flash(๊ตฝ๊ธฐ)!
- ์ด ๋, ๋ค์ด๋ฐ์ Raspbian OS ์ด๋ฏธ์ง๊ฐ zip ํ์ผ์ผํ
๋ฐ, ์์ถ์ ํ ํ์์์ด ๊ทธ๋๋ก ์ฌ์ฉํ๋ฉด ๋๋ค.
- ์ด ๋, ๋ค์ด๋ฐ์ Raspbian OS ์ด๋ฏธ์ง๊ฐ zip ํ์ผ์ผํ
๋ฐ, ์์ถ์ ํ ํ์์์ด ๊ทธ๋๋ก ์ฌ์ฉํ๋ฉด ๋๋ค.
2.3. ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด์ OS ์ค์น
- Rasbian ์ด๋ฏธ์ง๊ฐ ๊ตฌ์์ง SD์นด๋๋ฅผ ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด์ ์ฝ์ ํ๋ค.
- ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด์ ๋ชจ๋ํฐ์ ํค๋ณด๋๋ฅผ ์ฐ๊ฒฐํ ํ, ์ ์์ ์ฐ๊ฒฐํ๋ค.
- ์ ์์ ์ฐ๊ฒฐํ๋ฉด ๋นจ๊ฐ ๋ผ์ฆ๋ฒ ๋ฆฌ 4๊ฐ๊ฐ ํ๋ฉด์ ํ์๋๋ฉด์ ๋ถํ ์ด ์์๋๊ณ , Rasbian์ด ์๋์ผ๋ก ์ค์น๋๋ค.
- ์ค์น๊ฐ ์ ์์ ์ผ๋ก ์๋ฃ๋๋ฉด (Lite ๋ฒ์ ์ ๊ฒฝ์ฐ)
raspberrypi login:
์ด ๋ณด์ธ๋ค. - ์ด๊ธฐ ์์ด๋๋
pi
, ๋น๋ฐ๋ฒํธ๋raspberry
3. ๊ธฐ๋ณธ ํ๊ฒฝ ์ค์
Raspbian Lite ๋ฒ์ ์ ๊ธฐ์ค์ผ๋ก ์๋ฒ๋ก ํ์ฉํ๊ธฐ ์ํ ๊ธฐ๋ณธ ํ๊ฒฝ์ ์ค์ ํ๋ค.
3.0. ์ค์ ๋๊ตฌ ์คํ
$ sudo raspi-config
๋ช ๋ น์ ํตํด ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด ์ค์ ๋๊ตฌ(Raspberry Pi Software Configuration Tool)๋ฅผ ์คํํ๋ค.- ๊ทธ๋ผ ์๋์ ๊ฐ์ด
๋ธ๋ฃจ๋ผ์ดํธ ์ฐจ๋จ ์๊ฒฝ์ ๋ฌด๋ ฅํํ๋์ํ๋ ์ค์ ๋๊ตฌ๊ฐ ์คํ๋๋ค.
3.1. ๋น๋ฐ๋ฒํธ ๋ณ๊ฒฝ
1. Change User Password
๋ฅผ ์ ํํ์ฌ ๋น๋ฐ๋ฒํธ๋ฅผ ๋ณ๊ฒฝํ๋ค.- ์ด๊ธฐ ๋น๋ฐ๋ฒํธ๋ฅผ ์ฌ์ฉํด๋ ๋์ง๋ง, ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด๋ฅผ ๋ถ์คํ์ ๊ฒฝ์ฐ๋ฅผ ๊ณ ๋ คํ๋ฉด ๋ฐ๊พธ๋ ๊ฒ์ด ๋ง์ ํธํ๋ค.
- (์ฃผ์) ํค๋ณด๋ ์ค์ ์ ํ๊ธฐ ์ ์๋ !@#$%^&* ๋ฑ์ ๋ฌธ์๋ฅผ ์ฌ์ฉํ์ง ์๋ ๋น๋ฐ๋ฒํธ๋ฅผ ์ฌ์ฉํ๋ค.
3.2. Locale ์ค์
4. Localisation Options
->I1 Change Locale
ํด๋ฆญ- ์ญ ๋ด๋ ค๊ฐ์
[*] en_US.UTF-8 UTF-8
์ ํ (์คํ์ด์ค๋ฐ ์ฌ์ฉ) ํ OKko_KR.UTF-8 UTF-8
์ ์ฌ์ฉํ๋ฉด ์๋ฌ ๋ฉ์ธ์ง๋ก ๊ตฌ๊ธ๋งํ๊ธฐ๊ฐ ๋ ์ด๋ ค์์ ๋ฏธ๊ตญ์ผ๋ก ์ ํํ๋ค.
- Default locale for the system environment ๋ฅผ ๋ฌป๋ ํ๋ฉด์์
en.US.UTF-8
์ ํ ํ OK
3.3. Timezone ์ค์
4. Localisation Options
->I2 Change Timezone
ํด๋ฆญ- Asia ์ ํ, Seoul ์ ํ
- ์๋ฒ ์๊ฐ์ ๊ทธ๋ฆฌ๋์น ํ์ค์(GMT+0) ๋๋ ํ์ ์ธ๊ณ์(UTC+0)๋ก ๋ง์ถ๋ ค๋ฉด London์ ์ ํํ๋ค.
3.4. Keyboard Layout ์ค์
4. Localisation Options
->I3 Change Keyboard Layout
ํด๋ฆญ- ์์ธํ ์ค๋ช ๋ ๊ธ์ ์ฐธ๊ณ ํ์ฌ ํค๋ณด๋๋ฅผ ์ค์ ํ๋ค.
- ์ค์ ํ์ง ์์ผ๋ฉด !@#$%^&*() ๋ฑ์ Shift+์ซ์ํค๋ก ์ฌ์ฉํ๋ ํค๋ฅผ ์ฌ์ฉํ ์ ์๋ค๊ณ ํ๋ค.
ํดํผํดํน๋ ์ ํ์ง์ ์์ด์ ๊ธฐ๋ปค๋ค.
3.5. Wi-fi Country ์ค์
(์ฃผ์) ๋ฐ๋์ ๋ณ๊ฒฝํด์ผ ๋๋ ๊ฒ์ ์๋๋ค.
๋ณ๊ฒฝํ ๊ฒฝ์ฐ/etc/wpa_supplicant/wpa_supplicant.conf
ํ์ผ์country={๊ตญ๊ฐ์ฝ๋}
๊ฐ ์์ฑ๋๋๋ฐ,
์ด๊ฒ์ด ์์ด์ผ๋ง ๋ฌด์ ๋คํธ์ํฌ๊ฐ ๊ฒ์๋๋ ๊ฒฝ์ฐ๋ ์๋ค๊ณ ํ๋ค.
4. Localisation Options
->I4 Change Wi-fi Country
ํด๋ฆญUS United States
ํน์GB Britain (UK)
์ ํ- GB Britain (UK)๋ฅผ ์ ํํด์ผ๋ง ์ ์ ๋์ ํ๋ค๋ ์ฌ์ฉ์๋ค๋ ์๋ค.
- u๋ฅผ ์ ๋ ฅํ๋ฉด United States(๋ฏธ๊ตญ)์ ๊ธ๋ฐฉ ์ฐพ์ ์ ์๋ค.
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๋ก ์ค์ ํ๋ ๋ฐฉ๋ฒ์ด ์๋ค.
2. Network Options
->N2 Wi-fi Enter SSID and passphrase
ํด๋ฆญ- ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด๊ฐ ์ฌ์ฉํ ๊ณต์ ๊ธฐ์ SSID(์์ดํ์ด ์ด๋ฆ) ์ ๋ ฅ. ์์) KT_GiGA_2G_XXXX
- ๋น๋ฐ๋ฒํธ ์ ๋ ฅ
- ๊ณต์ ๊ธฐ ์ ์ ํ์ธ
$ iwconfig
๋ช ๋ น์ ๊ฒฐ๊ณผ์์ESSID
๊ฐ ์ ๋ ฅํ ๊ฒ๊ณผ ๊ฐ์ผ๋ฉด ์ ์ ์ ์.
- ์ค์ ํ์ธ
- ์ค์ ํ์ผ(/etc/wpa_supplicant/wpa_supplicant.conf)์์ SSID์ ๋น๋ฐ๋ฒํธ ํ์ธ ๊ฐ๋ฅ
- ์ค์ ํ์ผ(/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 ๋ช ๋ น์ผ๋ก ์์ดํ์ด๋ฅผ ์ค์ ํ๋ ๊ฒ์ด ์ข๋ค.
$ wpa_passphrase {SSID} {๋น๋ฐ๋ฒํธ}
๋ช ๋ น์ ์น๋ฉด, network ์ ๋ณด๊ฐ ์๋์ ๊ฐ์ด ์ฝ์์ ์ถ๋ ฅ๋๋ค.network={ ssid="KT_GiGA_5G_HOME" #psk="{๋น๋ฐ๋ฒํธ}" psk=7ac0c35da93c82d ....(์๋ต) }
์ถ๋ ฅ๋ network ์ ๋ณด๋ฅผ ์ค์ ํ์ผ(/etc/wpa_supplicant/wpa_supplicant.conf)์ ์ถ๊ฐํ๋ค.
- ์ด ๋, ๋ง์ฐ์ค๊ฐ ์์ผ๋ ์ถ๋ ฅ๋ ์ ๋ณด๋ฅผ Redirecting output(>>)์ผ๋ก ์ค์ ํ์ผ์ ๋ฃ๋๋ค.
- ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด ๊ณต์ ๋ฌธ์์ ์์ธํ๊ฒ ์ค๋ช
๋์ด์๋ค.
$ sudo su # root ๊ถํ์ผ๋ก ๋ณ๊ฒฝ $ wpa_passphrase {SSID} {๋น๋ฐ๋ฒํธ} >> /etc/wpa_supplicant/wpa_supplicant.conf
- ์ด ๋, ๋ง์ฐ์ค๊ฐ ์์ผ๋ ์ถ๋ ฅ๋ ์ ๋ณด๋ฅผ Redirecting output(>>)์ผ๋ก ์ค์ ํ์ผ์ ๋ฃ๋๋ค.
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 ์ธ์คํด์ค๊ฐ ๋ด ์ฑ ์์..)
- SSH ํ์ฉ
5. Interfacing Options
->P2 SSH
->YES
- ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด IP ํ์ธ
$ ifconfig
- ๋ฌด์ ๋์ ๊ฒฝ์ฐ,
wlan0
์inet addr: xxx.xx.x.xx
์ ์ ํ IP ํ์ธ (์ ์ ์ eth0)
- SSH ์ ์
- (๋ด๋ถ๋ง) ์ฃผ๋ก ์ฌ์ฉํ๋ PC/๋ฉํ์์
$ ssh pi@{๋ด๋ถIP ์ฃผ์}
๋ก ์ ์ - (์ธ๋ถ๋ง) ๋ฐ์์ ์ค๋ช
ํ ํฌํธํฌ์๋ฉ ์ค์ ํ
$ ssh -p {์ธ๋ถํฌํธ} pi@{์ธ๋ถIP์ฃผ์ ํน์ ๋๋ฉ์ธ๋ช }
๋ก ์ ์
- (๋ด๋ถ๋ง) ์ฃผ๋ก ์ฌ์ฉํ๋ PC/๋ฉํ์์
- ๋๋ฆฐ 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๋ฅผ ๊ณต์ ๊ธฐ ๋ด์์ ๊ณ ์ ์ํค๋ ๊ฒ์ด ์ข๋ค.
- ipTIME ์ ์ (192.168.0.1)
- ๊ณ ๊ธ์ค์ - ๋คํธ์ํฌ ๊ด๋ฆฌ - DHCP ์๋ฒ ์ค์
ํ๋จ์ [์ฌ์ฉ์ค์ธ 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 ์ฒ๋ผ ์ฌ์ฉํ ์์ ์ด๋ค.
- ipTIME ์ ์ (192.168.0.1)
- ๊ณ ๊ธ์ค์ - ํน์๊ธฐ๋ฅ - DDNS ์ค์
- ํธ์คํธ์ด๋ฆ๊ณผ ์ฌ์ฉ์ ID ์
๋ ฅ ํ ์์ฑ
- ์ด์ ์ธ๋ถIP ๋์ ๋๋ฉ์ธ(
{ํธ์คํธ์ด๋ฆ}.iptime.org
)์ผ๋ก ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด์ ์ ๊ทผํ ์ ์๋ค.
- ์ด์ ์ธ๋ถIP ๋์ ๋๋ฉ์ธ(
4.2. ํฌํธํฌ์๋ฉ ์ค์
์ธ๋ถ์์ ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด์ IP ํน์ ๋๋ฉ์ธ๊ณผ ์ง์ ๋ ํฌํธ๋ก ์ ๊ทผํ์ ๋, ์ฐ๊ฒฐ์ํฌ ๋ด๋ถ ํฌํธ ์ค์
- ipTIME ์ ์ (192.168.0.1)
- ๊ณ ๊ธ์ค์ - NAT/๋ผ์ฐํฐ ๊ด๋ฆฌ - ํฌํธํฌ์๋ ์ค์
- ์ ๊ท์น ์ถ๊ฐ
- ๊ท์น์ด๋ฆ: ์ฌ์ฉ์ ์ ์
- ๋ด๋ถ IP์ฃผ์: 3.7์์ ํ์ธํ ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด์ IP์ฃผ์ ์ ๋ ฅ
- ํ๋กํ ์ฝ: TCP
- ์ธ๋ถ ํฌํธ: ์์- 20000(ssh), 443(https), 80(http)
- ๋ด๋ถ ํฌํธ: 22(ssh), 443(https), 80(http) ๋ฑ
์ฐธ๊ณ : http์ ๊ธฐ๋ณธ ํฌํธ๊ฐ 80, https์ ๊ธฐ๋ณธ ํฌํธ๊ฐ 443์ธ ์ด์ ๋ ๋ฌด์์ผ๊น?
4.3. ipTIME ์๊ฒฉ์ ์ ํ์ฉ
- ipTIME ์ ์ (192.168.0.1)
- ๊ณ ๊ธ์ค์ - ๋ณด์๊ธฐ๋ฅ - ๊ณต์ ๊ธฐ ์ ์/๋ณด์๊ด๋ฆฌ
- ์๊ฒฉ ๊ด๋ฆฌ ํฌํธ ์ฌ์ฉ ์ฒดํฌ ๋ฐ ์ํ๋ ํฌํธ๋ฒํธ ์ค์
- ์ค์ ํด๋ ipTIME์ DDNS ๋๋ฉ์ธ + ํฌํธ๋ฒํธ๋ก ์๊ฒฉ์์ ipTIME ์ ๊ทผ ๊ฐ๋ฅ
- (์์) 1nteger.iptime.org:22000
5. Nginx ์ค์น ๋ฐ ์ค์
ํ๊ธ ํฐํธ์ ๋ฌธ์์ ์ค์ ์ ๋น์ฅ ํ์ํ์ง ์์ง๋ง ํด๋์๋ค.
5.0. Nginx ์ค์น
$ sudo apt-get update
$ 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. ๋๋ฉ์ธ ์ฐ๊ฒฐ
์ด ๋ถ๋ถ์์ ์ฝ์ง์ ๋ง์ด ํ๋ค. ์๋์ ์ฝ์ง ๊ณผ์ ์ ์์ฝํ๋ค.
- ipTIME์์ ์ค์ ํ DDNS ๋๋ฉ์ธ(
go-quality.iptime.org
)์ ๊ตฌ์ ํ ๋๋ฉ์ธ(go-quality.dev
)์ CNAME์ผ๋ก ๋ฑ๋กํด์ ๊ณ ์ IP ์ฒ๋ผ ์ฌ์ฉํ๋ ค ํ๋ค. - ํ์ง๋ง ์ ์์ ์ผ๋ก ์ ์๋์ง ์์๋ค.
go-quality.iptime.org
๋ ์๋ธ ๋๋ฉ์ธ(e.g. www)์ด ์๋ Root domain์ธ๋ฐ, Root domain์ ์๋ธ ๋๋ฉ์ธ์ด ์์ผ๋ฏ๋ก CNAME ๋ฑ๋กํ๋ฉด์ Host ๋ถ๋ถ์ ์์ผ๋์นด๋(* ๋๋ @)๋ฅผ ์ฌ์ฉํ๋ฉด ๋๋ค๊ณ ์๊ฐํ๋ค.- ์์๋ณด๋ Root domain์ CNAME์ผ๋ก ์ค์ ํ์ง ์๋ ๊ฒ์ด ํ์ค(RFC 1912, RFC 2181) ์ด์๋ค.
- ์ด ํ์ค์ ๊ธฐ์ ์ ์ธ ์ ์ฝ์ ์๋๊ณ Contractual ์ ์ฝ์ธ๋ฐ, Namecheap์ด๋ Godaddy์์๋ ํ์ค์ ๋ฐ๋ฅด๊ณ ์์๋ค.
- ๊ทธ๋์ ์๋ธ๋๋ฉ์ธ์ด ์๋ Root domain์ CNAME์ผ๋ก ๋ฑ๋กํ๋ ๋ฐฉ๋ฒ์ ๊ตฌ๊ธ๋งํ๋ค๋ณด๋
ANAME
,ALIAS
๋ฑ์ ๋ฐฉ๋ฒ์ ์ ๊ณตํ๋ ์ ์ฒด๋ค์ด ์์๋ค. - Godaddy์์๋ ANAME๋ ALIAS๋ ์ ๊ณตํ์ง ์์๋๋ฐ, ๋คํํ Namecheap์์๋ ALIAS๋ฅผ ์ฌ์ฉํด์ CNAME ์ฒ๋ผ ๋ฑ๋กํ ์ ์์๋ค.
- ํ์ง๋ง ๋ ๋ค์ ์ ์์ ์ผ๋ก ์ ์๋์ง ์์๋ค.
- ์์๋ณด๋
.dev
๋๋ฉ์ธ์ https ์ ์์ด default์ธ๋ฐ, SSL ์ธ์ฆ์๋ฅผ ์ธํ ํ์ง ์์ ๊ฒ์ด๋ค. - ์ฐ์ Alias๋ก ๋ฑ๋กํ Root domain์ด CNAME ์ฒ๋ผ ๋ฑ๋ก๋์๋์ง ๋จผ์ ํ ์คํธ๋ฅผ ํด๋ณด๊ณ SSL ์ธ์ฆ์๋ฅผ ์ธํ ํ๊ธฐ๋ก ํ๋ค.
- ํ
์คํธ๋ฅผ ์ํด Godaddy์ ๋ฑ๋ก๋ ๋๋ฉ์ธ ์ค
www.๋๊ณ ์๋๋๋ฉ์ธ.com
์ Namecheap์ผ๋ก ์ฎ๊ฒผ๋ค. - ๊ทธ๋ฆฌ๊ณ
www.๋๊ณ ์๋๋๋ฉ์ธ.com
๋๋ฉ์ธ์go-quality.iptime.org
๋ฅผALIAS
๋ก ์ค์ ํ๋๋, CNAME ์ฒ๋ผ ๋ฑ๋ก๋์๋ค. - Alias ์ค์ ํ,
www.๋๊ณ ์๋๋๋ฉ์ธ.com
์ผ๋ก ์ ๊ทผํ๋go-quality.iptime.org
์ ๋์๋ Nginx ๋๋ฉํ์ด์ง๋ฅผ ๋ณผ ์ ์์๋ค. (Alias ํ ์คํธ ์ฑ๊ณต) ๊ทธ ์ดํ, SSL์ ์ค์ ํ๊ณ
go-quality.dev
๋ก ์ ๊ทผํ๋ ์๋ ์ฒ๋ผ ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด์ ์คํ์ค์ธ Nginx ๋๋ฉํ์ด์ง๊ฐ ๋ํ๋ฌ๋ค. (๋๋ฉ์ธ ์ฐ๊ฒฐ ์ฑ๊ณต)
6.2. SSL ์ธ์ฆ์ ์์ฑ ๋ฐ ์ ์ฉ
Let’s Encrypt๋ฅผ ์ฌ์ฉํด์ ๋ฌด๋ฃ๋ก SSL ์ธ์ฆ์๋ฅผ ์ธํ ํด๋ณธ๋ค.
Let’s Encrypt๋ “์ ์ธ๊ณ ๋ชจ๋ ์ฌ์ดํธ๋ฅผ HTTPS๋ก ๋ง๋ค๊ธฐ!โ ๋ผ๋ ์ฌ๋ก๊ฑด์ผ๋ก ์์ ๋ ์คํ์์ค ํ๋ก์ ํธ์ด๋ค.
3๊ฐ์๋ง๋ค ์ธ์ฆ์๋ฅผ ๊ฐฑ์ ํด์ผ ํ์ง๋ง, ์๋ํํ ์ ์์ผ๋ ๋ฌธ์ ์๋ค.
- ์คํ์ค์ธ Nginx ์ข
๋ฃ
- letsencrypt๊ฐ 80๋ฒ ํฌํธ๋ฅผ ์ฌ์ฉํด์ ์ธ์ฆ์ ์๋ํ๊ธฐ ๋๋ฌธ์ ์คํ์ค์ธ nginx๋ฅผ ์ข
๋ฃํด์ผ ํ๋ค.
$ sudo service nginx stop
- 80๋ฒ ํฌํธ๊ฐ ์ฌ์ฉ๋์ง ์๋ ๊ฒ์ ํ์ธํ๋ค.
$ netstat -ant
- letsencrypt๊ฐ 80๋ฒ ํฌํธ๋ฅผ ์ฌ์ฉํด์ ์ธ์ฆ์ ์๋ํ๊ธฐ ๋๋ฌธ์ ์คํ์ค์ธ nginx๋ฅผ ์ข
๋ฃํด์ผ ํ๋ค.
- ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด์ letsencrypt๋ฅผ ์ค์นํ๋ค.
$ sudo apt install letsencrypt
- ์ธ์ฆ์ ์์ฑ
sudo letsencrypt certonly --standalone -d go-quality.dev
์ธ์ฆ์ ์์ฑ ๊ฒฐ๊ณผ ํ์ธ
- ์์ ๊ฒฐ๊ณผ๋ฅผ ์์ฝํ์๋ฉด,
- ์ธ์ฆ์์ ํค ํ์ผ์ด ๊ฐ๊ฐ ์๋ ๊ฒฝ๋ก์ ์ ์ฅ๋์๋ค.
/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
๋ช ๋ น์ผ๋ก ๋ฐ๊ธ๋ฐ์ ์ธ์ฆ์ ๋ชฉ๋ก ํ์ธ
- ์์ ๊ฒฐ๊ณผ๋ฅผ ์์ฝํ์๋ฉด,
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; }
Nginx ์์ ๋ฐ ํฌํธํ์ธ
$ sudo service nginx start
$ netstat -ant
- 443 ํฌํธ listening์ ํ์ธํ๋ค.
- 443 ํฌํธ listening์ ํ์ธํ๋ค.
SSL ์ ์ฉ ํ์ธ
- SSL์ ์ ์ฉํ๋๋ฐ ๋ธ๋ผ์ฐ์ ์ ์ฃผ์์ฐฝ ์ผ์ชฝ ์๋ฌผ์ ๊ฐ ์ฌ์ ํ ์ ๊ฒจ์์ง ์๋ค๋ฉด, whynopadlock์์ ๋ฌธ์ ์ ์ ์ง๋จ๋ฐ์๋ณธ๋ค.
- SSL์ ์ ์ฉํ๋๋ฐ ๋ธ๋ผ์ฐ์ ์ ์ฃผ์์ฐฝ ์ผ์ชฝ ์๋ฌผ์ ๊ฐ ์ฌ์ ํ ์ ๊ฒจ์์ง ์๋ค๋ฉด, whynopadlock์์ ๋ฌธ์ ์ ์ ์ง๋จ๋ฐ์๋ณธ๋ค.
์ฐธ๊ณ : LETSENCRYPT ์์ SSL ์ธ์ฆ์๋ฅผ ๋ฌด๋ฃ๋ก ๋ฐ๊ธ ๋ฐ์ ์น ์๋ฒ์ ์ ์ฉํ๊ธฐ
6.3. SSL ์ธ์ฆ์ ์๋๊ฐฑ์ ์ค์
30์ผ ๋ง๋ค ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด์ ์ ์ํด์
$ certbot renew
๋ฅผ ์ ๋ ฅํ๋ ๊ฒ์ ๊ท์ฐฎ๋ค.
Crontab์ผ๋ก ์ธ์ฆ์ ๊ฐฑ์ ์ ์๋ํ ํ๋ค.
- ์ธ์ฆ์ ๋ง๋ฃ์ผ ํ์ธ
$ certbot certificates
๋ช ๋ น์ผ๋ก Expiry Date ํ์ธ
- ์์คํ
์๊ฐ ํ์ธ
$ date
- ๊ธฐ์กด์ ์ค์ ๋ Crontab ํ์ธ
$ sudo cron -l
Crontab ํธ์ง
$ sudo cron -e
์๋ ๋ด์ฉ ์ถ๊ฐ ํ ์ ์ฅ
# ๋งค์ 1์ผ ์๋ฒฝ4์์ $ certbot renew ๋ช ๋ น์ ๋ด๋ฆฌ๊ณ , ๊ฐฑ์ ์ ์ฑ๊ณตํ๋ฉด nginx reload 0 04 1 * * /usr/bin/certbot renew --renew-hook="sudo systemctl reload nginx"
Crontab ์คํ ๋ก๊ทธ ํ์ธ
- ๊ฐฑ์ ์ด ์ ๋๋ก ์ด๋ฃจ์ด์ง๋์ง ๋ก๊ทธ๋ก ํ์ธํ๋ค.
$ view /var/log/syslog
์ฐธ๊ณ - Let’s Encrypt SSL ์ธ์ฆ์ ์๋ ๊ฐฑ์ ์ค์ ๋ฐฉ๋ฒ - SSL ์ธ์ฆ์ ์๋ ๊ฐฑ์ ์ค๋ฅ
7. ๊ธฐํ
7.0. ์จ๋ ์ธก์ ์ฉ ์ ์คํฌ๋ฆฝํธ ์์ฑ
- ์ ์คํฌ๋ฆฝํธ ํ์ผ ์์ฑ
$ sudo vim thermometer.sh
์ ์คํฌ๋ฆฝํธ ์์ฑ
#!/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
๋ผ์ฆ๋ฒ ๋ฆฌํ์ด ์จ๋ ํ์ธ
$ ./thermometer.sh
์ฐธ๊ณ : ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด ์์คํ ์จ๋(๋ฐ์ด) ํ์ธ
1ํธ ๋.
์ฒ์์ ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด์ ํ ์ดํ๋ก์ ํธ๋ฅผ ์ฌ๋ ค์ผ๊ฒ ๋ค๋ ์๊ฐ์ด ๋ค์์ ๋๋,
์์งํ ์ด๋ ๊ฒ ์ฝ์ง์ ๋ง์ด ํ๊ฒ ๋ ์ค(๋ง์ ๊ฑธ ๋ฐฐ์ฐ๊ฒ ๋ ์ค)์ ๋ชฐ๋๋ค.
๋ผ์ฆ๋ฒ ๋ฆฌํ์ด ์ฌ์, OS ์ค์นํ๊ณ , wi-fi ์ฐ๊ฒฐํ๊ณ , nginx ์ค์นํ๊ณ , jarํ์ผ ์ฌ๋ฆฌ๊ณ , ๋๋ฉ์ธ ์ฐ๋ํ๋ฉด ๋์ด๋ผ๊ณ ์๊ฐํ๋ ๊ฒ์ด๋ค.
์ค์ ๋ก ๊ทธ๊ฒ ์ ๋ถ๋ค.
ํ์ง๋ง ๊ทธ ์ฌ์ด์ฌ์ด์, ๋ด๊ฐ ๊ฐ์ง ๊ฐ๋ฐ์ง์์ ๋น ํ๋ค์ด ๋ฏธ์ณ ๋ ๋ฐ์ด์ค ๋๋ถ์
๋ด๊ฐ ์ด๊ฑธ ์ฌํ ๋ชจ๋ฅด๊ณ ๊ฐ๋ฐ์๋ผ๊ณ ๋ ๋ค๊ณ ๋ค๋
๊ตฌ๋..
๋ผ๋ ์..ํ..
๋ชจ๋ฉํธ๊ฐ ์ด ์ ์์ด ํ๋ชฐ์์ณค๋ค.
์ปด๊ณต ์ ๊ณต์๋ค์ ๋ํ์๋ ํ๊ต ๊ณผ์ ๋ก, ํน์ ์ฌ์ฌํ์ด๋ก ๋ง์ง๋ค๋ ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด๋ฅผ..
๋๋ ๋จ๊ฑฐ์ด ์ ๊ณต์ ๊ตด๋ฆฌ๋ฏ, ์ ๋ ๋๋ง๋ค ์ ๋จ๊ฑฐ!
ํ๋ฉฐ, ๊ตฌ๊ธ๋ง ์ผ๋งค๊ฒฝ์ ๋น ์ก๋๋๋ค.
๋ค์ธ ์๊ฐ ๋๋น ์ค์ ๋ก ํ ๊ฒ์ ๋ณ๋ก ์์ง๋ง, ์ด๋ ๊ฒ๋ผ๋ ๋น ํ์ ์ฑ์ธ ์ ์์ด์ ์ข์๋ค.
2ํธ์ Spring boot ์ดํ๋ฆฌ์ผ์ด์ ์ ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด์ ๋ฐฐํฌํ๋ ๊ณผ์ ์ ์ ๋ฆฌํ ์์ ์ด๊ณ ,
3ํธ์ ํ ์ดํ๋ก์ ํธ์ ์ธํ๋ผ ํ๊ฒฝ์ ๋์ปค ๊ธฐ๋ฐ์ผ๋ก ๋ฐ๊พธ๋ ๊ณผ์ ์ ์ ๋ฆฌํ ์์ ์ด๋ค.
Reference
- https://brunch.co.kr/@topasvga/701
- https://geeksvoyage.com/
- https://blog.jeuke.com/49?category=818287
- https://seolin.tistory.com/99
- https://blog.rajephon.dev/2019/07/12/setup-raspberrypi-home-server/
- https://www.youtube.com/watch?v=8grooZWbH9Y
- https://withcoding.com/45
- https://pimylifeup.com/how-to-shutdown-a-raspberry-pi/
- https://dullwolf.tistory.com/17
- http://progtrend.blogspot.com/2017/08/raspberry-pi-wifi.html
- https://webnautes.tistory.com/903
- http://egloos.zum.com/lunar456th/v/6397975