์ด ๊ธ์ ใํผ์ ๊ณต๋ถํ๋ ๋คํธ์ํฌใ ์ฑ ๋ด์ฉ์ ์ ๋ฆฌํ ๋ด์ฉ์ ๋๋ค.
์ ์๊ถ ๋ฌธ์ ์ ์ญ์ ํ๊ฒ ์ต๋๋ค.
1. ์์ ์ ์ธ ์๋น์ค๋ฅผ ์ํ ๊ธฐ์
* ์์ ์ฑ: ํน์ ๊ธฐ๋ฅ์ ์ธ์ ๋ ๊ท ์ผํ ์ฑ๋ฅ์ผ๋ก ์ํํ ์ ์๋ ํน์ฑ
* ๊ฐ์ฉ์ฑ: ์์ ์ฑ์ ์ ๋๋ฅผ ์์น๋ก ๋ํ๋ธ ์ ๋. ์ปดํจํฐ ์์คํ ์ด ํน์ ๊ธฐ๋ฅ์ ์ค์ ๋ก ์ํํ ์ ์๋ ์๊ฐ์ ๋น์จ. ์ ์ฒด ์ฌ์ฉ ์๊ฐ ์ค์ ์ ์์ ์ธ ์ฌ์ฉ ์๊ฐ.
๊ฐ์ฉ์ฑ = ์ ํ์ / (์ ํ์ + ๋ค์ดํ์) |
* ๊ณ ๊ฐ์ฉ์ฑ(High Availability): 99.999% ํ์ด๋ธ ๋์ธ์ค. ๋ค์ดํ์์ด 1๋ ์ 5.26๋ถ, 1๊ฐ์ 26.3์ด.

=> ๋ค์ดํ์์ด ๋ฐ์ํ๋ ์์ธ์ ๋ชจ๋ ์ฐพ์ ์์ฒ์ ์ผ๋ก ์ฐจ๋จํ๊ธฐ๋ ์ด๋ ต๊ธฐ์, ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋๋ผ๋ ๊ณ์ ๊ธฐ๋ฅํ ์ ์๋ ๋ฅ๋ ฅ์ธ '๊ฒฐํจ๊ฐ๋ด'๊ฐ ์ค์ํ๋ค.
1) ์ด์คํ: ์์คํ ์ ์ฒด๊ฐ ์ค๋จ๋ ์ ์๋ ๋์(๋จ์ผ ์ฅ์ ์ Single Point Of Failure)์ ๋ฐฉ์งํ๊ธฐ ์ํด ์๋น(๋ฐฑ์ )์ ๋๋ ๊ธฐ์ .
- active-stanby: ํ ์์คํ ์ ๊ฐ๋ํ๊ณ , ๋ค๋ฅธ ์์คํ ์ ๋ฐฑ์ ์ฉ๋๋ก ๋๊ธฐ ์ํ๋ก ๋๋ ์ด์คํ ๊ตฌ์ฑ ๋ฐฉ์.
ํ๋์ ์ฅ๋น๋ฅผ ์ฌ์ฉํ ๋์ ๋นํด ์ฑ๋ฅ์์ ํฐ ๋ณํ๋ฅผ ๊ธฐ๋ํ๊ธฐ๋ ์ด๋ ต๋ค.
- active-active: ๋ ์์คํ ๋ชจ๋ ๊ฐ๋ ์ํ๋ก ๋๋ ๊ตฌ์ฑ ๋ฐฉ์.
์๊ฐ์ ์ผ๋ก ๋ค๋ฅธ ์์คํ ์ ๋ถํ๊ฐ ๊ธ์ฆํ ์ ์๊ณ ์ด๋ก ์ธํด ์ถ๊ฐ์ ์ธ ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์๋ค.
=> 3๊ฐ ์ด์ '๋ค์คํ' ๋ฐฉ์์ผ๋ก ์ฅ๋น๋ฅผ ๊ตฌ์ฑํ๋ฉด ๋์ฑ ์์ ์ ์ธ ์ด์์ด ๊ฐ๋ฅํ๋ค.
ex) ํฐ๋ฐ(teaming) - Window ์์ ์ฃผ๋ก ์ฌ์ฉ, ๋ณธ๋ฉ(bonding) - Linux ์์ ์ฃผ๋ก ์ฌ์ฉ.
: ์ฌ๋ฌ ๊ฐ์ ๋คํธ์ํฌ ์ธํฐํ์ด์ค(NIC) ๋ฅผ ์ด์คํ/๋ค์คํํ์ฌ ๋ง์น ๋ ๋ฐ์ด๋๊ณ ์์ ์ ์ธ ์ฑ๋ฅ์ ๋ณด์ ํ ํ๋์ ์ธํฐํ์ด์ค์ฒ๋ผ ๋ณด์ด๊ฒ ํ๋ ๊ธฐ์ .
2) ๋ก๋ ๋ฐธ๋ฐ์ฑ
: ๋ก๋ ๋ฐธ๋ฐ์์ ์ํด ํธ๋ํฝ์ ๊ณ ๋ฅด๊ฒ ๋ถ๋ฐฐํ๋ ๊ธฐ์ . (์๋ฒ ์ํ๋ฅผ ๊ฒ์ฌํ๋ ํฌ์ค ์ฒดํฌ ๊ธฐ๋ฅ๋ ํ๋ค.)
ex) ๋ก๋ ๋ฐธ๋ฐ์ ๊ธฐ๋ฅ์ด ์๋ ์ฅ์น๋ค: L4 ์ค์์น, L7 ์ค์์น
ex) ๋ก๋ ๋ฐธ๋ฐ์ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ ์ํํธ์จ์ด๋ค: HaProxy, Envoy, Nginx.

