DHCP(Dynamic Host Configuration Protocol)
PC ์ฌ์ฉ์์๊ฒ IP ์ฃผ์, ๋ค์์๋ฒ ์ฃผ์, ์๋ธ๋ท๋ง์คํฌ, ๊ฒ์ดํธ์จ์ด ์ฃผ์ ๋ฑ TCP/IP ํ๋กํ ์ฝ์ ๊ธฐ๋ณธ ์ค์ ๊ฐ๋ค์ ์๋์ผ๋ก ํ ๋นํด์ฃผ๋ ๊ฒ์ ์๋ฏธํ๊ณ , ํด๋น ํด๋ผ์ด์ธํธ์๊ฒ ์ผ์ ๊ธฐ๊ฐ ์๋๋ฅผ ํ๋ ๋์ ์ฃผ์ ํ ๋น ํ๋กํ ์ฝ.
DHCP์ ๊ตฌ์ฑ
DHCP ์๋ฒ: ํด๋ผ์ด์ธํธ์๊ฒ IP ํ ๋น ์์ฒญ์ด ๋ค์ด์ค๋ฉด IP๋ฅผ ๋ถ์ฌํด์ฃผ๊ณ ํ ๋น ๊ฐ๋ฅํ IP๋ค์ ๊ด๋ฆฌํ๋ค.
DHCP ํด๋ผ์ด์ธํธ: DHCP ์๋ฒ๋ก๋ถํฐ IP๋ฅผ ๋ถ์ฌ๋ฐ์ผ๋ฉด TCP/IP ์ค์ ์ ์ด๊ธฐํ๋๊ณ ๋ค๋ฅธ ํธ์คํธ์ TCP/IP๋ฅผ ์ฌ์ฉํด ํต์ ํ ์ ์๋ค.
DHCP์ ์๋ฆฌ
DCP ์๋ฒ๊ฐ IP ์ฃผ์๋ฅผ ์๊ตฌ์ ์ผ๋ก ๋จ๋ง์ ํ ๋นํ๋ ๊ฒ์ด ์๋๊ณ , ์๋๊ธฐ๊ฐ(IP Lease Time)์ ๋ช ์ํ์ฌ ๊ทธ ๊ธฐ๊ฐ๋์ ๋จ๋ง์ด IP ์ฃผ์๋ฅผ ์ฌ์ฉํ๋๋ก ํ๋ค. ๋จ๋ง์ ์๋๊ธฐ๊ฐ ์ดํ์๋ ๊ณ์ ํด๋น IP ์ฃผ์๋ฅผ ์ฌ์ฉํ๊ณ ์ ํ๋ค๋ฉด IP ์ฃผ์ ์๋๊ธฐ๊ฐ ์ฐ์ฅ(IP Address Renewal)์ DHCP ์๋ฒ์ ์์ฒญํด์ผ ํ๊ณ , ๋จ๋ง์ ์๋๋ฐ์ IP ์ฃผ์๊ฐ ํ์์น ์๊ฒ ๋๋ฉด IP ์ฃผ์ ๋ฐ๋ฉ(IP Address Release)๋ฅผ ์ํํ๊ฒ ๋๋ค.
์ฅ์
PC์ ์๊ฐ ๋ง๊ฑฐ๋ PC ์์ฒด ๋ณ๋์ฌํญ์ด ๋ง์ ๊ฒฝ์ฐ IP ์ค์ ์ด ์๋์ผ๋ก ๋๊ธฐ ๋๋ฌธ์ ํจ์จ์ ์ผ๋ก ์ฌ์ฉ ๊ฐ๋ฅํ๊ณ , IP๋ฅผ ์๋์ผ๋ก ํ ๋นํด์ฃผ๊ธฐ ๋๋ฌธ์ IP ์ถฉ๋์ ๋ง์ ์ ์๋ค.
๋จ์
DHCP ์๋ฒ์ ์์กด๋๊ธฐ ๋๋ฌธ์ ์๋ฒ๊ฐ ๋ค์ด๋๋ฉด IP ํ ๋น์ด ์ ๋๋ก ์ด๋ฃจ์ด์ง์ง ์๋๋ค.
IP ์ฃผ์ ํ ๋น(์๋) ์ ์ฐจ (๋จ๋ง <-> DHCP ์๋ฒ)
DHCP Discover
๋ธ๋ก๋์บ์คํธ ๋ฉ์์ง (Destination MAC = FF:FF:FF:FF:FF:FF)
๋จ๋ง์ด DHCP ์๋ฒ๋ฅผ ์ฐพ๊ธฐ ์ํ ๋ฉ์์ง.
LAN์์ (๋์ผ subnet ์์) ๋ธ๋ก๋์บ์คํ ์ ํ์ฌ "๊ฑฐ๊ธฐ ํน์ DHCP ์๋ฒ ์์ผ๋ฉด ๋ด๊ฒ ์๋ตํด์ฃผ์ธ์" ๋ผ๊ณ ์ธ์น๋ค.
DHCP Offer
๋ธ๋ก๋์บ์คํธ ๋ฉ์์ง (Destination MAC = FF:FF:FF:FF:FF:FF) ์ด๊ฑฐ๋ Unicast ์ผ ์ ์๋ค.
(๋จ๋ง์ด ๋ณด๋ธ DHCP Discover ๋ฉ์์ง ๋ด์ Broadcast Flag ๊ฐ์ด 1์ด๋ฉด Broadcast๋ก, 0์ด๋ฉด Unicast๋ก ๋ณด๋ธ๋ค.)
DHCP ์๋ฒ๊ฐ "์ ์ฌ๊ธฐ ์์ด์~"๋ผ๊ณ ์๋ตํ๋ ๋ฉ์์ง.
๋จ์ํ DHCP ์๋ฒ์ ์กด์ฌ๋ง์ ์๋ฆฌ์ง ์๊ณ , ๋จ๋ง์ ํ ๋นํ IP ์ฃผ์ ์ ๋ณด๋ฅผ ํฌํจํ ๋ค์ํ ๋คํธ์ํฌ ์ ๋ณด (IP์ฃผ์, ์๋ธ๋ท๋ง์คํฌ, ๊ฒ์ดํธ์จ์ด ์ฃผ์ ๋ฑ) ๋ฅผ ์ค์ด์ ๋จ๋ง์ ์ ๋ฌํ๋ค.
DHCP Request
๋ธ๋ก๋์บ์คํธ ๋ฉ์์ง (Destination MAC = FF:FF:FF:FF:FF:FF)
๋จ๋ง์ด DHCP ์๋ฒ(๋ค)์ ์กด์ฌ์ DHCP ์๋ฒ๊ฐ ๋จ๋ง์ ์ ๊ณตํ ๋คํธ์ํฌ ์ ๋ณด๋ฅผ ์์๋ค. ์ด์ ๋จ๋ง์ DHCP Request ๋ฉ์์ง๋ฅผ ํตํด ํ๋์ DHCP ์๋ฒ๋ฅผ ์ ํํ๊ณ , ํด๋น ์๋ฒ์๊ฒ :๋ด๋ง์ด ์ฌ์ฉํ ๋คํธ์ํฌ ์ ๋ณด"๋ฅผ ์์ฒญํ๋ค.
DHCP Ack
๋ธ๋ก๋์บ์คํธ ๋ฉ์์ง (Destination MAC = FF:FF:FF:FF:FF:FF) ์ด๊ฑฐ๋ Unicast ์ผ ์ ์๋ค.
(๋จ๋ง์ด ๋ณด๋ธ DHCP Request ๋ฉ์์ง ๋ด์ Broadcast Flag ๊ฐ์ด 1์ด๋ฉด Broadcast๋ก, 0์ด๋ฉด Unicast๋ก ๋ณด๋ธ๋ค.)
DHCP ์ ์ฐจ์ ๋ง์ง๋ง ๋ฉ์์ง๋ก, DHCP ์๋ฒ๊ฐ ๋จ๋ง์๊ฒ "๋คํธ์ํฌ ์ ๋ณด"๋ฅผ ์ ๋ฌํด์ฃผ๋ ๋ฉ์์ง. ์์ DHCP Offer์ "๋คํธ์ํฌ ์ ๋ณด"์ ๋์ผํ ํ๋ผ๋ฏธํฐ๊ฐ ํฌํจ๋๋ค.
DHCP ์์ด ์๋์ผ๋ก IP ์ฃผ์๋ฅผ ํ ๋นํ๋ฉด ์ด๋จ๊น?
๋นํจ์จ์ ์ด๊ณ ์๊ฐ์ด ์ง๋์น๊ฒ ๋ง์ด ์์๋๋ฉฐ ์ค๋ฅ๊ฐ ๋ฐ์ํ ๊ฐ๋ฅ์ฑ์ด ๋๋ค.
์๋ธ๋คํ (Subnetting)
IP ์ฃผ์๋ฅผ ํจ์จ์ ์ผ๋ก ์ฌ์ฉํ๊ธฐ ์ํด ๋คํธ์ํฌ๋ฅผ ๋ถํ ํ๋ ๊ฐ๋ .
IPv4 ์ฃผ์(32bit)์ ๊ณ ๊ฐ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ๋ฑ์ฅ.
IP ์ฃผ์์ ํด๋์ค
IP ์ฃผ์๋ ํฌ๊ฒ 5๊ฐ(A, B, C, D, E)์ ํด๋์ค๋ก ๋๋์ด์ง๋ค.
์ฅ์
๋คํธ์ํฌ ์์ญ์ ํด๋์ค ๋จ์๋ก ๋๋๊ฒ ๋๋๋ฐ, ์ด๋ ํด๋์ค ๋จ์๋ก ๋ถ์ฌํ๊ฒ ๋๋ฉด ์ค์ ์ฌ์ฉํ๋ ip๋ ๋ช ๊ฐ ์๋์ด ๋ญ๋น๋๋ ip๊ฐ ๋ง์์ ธ ๊ต์ฅํ ๋นํจ์จ์ ์ด๋ค.
์๋ฅผ ๋ค์ด, A ํด๋์ค์ ip๋ฅผ ๋ถ์ฌ๋ฐ์ -> A ํด๋์ค์๋ 16,777,214๊ฐ๋ ๋๋ ํธ์คํธ์ IP๋ฅผ ํ ๋นํ ์ ์๋ค.
์๊ทธ๋งํ ํ์ฌ๋ ์ผ๋ฐ์ ์ธ ์ฌ์ฉ์์๊ฒ IP๋ฅผ ๋ถ์ฌํ๋ฉด ๋จ๋ ip๋ค์ ๋ชจ๋ ๋ญ๋น๋๋ค.
๋ํ A ํด๋์ค์ ๋ธ๋ก๋์บ์คํ ์ด ์๋ค๋ฉด ์ต๋ 16,777,214๊ฐ์ ํธ์คํธ์ ๋ชจ๋ ๋ฐ์ดํฐ๊ฐ ์ ์ก๋๋ค.
์ด๋ ๊ต์ฅํ ๋ถํ๊ฐ ์์ด ์ฑ๋ฅ์ ํ ๋ฐ ์ฅ์ ๋ก ์ด๋ฃจ์ด์ง ์ ์๋ค.
์๋ธ๋ท์ ๋ง๋ค ๋ ์ฌ์ฉ๋๋ ๊ฒ์ด ์๋ธ๋ท ๋ง์คํฌ(subnet mask)
์๋ธ๋ท ๋ง์คํฌ๋ IP ์ฃผ์์์ ๋คํธ์ํฌ ์ฃผ์(1)์ ํธ์คํธ ์ฃผ์(0)๋ฅผ ๊ตฌ๋ถํ๊ธฐ ์ํด ์ฌ์ฉ.
NAT (Network Address Translation)
IP ํจํท์ ์๋ ์ถ๋ฐ์ง ๋ฐ ๋ชฉ์ ์ง์ IP ์ฃผ์๋ฅผ ๋ฐ๊ฟ ์ฌ๊ธฐ๋กํ๋ฉด์ ๋คํธ์ํฌ ํธ๋ํฝ์ ์ฃผ๊ณ ๋ฐ์ ์ ์๊ฒ ํ๋ ๊ธฐ์
๋์ ์๋ฆฌ
์ง์์ ์ฌ์ฉํ๋ ์ธํฐ๋ท ๊ณต์ ๊ธฐ๋ฅผ ํตํด ์ธ๋ถ์ ์๋ ์น ์๋ฒ๋ก ์ ๊ทผํ๊ณ ์ ํ ๋, ์์ฒญ ํจํท์ ๋ฐ๋์ ํด๋น ๊ณต์ ๊ธฐ(๊ฒ์ดํธ์จ์ด)๋ฅผ ๊ฑฐ์น๊ฒ ๋์ด ์๋ค.
์ด ๋, ์ถ๋ฐ์ง์ ์ฌ์ค๋ง IP ์ฃผ์๊ฐ ๊ทธ๋๋ก ์ธ๋ถ ์ธํฐ๋ท์ ๋๊ฐ๊ฒ ๋ ๊ฒฝ์ฐ ์์ ์ธก ์น์๋ฒ๋ ์ ์ ์๋ ์ฌ์ค๋ง์ IP ์ด๋ฏ๋ก ํจํท์ ์ด๋๋ก ๋ณด๋ด์ผ ํ ์ง ์ ์ ์๋ค.
๋ฐ๋ผ์ NAT๋ ์๋ ๊ณผ์ ์ ๊ฑฐ์น๋ค.
- PC(ํธ์คํธ)์์ ์ถ๋ฐ
# ์ถ๋ฐ์ง IP ์ฃผ์ : 10.0.0.1
# ๋ชฉ์ ์ง IP ์ฃผ์ : 200.100.10.1
ํจํท ํค๋์ ์ถ๋ฐ์ง์ ๋ชฉ์ ์ง ์ฃผ์๋ฅผ ๊ธฐ๋กํ๋ค. ์ด ๋ ์ถ๋ฐ์ง๋ ์์ ์ ์ฌ์ค๋ง IP ์ฃผ์๋ฅผ ๊ธฐ๋ก.
- ๊ธฐ๋ณธ ๊ฒ์ดํธ์จ์ด์์ ๋ค์ ์ถ๋ฐ
# ์ถ๋ฐ์ง IP ์ฃผ์ : 10.0.0.1 -> 150.150.0.1 (์ฌ๊ธฐ๋กํ์ฌ ๋ณ๊ฒฝ)
# ๋ชฉ์ ์ง IP ์ฃผ์ : 200.100.10.1
๊ธฐ๋ณธ ๊ฒ์ดํธ์จ์ด(๊ณต์ ๊ธฐ ๋ฑ)์์๋ ์ธ๋ถ๋ก ๋๊ฐ๋ ํจํท์ ์ธ์ํ๊ฒ ๋๋ฉด, ์ถ๋ฐ์ง์ IP๋ฅผ ๊ฒ์ดํธ์จ์ด ์์ ์ ๊ณต์ธ IP ์ฃผ์๋ก ๋ณ๊ฒฝํ๋ค. ์ด ๋, ๋ณ๋์ NAT ํ ์ด๋ธ์ ๋ณด๊ดํ๋ค.
์ธ๋ถ๋ก ๋๊ฐ๋ ํจํท์ ์ด๋ป๊ฒ ์ธ์ํ๋๊ฑธ๊น?
- ์น ์๋ฒ์์ ์ถ๋ฐ
# ์ถ๋ฐ์ง IP ์ฃผ์ : 200.100.10.1
# ๋ชฉ์ ์ง IP ์ฃผ์ : 150.150.0.1
์น ์๋ฒ์์ ์์ ํ ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ ํ, ์๋ตํ์ฌ ๋ณด๋ด๋ ํจํท์ ์์ ๊ฐ์ด ๊ธฐ๋กํ์ฌ ๋ณด๋ธ๋ค. ์ด ๋, ๋ชฉ์ ์ง IP ์ฃผ์๋ ํธ์คํธ์ ๊ธฐ๋ณธ ๊ฒ์ดํธ์จ์ด ๊ณต์ธ IP ์ฃผ์๊ฐ ๋๋ค.
- ๊ธฐ๋ณธ ๊ฒ์ดํธ์จ์ด์์ ๋ค์ ์ถ๋ฐ
# ์ถ๋ฐ์ง IP ์ฃผ์ : 200.100.10.1
# ๋ชฉ์ ์ง IP ์ฃผ์ : 150.150.0.1 -> 10.0.0.1 (์ฌ๊ธฐ๋กํ์ฌ ๋ณ๊ฒฝ)
ํธ์คํธ์ผใ ๊ธฐ๋ณธ ๊ฒ์ดํธ์จ์ด์์ ์น ์๋ฒ๊ฐ ๋ณด๋ธ ํจํท์ ๋ฐ์ผ๋ฉด, ๊ธฐ๋กํด๋์๋ NAT ํ ์ด๋ธ์ ์ฐธ์กฐํ์ฌ ์ต์ข ๋ชฉ์ ์ง์ธ ํธ์คํธ์ ์ฌ์ค IP ์ฃผ์๋ก ๋ณ๊ฒฝํ์ฌ ํด๋น ํธ์คํธ๋ก ํจํท์ ์ ๋ฌํ๋ค.
์ ๋ฆฌ
- ์ธ๋ถ๋ก ๋๊ฐ๋ ๊ฒฝ์ฐ : ์ฌ์ค IP -> ๊ณต์ธ IP
- ๋ด๋ถ๋ก ๋ค์ด์ค๋ ๊ฒฝ์ฐ : ๊ณต์ธ IP -> ์ฌ์ค IP
๊ณต์ธ IP ์ ์ฌ์ค IP
๊ณต์ธ IP : ์ ์ธ๊ณ์ ์ ์ผํ๊ฒ ํ ๋น๋ฐ์ ํ๋์ IP, ์ธ๋ถ์ ๊ณต๊ฐ
์ฌ์ค IP (=๋ก์ปฌ IP, ๊ฐ์ IP) : ์ธ๋ถ์์ ์ ๊ทผํ ์ ์๋ IP, ์ผ๋ฐ ๊ฐ์ or ํ์ฌ ๋ด๋ถ์์ ์ฌ์ฉํ๋ ๋ชฉ์
NAT๋ฅผ ํตํด ์ป๋ ์ด์ ์, ์ธ๋ถ์ ํต์ ํ๋ ๊ด์ ์์ ๋ด๋ถ ์ฌ์ค IP๋ฅผ ๋ ธ์ถํ์ง ์์๋ ๋๊ธฐ ๋๋ฌธ์ ๋ณด์์ ์ ๋ฆฌํ๋ค.
๋์นญํค ์ํธํ ๋ฐฉ์
์๋ณตํธํ์ ์ฌ์ฉํ๋ ํค๊ฐ ๋์ผํ ์ํธํ ๋ฐฉ์
๋ํ์ ์ธ ์๊ณ ๋ฆฌ์ฆ : DES, 3DES, AES
์ฅ์
๊ณต๊ฐํค(=๋น๋์นญํค) ์ํธํ ๋ฐฉ์์ ๋นํด ์ฐ์ฐ ์๋๊ฐ ๋น ๋ฅด๋ค.
๋จ์
ํค ๊ตํ ๋ฌธ์ : ํค๋ฅผ ๊ตํํ๋ ์ค ํ์ทจ๋ ์๋ ์๋ค.
์ฌ์ฉ์๊ฐ ์ฆ๊ฐํ ์๋ก ๊ฐ๊ฐ์ ํค๊ฐ ํ์ํ๊ธฐ์, ๊ด๋ฆฌํด์ผํ ํค๊ฐ ๋ฐฉ๋ํ๊ฒ ๋ง์์ง๋ค.
์ด๋ฌํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ํค์ ์ฌ์ ๊ณต์ , ํค ๋ฐฐํฌ ์ผํฐ ์ฌ์ฉ, Diffie-Hellman ํค ๊ตํ, ๊ณต๊ฐํค ์ํธํ ๋ฐฉ์ ๋ฑ์ด ์๋ค.
๋น๋์นญํค(=๊ณต๊ฐํค) ์ํธํ ๋ฐฉ์
์๋ณตํธํ์ ์ฌ์ฉ๋๋ ํค๊ฐ ์๋ก ๋ค๋ฅธ ์ํธํ ๋ฐฉ์.
ํจ์จ์ ๋จ์ด์ง์ง๋ง, ๋์นญํค ์ํธํ ๋ฐฉ์์ ํค ๊ตํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ๋ฑ์ฅ.
๋ํ์ ์ธ ์๊ณ ๋ฆฌ์ฆ : Diffie-Hellman, RSA, DSA, ECC
A๊ฐ B์๊ฒ ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ธ๋ค๊ณ ํ์.
A๋ B์ ๊ณต๊ฐํค๋ก ๋ฐ์ดํฐ๋ฅผ ์ํธํํด์ ๋ณด๋ด๊ณ , B๋๋ณธ์ธ์ ๊ฐ์ธํค๋ก ๋ณตํธํํด์ ๋ณด๊ฒ ๋๋ค.
-> ์ํธํ๋ ๋ฐ์ดํฐ๋ B์ ๊ณต๊ฐํค์ ๋์๋๋ ๊ฐ์ธํค๋ฅผ ๊ฐ์ง๊ณ ์๋ B๋ง์ด ๋ณผ ์ ์๊ฒ ๋๋ค.
๊ณต๊ฐํค๋ ํค๊ฐ ๊ณต๊ฐ๋์ด ์๊ธฐ ๋๋ฌธ์ ํค ๊ตํ์ด ํ์ ์๋ค.
์ค๊ฐ ๊ณต๊ฒฉ์๊ฐ B์ ๊ณต๊ฐํค๋ฅผ ์ป๋๋ค๊ณ ํด๋ B์ ๊ฐ์ธํค๋ก๋ง ๋ณตํธํ๊ฐ ๊ฐ๋ฅํ๋ค.
-> ํค ์ ๋ฌ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ์ฌ ๋ ์์ ํ์ง๋ง, ์ํธํ์ ๋ณตํธํ๋ฅผ ์ํด ๋ณต์กํ ์ํ ์ฐ์ฐ์ ์ํํ๊ธฐ ๋๋ฌธ์ ๋์นญํค ์๊ณ ๋ฆฌ์ฆ์ ๋นํด ์๋๊ฐ ๋๋ฆฌ๋ค๋ ๋จ์ ์ด ์๋ค.
HTTPS
๋์นญํค๋ง์ ์ฌ์ฉํ๋ฉด ํค๊ฐ ํ์ทจ๋ ์ ์๋ค๋ ์ํ์ด ์กด์ฌํ๋ค.
๊ทธ๋ ๋ค๊ณ ๊ณต๊ฐํค๋ง์ ์ฌ์ฉํ๋ฉด HTTP ๋ฉ์์ง์ ๊ธธ์ด๊ฐ ํฐ ๊ฒฝ์ฐ์ ํฐ ๋ถํ๊ฐ ๋ฐ์ํ ์ ์๋ค. (๊ณต๊ฐํค ์๊ณ ๋ฆฌ์ฆ์ ์ํธํ, ๋ณตํธํ ๊ณผ์ ์ด ๋งค์ฐ ๋ณต์กํ๊ธฐ ๋)
๊ทธ๋์ HTTPS ์์๋ ๊ณต๊ฐํค(=๋น๋์นญํค) ๋ฐฉ์์ผ๋ก ๋์นญํค๋ฅผ ์ ๋ฌํ๊ณ , ์๋ก ๊ณต์ ๋ ๋์นญํค๋ฅผ ๊ฐ์ง๊ณ ํต์ ํ๊ฒ ๋๋ค.
1. A๋ B์ ๊ณต๊ฐํค๋ก ์ํธํ ํต์ ์ ์ฌ์ฉํ ๋์นญํค๋ฅผ ์ํธํํด์ B์๊ฒ ๋ณด๋ธ๋ค.
2. B๋ ์ํธ๋ฌธ์ ๋ฐ๊ณ ์์ ์ ๋น๋ฐํค๋ก ๋ณตํธํํ๋ค.
3. B๋ A๋ก๋ถํฐ ์ป์ ๋์นญํค๋ก A์๊ฒ ๋ณด๋ผ ํ๋ฌธ์ ์ํธํํ์ฌ A์๊ฒ ๋ณด๋ธ๋ค.
4. A๋ ์์ ์ ๋์นญํค๋ก ์ํธ๋ฌธ์ ๋ณตํํํ๋ค.
5. ์์ผ๋ก ํด๋น ๋์นญํค๋ก ๊ณ์ ํต์ ํ๋ค.
์ฆ ์ฌ์ฉ์ ์ธก์์๋ ๊ณต๊ฐํค(=๋น๋์นญํค) ์๊ณ ๋ฆฌ์ฆ์ ํตํด ์์ ํ๊ฒ ํค ๊ตํ์ ํ ํ, ๊ตํํ ํค๋ก ๋์นญํค ์๊ณ ๋ฆฌ์ฆ์ ํตํด ํต์ ํ๊ฒ ๋๋ค.
๋์นญํค ์๊ณ ๋ฆฌ์ฆ์ ๊ธฐ๋ฐ์ฑ์ ์ ๊ณตํ๊ณ , ๋ฌด๊ฒฐ์ฑ/์ธ์ฆ/๋ถ์ธ๋ฐฉ์ง๋ฅผ ์ ๊ณตํ์ง ์๋๋ค.
๊ณต๊ฐํค ์๊ณ ๋ฆฌ์ฆ์ ๊ธฐ๋ฐ์ฑ/์ธ์ฆ/๋ถ์ธ๋ฐฉ์ง ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ค.
์ฌ๊ธฐ์ ๋ฌด๊ฒฐ์ฑ์ ๋์นญํค, ๊ณต๊ฐํค ์๊ณ ๋ฆฌ์ฆ ๋ชจ๋ ์ฑ๋ฆฝํ์ง ์๋๋ค.
๋ฐ๋ผ์ ์ ์ ์๋ช (์ธ์ฆ์)์ ์ถ๊ฐํจ์ผ๋ก์จ ๋ฌด๊ฒฐ์ฑ์ ๋ณด์ฅํ๋ค.
SSL (Secure Socket Layer)
SSL์ด๋, ์น ์๋ฒ์ ํด๋ผ์ด์ธํธ์ ํต์ ์ํธํ ํ๋กํ ์ฝ์ด๋ค.
SSL์ด ์ ์ฉ๋์ง ์์ ๊ฒฝ์ฐ, ํ๋ฌธ์ด ๊ทธ๋๋ก ์ ์ก๋์ด ์ 3์๊ฐ ํจํท์ ํ์ทจํ์ ๋ ๊ทธ ๋ด์ฉ์ ์ฝ๊ฒ ํ์ธํ ์ ์๋ค.
SSL์ ์ ์ฉํ๋ฉด, ์์ฒญ์ ์ํธํํด์ ๋ณด๋ด๋ฏ๋ก ํต์ ํจํท์ด ํ์ทจ๋์ด๋ ๋ณตํธํ ํค๊ฐ ์์ผ๋ฉด ๊ทธ ๋ด์ฉ์ ์ ์ ์๋ค. ๋ฐ์ดํฐ ์ก/์์ ๊ณผ์ ์์ ์/๋ณตํธํ๊ฐ ๋ฐ์ํ๋ฏ๋ก ์๋๊ฐ ๋๋ฆฌ๋ค.
SSL Handshake
ํด๋ผ์ด์ธํธ์ ์๋ฒ ๊ฐ์ ์์ฒญ/์๋ต์ ๋ฐ๋ณตํ๋ฉฐ ํต์ ์ ํ์ํ ์ฌ์ ์์ ์ ํ๋ค.
ClientHello
ํด๋ผ์ด์ธํธ๊ฐ ํน์ ์ฃผ์์ ์ ๊ทผํ๋ฉด, ํด๋นํ๋ ์๋ฒ์ ์์ฒญ์ ๋ณด๋ธ๋ค. ์ด๋ ํด๋ผ์ด์ธํธ์ ์ฃผ์ ์ ๋ณด๋ฅผ ์๋ฒ์ ์ ์กํ์ฌ, ํด๋น ํด๋ผ์ด์ธํธ๋ฅผ ์๋ณํ๊ณ ์ด๋ค ์ํธํ๋ฅผ ์ฌ์ฉํ ์ ์๋์ง ๋ฑ์ ์ ๋ณด๋ฅผ ์๋ฒ๊ฐ ์ธ์งํ๋๋ก ํ๋ค.
ServerHello
์๋ฒ๊ฐ ClientHello ์์ฒญ์ ๋ฐ์ผ๋ฉด, ์๋ ์ ๋ณด๋ฅผ ๋ด์ ํ๋ต์ ๋ณด๋ธ๋ค.
ํด๋ผ์ด์ธํธ๊ฐ ์ฌ์ฉ ๊ฐ๋ฅํ๋ค๊ณ ํต๋ณดํ ์ํธํ ๊ธฐ๋ฒ ์ค ์๋ฒ์์ ํ์ฉํ ์ํธํ ๊ธฐ๋ฒ์ ์ ๋ฌํ์ฌ ๋์ผํ ์ํธํ ๊ธฐ๋ฒ์ผ๋ก ์ก์์ ํ ์ ์๋๋ก ํ๋ค. ์ด๋ ์ธ์ฆ์ ์ ๋ณด์ ํจ๊ป ์๋ฒ ๊ณต๊ฐํค๋ ์ ๋ฌํ๋ค. ํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ์ ๊ณต๊ฐํค๋ก ๋ฐ์ดํฐ๋ฅผ ์ํธํํ๋ฉด, ์๋ฒ๋ ์ด๋ฅผ ๋ฐ์ ๊ฐ์ธํค๋ก ๋ณตํธํํ์ฌ ์์ฒญ์ ๋ถ์ํ ์ ์๋ค.
์ธ์ฆ์ ๊ฒํ
์๋ฒ๊ฐ ์ ๋ฌํ ์ธ์ฆ์๊ฐ ์ค์ ํด๋น ์๋ฒ์ ์ธ์ฆ์์ธ์ง, ์ ๋ขฐํ ์ ์๋ CA์์ ๋ฐ๊ธ๋ ๊ฒ์ธ์ง, ์ค์ ํด๋น CA์์ ๋ฐ๊ธ๋ฐ์๋์ง ๋ฑ ์ธ์ฆ์๋ฅผ ๊ฒํ ํ๋ค.
Premaster Secret ์ก์์
ํด๋ผ์ด์ธํธ์์ ClientHello, ServerHello์์ ์ก์์ ํ ๋์(Random) ๋ฐ์ดํฐ๋ฅผ ์กฐํฉํ์ฌ Premaster Secret(=๋์นญํค)์ ์์ฑํ๋ค.
์ด๋ฅผ ServerHello์์ ์ ๋ฌ๋ฐ์๋ ์๋ฒ์ ๊ณต๊ฐํค๋ก ์ํธํํ๋ค. ์ด ๋ฐ์ดํฐ๋ ์๋ฒ๊ฐ ๊ฐ์ง ๊ฐ์ธํค๋ก๋ง ๋ณตํธํ๊ฐ ๊ฐ๋ฅํ๋ค.
์๋ฒ๋ ์์ ๋ ๋ฐ์ดํฐ๋ฅผ ๋ณตํธํํ์ฌ ํด๋ผ์ด์ธํธ์ ๋์ผํ Premaster Secret์ ์ ์ฅํ ์ ์๋ค. ์ด์ ํด๋ผ์ด์ธํธ์ ์๋ฒ ๋ชจ๋ Premaster Secret์ ๊ฐ์ง๊ณ ์๊ฒ ๋๋ค.
ํต์ ํค(Session Key) ์์ฑ
์๋ฒ์ ํด๋ผ์ด์ธํธ ๋ชจ๋ Premaster Secret์ ์ผ๋ จ์ ๊ณผ์ ์ ๊ฑฐ์ณ์ Master Secret์ผ๋ก ๋ง๋ ๋ค.
์ด๋ ๊ฒ ๋ง๋ Master Sercret์ผ๋ก Session Key๋ฅผ ์์ฑํ๋ค.
๋ฐ์ดํฐ ์ก์์
์๋ฒ์ ํด๋ผ์ด์ธํธ๊ฐ ์ค์ ๋ก ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ๋ ๋จ๊ณ์ด๋ค.
Session Key๋ฅผ ์ด์ฉํด ๋์นญํค ์ํธํ ๋ฐฉ์์ผ๋ก ์/๋ณตํธํํ์ฌ ํต์ ํ๋ค.
์ธ์ ์ข ๋ฃ
๋ฐ์ดํฐ ์ ์ก์ด ๋๋๋ฉด SSL ํต์ ์ด ๋๋ฌ์์ ์๋ก์๊ฒ ์๋ฆฌ๊ณ ์ฌ์ฉํ๋ Session Key๋ ํ๊ธฐํ๋ค.
SSL์ 1996๋ ์ดํ ์ ๋ฐ์ดํธ ๋์ง ์์์ผ๋ฉฐ, ๋ณด์์ทจ์ฝ์ ์ผ๋ก ์ธํด ํ์ฌ๋ ํด์ถ๋ ์ํ๋ค.
ํ์ฌ๋ ๋ชจ๋ TLS๋ก ๊ต์ฒด๋์์ง๋ง, SSL ์์ฒด๊ฐ ๊ณ ์ ๋ช ์ฌ๊ฐ ๋์ด ๋์ ์๋ฏธ์ ํต์ ๋ณด์ ํ๋กํ ์ฝ์ ๋ช ์นญํ๋ ์๋ฏธ๋ก ์ฐ์ธ๋ค.
TLS (Transport Layer Security)
๋ก๋๋ฐธ๋ฐ์ฑ
๋ก๋๋ฐธ๋ฐ์ฑ์ด๋ ๋ง๊ทธ๋๋ก ์๋ฒ๊ฐ ์ฒ๋ฆฌํด์ผํ ์ ๋ฌด ํน์ ์์ฒญ(Load)์ ์ฌ๋ฌ ๋์ ์๋ฒ๋ก ๋๋์ด(Balancing) ์ฒ๋ฆฌํ๋ ๊ฒ์ ์๋ฏธํ๋ค. ํ ๋์ ์๋ฒ๋ก ๋ถํ๊ฐ ์ง์ค๋์ง ์๋๋ก ํธ๋ํฝ์ ๊ด๋ฆฌํ์ฌ, ๊ฐ๊ฐ์ ์๋ฒ๊ฐ ์ต์ ์ ํผํฌ๋จผ์ค๋ฅผ ๋ณด์ผ ์ ์๋๋ก ํ๋ ๊ฒ์ด ๋ชฉ์ ์ด๋ค.
์ฟ ํค์ ์ธ์
HTTP์ ํน์ง
- connectionless : ํด๋ผ์ด์ธํธ๊ฐ ์์ฒญ์ ํ ํ ์๋ต์ ๋ฐ์ผ๋ฉด ๊ทธ ์ฐ๊ฒฐ์ ๋์ด๋ฒ๋ฆฌ๋ ํน์ง
- stateless : ํต์ ์ด ๋๋๋ฉด ์ํ ๋ณด๋ฅผ ์ ์งํ์ง ์๋ ํน์ง
๋ฐ๋ผ์ ์๋ฒ๋ ํด๋ผ์ด์ธํธ๊ฐ ๋๊ตฌ์ธ์ง ๋งค๋ฒ ํ์ธํด์ผ ํ๋ค. ์ด ํน์ฑ์ ๋ณด์ํ๊ธฐ ์ํด ์ฟ ํค์ ์ธ์ ์ ์ฌ์ฉํ๋ ๊ฒ์ด๋ค.
์ฟ ํค๋?
ํด๋ผ์ด์ธํธ(๋ธ๋ผ์ฐ์ ) ๋ก์ปฌ์ ์ ์ฅ๋๋, ํค์ ๊ฐ์ด ๋ค์ด์๋ ์์ ๋ฐ์ดํฐ ํ์ผ
์ฟ ํค์ ๋์ ๋ฐฉ์
1. ํด๋ผ์ด์ธํธ๊ฐ ํ์ด์ง๋ฅผ ์์ฒญ
2. ์๋ฒ์์ ์ฟ ํค๋ฅผ ์์ฑ
3. ์๋ฒ์์ ์๋ตํ ๋, HTTP ํค๋์ ์ฟ ํค๋ฅผ ํฌํจ์์ผ ์๋ต
4. ๋ธ๋ผ์ฐ์ ๊ฐ ์ข ๋ฃ๋์ด๋ ์ฟ ํค ๋ง๋ฃ ๊ธฐ๊ฐ์ด ์๋ค๋ฉด ํด๋ผ์ด์ธํธ์์ ๋ณด๊ดํ๊ณ ์์
5. ๊ฐ์ ์์ฒญ์ ํ ๊ฒฝ์ฐ HTTP ํค๋์ ์ฟ ํค๋ฅผ ํจ๊ป ๋ณด๋
6. ์๋ฒ์์ ์ฟ ํค๋ฅผ ์ฝ์ด ์ด์ ์ํ ์ ๋ณด๋ฅผ ๋ณ๊ฒฝํ ํ์๊ฐ ์์ ๋ ์ฟ ํค๋ฅผ ์ ๋ฐ์ดํธํ์ฌ ๋ณ๊ฒฝ๋ ์ฟ ํค๋ฅผ HTTP ํค๋์ ํฌํจ์์ผ ์๋ต
์ธ์ ์ด๋?
์ธ์ ์ ์ฟ ํค๋ฅผ ๊ธฐ๋ฐํ๊ณ ์์ง๋ง, ์ฌ์ฉ์ ์ ๋ณด ํ์ผ์ ๋ธ๋ผ์ฐ์ ์ ์ ์ฅํ๋ ์ฟ ํค์ ๋ฌ๋ฆฌ ์ธ์ ์ ์๋ฒ ์ธก์์ ๊ด๋ฆฌํ๋ค.
์๋ฒ์์๋ ํด๋ผ์ด์ธํธ๋ฅผ ๊ตฌ๋ถํ๊ธฐ ์ํด ์ธ์ ID๋ฅผ ๋ถ์ฌํ๋ฉฐ, ์น ๋ธ๋ผ์ฐ์ ๊ฐ ์๋ฒ์ ์ ์ํด์ ๋ธ๋ผ์ฐ์ ๋ฅผ ์ข ๋ฃํ ๋๊น์ง ์ธ์ฆ ์ํ๋ฅผ ์ ์งํ๋ค.
์ฌ์ฉ์์ ๋ํ ์ ๋ณด๋ฅผ ์๋ฒ์ ๋๊ธฐ ๋๋ฌธ์ ์ฟ ํค๋ณด๋ค ๋ณด์์ ์ข์ง๋ง, ์ฌ์ฉ์๊ฐ ๋ง์์ง์๋ก ์๋ฒ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๋ง์ด ์ฐจ์งํ๋ค.
์ธ์ ์ ๋์ ๋ฐฉ์
1. ํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ์ ์ ์ ์ ์ธ์ ID๋ฅผ ๋ฐ๊ธ ๋ฐ์
2. ํด๋ผ์ด์ธํธ๋ ์ธ์ ID์ ๋ํด ์ฟ ํค๋ฅผ ์ฌ์ฉํด์ ์ ์ฅํ๊ณ ๊ฐ์ง๊ณ ์์
3. ํด๋ผ์ด์ธํธ๋ ์๋ฒ์ ์์ฒญํ ๋ ์ด ์ฟ ํค์ ์ธ์ ID๋ฅผ ๊ฐ์ด ์๋ฒ์ ์ ๋ฌ
4. ์๋ฒ๋ ์ธ์ ID๋ฅผ ์ ๋ฌ๋ฐ์์ ๋ณ๋ค๋ฅธ ์์ ์์ด ์ธ์ ID๋ก ์ธ์ ์ ์๋ ํด๋ผ์ด์ธํธ ์ ๋ณด๋ฅผ ๊ฐ์ ธ์์ ์ฌ์ฉ
5. ํด๋ผ์ด์ธํธ ์ ๋ณด๋ฅผ ๊ฐ์ง๊ณ ์๋ฒ ์์ฒญ์ ์ฒ๋ฆฌํ์ฌ ํด๋ผ์ด์ธํธ์๊ฒ ์๋ต
์ฟ ํค์ ์ธ์ ์ ๋น์ทํ ์ญํ ์ ํ๋ฉฐ ๋์ ์๋ฆฌ๋ ๋น์ทํ๋ค. ๊ทธ ์ด์ ๋ ์ธ์ ๋ ๊ฒฐ๊ตญ ์ฟ ํค๋ฅผ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ด๋ค. ๊ฐ์ฅ ํฐ ์ฐจ์ด์ ์ ์ฌ์ฉ์์ ์ ๋ณด๊ฐ ์ ์ฅ๋๋ ์์น์ด๋ค. ๋๋ฌธ์ ์ฟ ํค๋ ์๋ฒ์ ์์์ ์ ํ ์ฌ์ฉํ์ง ์์ผ๋ฉฐ, ์ธ์ ์ ์๋ฒ์ ์์์ ์ฌ์ฉํ๋ค.
์ธ์ ์ ์ฌ์ฉํ๋ฉด ์ข์๋ฐ ์ ์ฟ ํค๋ฅผ ์ฌ์ฉํ ๊น?
์ธ์ ์ ์๋ฒ์ ์์์ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ ๋ฌด๋ถ๋ณํ๊ฒ ๋ง๋ค๋ค๋ณด๋ฉด ์๋ฒ์ ๋ฉ๋ชจ๋ฆฌ๊ฐ ๊ฐ๋นํ ์ ์์ด์ง ์ ์๊ธฐ ๋๋ฌธ์ ์ฟ ํค๊ฐ ์ ๋ฆฌํ ๊ฒฝ์ฐ๊ฐ ์๋ค.
์ฟ ํค์ ์ธ์ ์ ์ฐจ์ด์ ?
๋ณดํต ์ฟ ํค์ ์ธ์ ์ ์ฐจ์ด๋ฅผ ๋ฌผ์ด๋ณผ ๋ ์ ์ฅ์์น๋ ๋ณด์์ ๋ํด์๋ ์ ๋งํ๋๋ฐ, ์ฌ์ค ์ค์ํ ๊ฒ์ "๋ผ์ดํ์ฌ์ดํด"์ด๋ค.
์ฟ ํค/์ธ์ ๊ณผ ์บ์๋ ์ด๋ป๊ฒ ๋ค๋ฅผ๊น?
์บ์๋ ์ด๋ฏธ์ง๋ css, js ํ์ผ ๋ฑ์ ๋ธ๋ผ์ฐ์ ๋ ์๋ฒ ์ ๋จ์ ์ ์ฅํด๋๊ณ ์ฌ์ฉํ๋ ๊ฒ.
ํ๋ฒ ํ ๋ฒ ์บ์์ ์ ์ฅ๋๋ฉด ๋ธ๋ผ์ฐ์ ๋ฅผ ์ฐธ๊ณ ํ๊ธฐ ๋๋ฌธ์ ์๋ฒ์์ ๋ณ๊ฒฝ์ด ๋์ด๋ ์ฌ์ฉ์๋ ๋ณ๊ฒฝ๋์ง ์๊ฒ ๋ณด์ผ ์ ์๋ค.
์ด๋ฐ ๋ถ๋ถ์ ์บ์๋ฅผ ์ง์์ฃผ๊ฑฐ๋ ์๋ฒ์์ ํด๋ผ์ด์ธํธ๋ก ์๋ต์ ๋ณด๋ผ ๋ ํค๋์ ์บ์ ๋ง๋ฃ ์๊ฐ์ ๋ช ์ํ๋ ๋ฐฉ๋ฒ ๋ฑ์ ์ด์ฉํ ์ ์๋ค.
ํ๋ก์ ์๋ฒ
ํ๋ก์ = ๋๋ฆฌ์
ํ๋ก์ ์๋ฒ๋ ํด๋ผ์ด์ธํธ์ ์ค๋ฆฌ์ง ์๋ฒ(์ ์๋ฒ, ๋ณธ๋ ์๋น์ค๋ฅผ ์ ๊ณตํ๋ ์๋ฒ)๋ฅผ ์ค๊ฐํ๋ ์ญํ ์ ํ๋ค.
์ฅ์
- ๋ณด์์ ์ผ๋ก, ํ๋ก์ ์๋ฒ์์ ๊ธฐ๋ณธ์ ์ธ ํํฐ๋ง๊ณผ ์์ธ์ค ์ ์ด ๋ฑ์ ์ ๊ณตํ๊ธฐ ๋๋ฌธ์, ์ ์๋ฒ๋ก์ ์ง์ ๊ณต๊ฒฉ์ ๋ง์ ์ ์๋ค.
- ํด๋ผ์ด์ธํธ๋ ํ๋ก์ ์๋ฒ์ IP๋ก ์ฐํํ์ฌ ์ต๋ช ์ฑ์ ๋ณด์ฅํ ์ ์๋ค.
- ํ๋ก์ ์๋ฒ๋ ์์ฃผ ์์ฒญ๋๋ ๋ฆฌ์์ค๋ฅผ ์บ์ฑํ๊ธฐ ๋๋ฌธ์, ์ ์๋ฒ์ ๋ถํ๋ ์ค์ฌ์ฃผ๊ณ ์๋ต ์๋๋ ๊ฐ์ ํด์ค๋ค.
ํ๋ก์ ์บ์ ์๋ฒ
ํ๋ก์ ์๋ฒ์ ์บ์ฑ ๊ธฐ๋ฅ์ ๋ฉ์ธ์ผ๋ก ํ๋ ์๋ฒ.
ํด๋ผ์ด์ธํธ๊ฐ ๋ฆฌ์์ค๋ฅผ ์๋ฒ์ ์์ฒญํ ๋, ํ๋ก์ ์๋ฒ๋ ๋จผ์ ์บ์์ ๋ฆฌ์์ค๊ฐ ์๋์ง ํ์ธํ๋ค. ๋ฆฌ์์ค๊ฐ ์์ผ๋ฉด, ๋ฉ๋ฆฌ ์๋ ์ ์๋ฒ๋ฅผ ๊ฑฐ์น ํ์์์ด ํ๋ก์ ์๋ฒ์ ์บ์ ๋ฐ์ดํฐ๋ฅผ ์ ๋ฌํ๋ค.
์ด๋ฅผ ํตํด ์๋ต ์๋๋ ํฌ๊ฒ ํฅ์์ํฌ ์ ์๊ณ ์ ์๋ฒ์ ๋ถํ๋ ๋ฎ์ถ ์ ์๋ค.
CDN (Contents Delivery Network)
์น ์ปจํ ์ธ ์ ๋ฌ์ ๋ชฉ์ ์ผ๋ก ์ ์ธ๊ณ์ ๋ถ์ฐ๋ ๋ฐฐํฌ ์๋ฒ ๋คํธ์ํฌ
๊ฐ๊ฐ์ CDN๋ค์ ์ ์๋ฒ์ ์บ์ ๋๊ธฐํ๋ก ์ต์ ์ํ๋ฅผ ์ ์งํ๋ฉฐ, ํด๋ผ์ด์ธํธ์ ์์ฒญ ์ ๊ฐ์ฅ ๊ฐ๊น์ด CDN์ผ๋ก๋ถํฐ ์ปจํ ์ธ ๋ฅผ ์ ๋ฌ๋ฐ๋๋ค.
'๐ STUDY' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
240306 CS ์คํฐ๋ - ์ด์์ฒด์ ์ง๋ฌธ ๋ชจ์2 (0) | 2024.03.05 |
---|---|
240228 CS ์คํฐ๋ - ์ด์์ฒด์ (0) | 2024.02.26 |
240219 CS ์คํฐ๋ - ์ด์์ฒด์ (0) | 2024.02.19 |
240213 CS ์คํฐ๋ - ์ด์์ฒด์ (0) | 2024.02.13 |
240207 CS ์คํฐ๋ - ์น (0) | 2024.02.05 |