์ด์คํ/๋ค์คํ๋ ์๋ฒ์ ํด๋ผ์ด์ธํธ ์ฌ์ด์ ์์นํ์ฌ ๊ฐ ์๋ฒ์ ๊ท ๋ฑํ๊ฒ ๋ถ๋ฐฐํ๋ ์ญํ ์ ํ๋ค.
* ๋ก๋ ๋ฐธ๋ฐ์ฑ ์๊ณ ๋ฆฌ์ฆ
- ๋ผ์ด๋ ๋ก๋น ์๊ณ ๋ฆฌ์ฆ: ๋จ์ํ ์๋ฒ๋ฅผ ๋์๊ฐ๋ฉฐ ๋ถํ๋ฅผ ์ ๋ฌํ๋ ์๊ณ ๋ฆฌ์ฆ
- ์ต์ ์ฐ๊ฒฐ ์๊ณ ๋ฆฌ์ฆ: ์ฐ๊ฒฐ์ด ์ ์ ์๋ฒ๋ถํฐ ์ฐ์ ์ ์ผ๋ก ๋ถํ๋ฅผ ์ ๋ฌํ๋ ์๊ณ ๋ฆฌ์ฆ
- ๋ฌด์์ ์๊ณ ๋ฆฌ์ฆ
- ์๋ต ์๊ฐ์ด ๊ฐ์ฅ ์งง์ ์๋ฒ๋ฅผ ์ ํํ๋ ์๊ณ ๋ฆฌ์ฆ
๋ฑ

=> ๋ผ์ด๋ ๋ก๋น ์๊ณ ๋ฆฌ์ฆ, ์ต์ ์ฐ๊ฒฐ ์๊ณ ๋ฆฌ์ฆ์๋ '๊ฐ์ค์น'๋ฅผ ๋ถ์ฌํ ์ ์๋ค. ์๋ฒ ๊ฐ ์ฑ๋ฅ์ด ๋ค๋ฅธ ๊ฒฝ์ฐ ๊ฐ์ค์น๋ฅผ ์ฌ์ฉํด์ ๋ก๋ ๋ฐธ๋ฐ์ฑ์ ์กฐ์ ํ๋ค.
cf. ํฌ์๋ ํ๋ก์์ ๋ฆฌ๋ฒ์ค ํ๋ก์
ํด๋ผ์ด์ธํธ์ ์๋ฒ ์ฌ์ด์๋ ์๋ง์ ์๋ฒ๋ค์ด ์กด์ฌํ๋ค.
=> ํด๋ผ์ด์ธํธ์ ์ค๋ฆฌ์ง ์๋ฒ(Origin Server) ์ฌ์ด์ ์๋ง์ ์ค๊ฐ ์๋ฒ๊ฐ ์กด์ฌํ๋ค.
HTTP ์ค๊ฐ ์๋ฒ ์ ํ์ผ๋ก ํ๋ก์(Proxy)์ ๊ฒ์ดํธ์จ์ด(Gateway)๊ฐ ์๋ค.
- ํ๋ก์(Proxy): ํด๋ผ์ด์ธํธ๊ฐ ์ ํํ ๋ฉ์์ง ์ ๋ฌ ๋๋ฆฌ์.
- ๊ฒ์ดํธ์จ์ด(Gateway): ์์๋ฐ์ด๋ ์ฐ๊ฒฐ์ ๋ํด ์ค๋ฆฌ์ง ์๋ฒ ์ญํ , ๋ค๋ฅธ ์ธ๋ฐ์ด๋ ์๋ฒ๋ก ์ ๋ฌํ๋ ์ค๊ฐ์ ์ญํ ์ ํ๋ค.


=> ํ๋ก์๋ ํด๋ผ์ด์ธํธ์ ๊ฐ๊น๊ฒ ์๋ ์ค๊ฐ ์๋ฒ์ด๊ณ , ๊ฒ์ดํธ์จ์ด๋ ์ค๋ฆฌ์ง ์๋ฒ์ ๊ฐ๊น๊ฒ ์๋ ์ค๊ฐ ์๋ฒ ์ด๋ค.
2. ์์ ์ ์ธ ํต์ ์ ์ํ ๊ธฐ์
1) ๋์นญ ํค ์ํธํ ๋ฐฉ์: ์ํธํ์ ๋ณตํธํ์ ๋์ผํ ํค๋ฅผ ์ฌ์ฉํ๋ ๋ฐฉ์
=> ํค๊ฐ ์ ์ถ๋๋ฉด ํฐ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ฏ๋ก ํค๋ฅผ ์์ ํ๊ฒ ์ ๋ฌํ๋ ๊ฒ์ด ์ค์ํ๋ค. ํ์ง๋ง, ํค๋ฅผ ์์ ํ๊ฒ ์ ๋ฌํ ๊ฒ์ด์์ผ๋ฉด ๋ฉ์ธ์ง๋ฅผ ์์ ํ๊ฒ ์ ๋ฌํ๋ ๊ฒ ๋์ผ๋ฏ๋ก ์ข์ ๋ฐฉ์์ ์๋๋ค.
=> ํค๋ฅผ ์์ ํ๊ฒ ์ ์กํ๊ธฐ๋ ์ด๋ ต์ง๋ง ๋ถํ๊ฐ ์ ์ด์ ์ํธํ/๋ณตํธํ๋ฅผ ๋น ๋ฅด๊ฒ ์ํํ ์ ์๋ค.
2) ๊ณต๊ฐ ํค ์ํธํ ๋ฐฉ์: ์ํธํ์ ๋ณตํธํ์ ์๋ก ๋ค๋ฅธ ํค๋ฅผ ์ฌ์ฉํ๋ ๋ฐฉ์. ๊ณต๊ฐํค๋ก ์ํธํ, ๊ฐ์ธํค๋ก ๋ณตํธํ.
=> ์ํธํ/๋ณตํธํ์ ์๊ฐ๊ณผ ๋ถํ๊ฐ ์๋์ ์ผ๋ก ๋ง์ด ๋ค์ง๋ง ํค๋ฅผ ์์ ํ๊ฒ ๊ณต์ ํ ์ ์๋ค.

ํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ์๊ฒ ๋ฌธ์์ด์ ์ ์กํ๊ณ ์ ํ ๋,
์๋ฒ์๊ฒ ๊ณต๊ฐํค๋ฅผ ์์ฒญํ๋ค. -> ์๋ฒ๊ฐ ํด๋ผ์ด์ธํธ์๊ฒ ๊ณต๊ฐํค๋ฅผ ์ค๋ค. -> ์๋ฒ์ ๊ณต๊ฐ ํค๋ก ๋ฉ์์ง๋ฅผ ์ํธํํด์ ์๋ฒ์ ์ ๋ฌํ๋ค. -> ์๋ฒ๋ ์์ ์ ๊ฐ์ธํค๋ก ๋ฉ์์ง๋ฅผ ๋ณตํธํํ์ฌ ํ์ธํ๋ค.
3) ์ธ์ ํค: ๋์นญํค ์ํธํ ๋ฐฉ์๊ณผ ๊ณต๊ฐํค ์ํธํ ๋ฐฉ์์ ์ฅ๋จ์ ์ผ๋ก ์ธํด ๋ ๋ฐฉ์์ ํจ๊ป ์ฌ์ฉํ๋ ๋ฐฉ์์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง๋ค.
=> ๊ณต์บ ํค๋ก ๋์นญ ํค๋ฅผ ์ํธํํ๊ณ , ๊ฐ์ธ ํค๋ก ์ํธํ๋ ๋์นญ ํค๋ฅผ ๋ณตํธํ ํ๋ ๋ฐฉ์.
4) ์ธ์ฆ์์ ๋์งํธ ์๋ช
* ๊ณต๊ฐํค ์ธ์ฆ์(Public key certificate)
: ๊ณต๊ฐ ํค์ ๊ณต๊ฐ ํค์ ์ ํจ์ฑ์ ์ ์ฆํ๊ธฐ ์ํ ์ ์ ๋ฌธ์.
์ธ์ฆ์๋ ์ธ์ฆ๊ธฐ๊ด(CA; Certification Authority)์ด๋ผ๋ ์ 3์ ๊ธฐ๊ด์์ ๋ฐ๊ธํ๋ค.
์ธ์ฆ์์๋ ์ด ๊ณต๊ฐ ํค๊ฐ ์ง์ง๋ผ๋ ๋ณด์ฆ์ ํ๋ '์๋ช ๊ฐ(signature)'์ด ์๋ค.
์๋ช ๊ฐ์ ์ธ์ฆ์ ๋ด์ฉ์ ๋ํ ํด์ ๊ฐ์ CA์ ๊ฐ์ธ ํค๋ก ์ํธํํ๋ ๋ฐฉ์์ผ๋ก ๋ง๋ค์ด์ง๋ค.

* ๊ณต๊ฐํค ์ธ์ฆ์ ๊ฒ์ฆ
์น ๋ธ๋ผ์ฐ์ ๋ฅผ ํตํด ์๋ฒ๋ก๋ถํฐ ์๋ช ๊ฐ์ด ๋ถ์ ์ธ์ฆ์๋ฅผ ์ ๋ฌ๋ฐ์์ ๋,
์ธ์ฆ์ ๊ฒ์ฆ์ ์ํด ์๋ช ๊ฐ๊ณผ ์ธ์ฆ์๋ฅผ ๋ถ๋ฆฌํด์ ๋น๊ต ๊ฒ์ฆํ๋ค.
์๋ช ๊ฐ์ CA์ ๊ณต๊ฐํค๋ก ๋ณตํธํ ํ๋ค. -> ์ธ์ฆ์ ๋ด์ฉ์ ๋ํ ํด์ ๊ฐ์ ์ป๋๋ค.
์ธ์ฆ์ ๋ฐ์ดํฐ์ ๋ํ ํด์ ๊ฐ์ ์ง์ ๊ตฌํ๋ค.
=> ์๋ช ๊ฐ์ CA์ ๊ณต๊ฐํค๋ก ๋ณตํธํํ์ฌ ์ป์ ํด์๊ฐ๊ณผ ์ธ์ฆ์ ๋ฐ์ดํฐ์ ํด์๊ฐ์ ์ง์ ๊ตฌํ ๊ฐ์ด ์ผ์นํ๋ ์ง ๋น๊ตํ์ฌ ๊ฒ์ฆํ๋ค.
5) HHTPS: SSL๊ณผ TLS
์ํธํ ๋ฐฉ์๊ณผ ๊ณต๊ฐํค ์ธ์ฆ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๋์ํ๋ ํ๋กํ ์ฝ. SSL(Secure Sockets Layer)๊ณผ TLS(Transfport Layer Security)
SSL๊ณผ TLS ๋ฅผ ์ฌ์ฉํ๋ ๋ํ์ ์ธ ํ๋กํ ์ฝ = HTTPS(HTTP over TLS)
* HTTPS ๊ฐ ์ด๋ป๊ฒ ๋์ํ๋์ง
โ TCP ์ฐ๋ฆฌ ์จ์ด ํธ๋์ ฐ์ดํฌ: TCP ์ฐ๊ฒฐ์ ์ํด ๋ ํธ์คํธ๊ฐ SYN, SYN+ACK, ACK ํ๋๊ทธ๊ฐ ์ค์ ๋ TCP ์ธ๊ทธ๋จผํธ๋ฅผ ์ฃผ๊ณ ๋ฐ๋๋ค.
โก TLS ํธ๋์ ฐ์ดํฌ: ์ํธํ ํต์ ์ ์ํ ํค๋ฅผ ๊ตํํ๋ค. ์ฌ์ฉ๊ฐ๋ฅํ ์ํธํ ๋ฐฉ์๊ณผ ํด์ํจ์๋ฅผ ๋ด์ ์ ๋ณด์ธ ์ํธ ์ค์ํธ๋ฅผ ์ ๋ฌํ๋ค.
์ํธํ ์๊ณ ๋ฆฌ์ฆ ํด์ํจ์
TLS_AES_128_GCM_SHA256
TLS_AES_256_GCM_SHA384
TLS_CHACHA20_POLY1305_SHA256
...
โข ์ํธํ๋ ๋ฉ์์ง ์ก์์
'๐ Computer Science > CS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ํผ์ ๊ณต๋ถํ๋ ๋คํธ์ํฌ] 6์ฅ. ์ค์ต์ผ๋ก ๋ณต์ตํ๋ ๋คํธ์ํฌ(Wireshark) (0) | 2025.03.23 |
---|---|
[ํผ์ ๊ณต๋ถํ๋ ๋คํธ์ํฌ] 5์ฅ. ์์ฉ ๊ณ์ธต (0) | 2025.03.16 |
[ํผ์ ๊ณต๋ถํ๋ ๋คํธ์ํฌ] 4์ฅ. ์ ์ก ๊ณ์ธต (0) | 2025.03.09 |
[ํผ์ ๊ณต๋ถํ๋ ๋คํธ์ํฌ] 3์ฅ. ๋คํธ์ํฌ ๊ณ์ธต (0) | 2025.03.02 |
[์ปดํจํฐ ๋ฐ๋ฐ๋ฅ์ ๋น๋ฐ] 6์ฅ. ์ ์ถ๋ ฅ (0) | 2025.02.23 |