TLS ko - FrankoonG/hy2scale GitHub Wiki
๐ English | ไธญๆ | ํ๊ตญ์ด
TLS ์ธ์ฆ์ ๊ด๋ฆฌ
HY2 SCALE์ Hysteria 2, ์น UI, IKEv2 MSCHAPv2๊ฐ ํ์๋ก ํ๋ ์ธ์ฆ์๋ฅผ ๋ค๋ฃจ๋ ์์ PKI UI๋ฅผ ์ ๊ณตํฉ๋๋ค.

์ธ์ฆ์ ์ ์ฅ
์ธ์ฆ์๋ /data/tls/ ์๋์ ์ ์ฅ๋ฉ๋๋ค:
/data/tls/
โโโ default.crt # PEM ์ธ์ฆ์
โโโ default.key # ๊ฐ์ธํค
โโโ default.name # ํ์ ์ด๋ฆ
๊ฐ ์ธ์ฆ์๋ {id}.crt, {id}.key, {id}.name ์ผ์ค ์ธํธ์
๋๋ค.
๊ธฐ๋ณธ ์ธ์ฆ์
์ต์ด ๋ถํ ์ ์์ฒด ์๋ช ์ธ์ฆ์๊ฐ ์๋ ์์ฑ๋ฉ๋๋ค:
- ID โ
default - ์๊ณ ๋ฆฌ์ฆ โ ECDSA P-256
- ์ ํจ ๊ธฐ๊ฐ โ 10๋
- CN/SAN โ ๋ ธ๋ ID + ํ์ ๋๋ฉ์ธ
Hysteria 2 QUIC ์๋ฒ๋ ๊ธฐ๋ณธ์ ์ผ๋ก ์ด ์ธ์ฆ์๋ฅผ ์ฌ์ฉํฉ๋๋ค. ์ธ์ ๋ ๊ต์ฒดํ ์ ์์ต๋๋ค.
์์
TLS ํ๋ HY2 SCALE ๊ณต์ฉ์ ใ๋จผ์ ์ ํ, ๊ทธ๋ค์ ์์ ใ ํจํด์ ๋ฐ๋ฆ ๋๋ค: ์ธ์ฆ์ ํ์ ๋จ์ผ ํด๋ฆญํด ๋จ์ผ ์ ํํ ๋ค, ์นด๋ ์ฐ์๋จ์ ๋ น์ Edit ๋ฒํผ (Bulk Delete์ + New ์ฌ์ด)์ ์ฌ์ฉํ์ธ์. ์นด๋ ๋ณธ๋ฌธ ๋ฐ๊นฅ โ ํ์ด์ง ํค๋ฉ, ์นด๋ ํค๋ โ ์ด๋๋ ํด๋ฆญํ๋ฉด ๋จ์ผ ํ ์ ํ์ด ํด์ ๋ฉ๋๋ค (๋ค์ค ์ ํ์ ์ ์ง). ์์ชฝ ์ฒดํฌ๋ฐ์ค ์ ์ ์์ ์ ๋ ฅ๋ง์ด ์๋๋ผ ํจ๋ฉ์ด ์ ์ฉ๋ ์์ญ ์ ์ฒด๊ฐ ํด๋ฆญ ์์ญ์ ๋๋ค.
์์ฑ
+ New๋ฅผ ํด๋ฆญํด ํญ๋ชฉ์ ์ฑ์๋๋ค:
| ํ๋ | ์ค๋ช |
|---|---|
| ์ด๋ฆ | ํ์ ์ด๋ฆ |
| ๋๋ฉ์ธ | Subject Alternative Name (์ผํ ๊ตฌ๋ถ) |
| ์ผ์ | ์ ํจ ๊ธฐ๊ฐ (๊ธฐ๋ณธ 3650) |
| CA | ์ฒดํฌํ๋ฉด CA ์ธ์ฆ์๋ฅผ ์์ฑ |
์์ฑ๋ ์ธ์ฆ์๋ ๋๋ค 128๋นํธ ์๋ฆฌ์ผ๊ณผ ECDSA P-256์ ์ฌ์ฉํฉ๋๋ค.
PEM ๊ฐ์ ธ์ค๊ธฐ
PEM ํ ์คํธ๋ก ์ธ์ฆ์์ ๊ฐ์ธํค๋ฅผ ๋ถ์ฌ ๋ฃ์ต๋๋ค.
๊ฒฝ๋ก์์ ๊ฐ์ ธ์ค๊ธฐ
๋์คํฌ์ ๊ธฐ์กด ํ์ผ (/etc/letsencrypt/live/example.com/fullchain.pem ๋ฑ)์ UI์ ์ง์ ํฉ๋๋ค. ํ์ผ์ /data/tls/๋ก ๋ณต์ฌ๋๋ฉฐ, ์ดํ ์๋ณธ ๋ณ๊ฒฝ์ ์ถ์ ๋์ง ์์ต๋๋ค.
CA๋ก ์๋ช
๋ชฉ๋ก์ CA ์ธ์ฆ์๊ฐ ์๋ค๋ฉด Sign์ ์ฌ์ฉํฉ๋๋ค: ์๋ช ์๋ฅผ ์ ํํ๊ณ subject CN ๋ฐ SAN์ ์ ๋ ฅํ๊ณ ์ ํจ ๊ธฐ๊ฐ์ ์ค์ ํ๋ฉด, ๋ถ๋ชจ๋ก ์ฐ๊ฒฐ๋๋ CA ๋ฐฐ์ง์ ํจ๊ป ์ ๋ฆฌํ ์ธ์ฆ์๊ฐ ๋ํ๋ฉ๋๋ค.
๋ด๋ณด๋ด๊ธฐ
๊ฐ ์ธ์ฆ์์ PEM ๋ฒํผ์ด ํด๋น ์ธ์ฆ์๋ฅผ ์คํธ๋ฆฌ๋ฐํ์ฌ ๋ฐํํฉ๋๋ค.
์ญ์
๊ฒฝ๊ณ โ Hysteria 2, HTTPS, IKEv2์์ ํ์ฌ ์ฌ์ฉ ์ค์ธ ์ธ์ฆ์๋ฅผ ๋ค๋ฅธ ์ธ์ฆ์๋ก ๋จผ์ ์ ํํ์ง ์๊ณ ์ญ์ ํ์ง ๋ง์ธ์. ์ฌ์ฉ ์ค์ธ ์ธ์ฆ์๋ฅผ ์ญ์ ํ๋ฉด ์ฌ์ค์ ์ ๊น์ง ์๋น์ค๊ฐ ์ค๋จ๋ฉ๋๋ค.
์ธ์ฆ์ ์ฌ์ฉ์ฒ
| ์๋น์ค | ์ญํ |
|---|---|
| Hysteria 2 | ํ์ โ QUIC TLS |
| ์น UI HTTPS | ์ ํ โ /scale์ ๋ํ HTTPS |
| IKEv2 MSCHAPv2 | ํ์ โ ์๋ฒ๊ฐ ํด๋ผ์ด์ธํธ์ ์์ ์ ์ธ์ฆ |
Hysteria 2
๊ธฐ๋ณธ ์์ฒด ์๋ช
์ธ์ฆ์๋ ๋ฉ์ ๋ฆด๋ ์ด์ ์ฌ์ฉ ๊ฐ๋ฅํฉ๋๋ค (ํผ์ด๊ฐ insecure: true๋ฅผ ์ค์ ํ๊ฑฐ๋ ca๋ก ์ธ์ฆ์๋ฅผ ๊ณ ์ ). ๊ณต๊ฐ Hysteria 2 ํด๋ผ์ด์ธํธ์ฉ์ผ๋ก๋ Let's Encrypt๋ ์์ฒด CA์ ์ค์ ์ธ์ฆ์๋ก ๊ต์ฒดํ์ธ์.
HTTPS ์น UI
์ค์ โ Web โ HTTPS์์ ์ธ์ฆ์๋ฅผ ์ ํํ์ธ์. ์ดํ HTTP ์์ฒญ์ HTTPS๋ก ๋ฆฌ๋๋ ํธ๋ฉ๋๋ค.
IKEv2 MSCHAPv2 โ CA ์ํฌํ๋ก
MSCHAPv2๋ ํด๋ผ์ด์ธํธ๊ฐ ์ ๋ขฐํ ์ ์๋ ์๋ฒ ์ธ์ฆ์๊ฐ ํ์ํฉ๋๋ค. ๊ถ์ฅ ํ๋ฆ:
- CA ์ธ์ฆ์๋ฅผ Generateํฉ๋๋ค (CA ์ฒดํฌ๋ฐ์ค ์ ํ).
- Proxies โ IKEv2/IPsec์์ ์๋ฒ ์ธ์ฆ์ ์ ํ๊ธฐ๋ก CA๋ฅผ ์ ํํฉ๋๋ค.
- ์์ ์ HY2 SCALE์ด CN/SAN์ด
local_id์ ์ผ์นํ๋ ์๋ฒ ์ธ์ฆ์๋ฅผ CA๋ก ์๋ ์๋ช ํฉ๋๋ค. ์๋ช ์๊ณ ๋ฆฌ์ฆ์ ์ต๋ ํด๋ผ์ด์ธํธ ํธํ์ฑ (iOS / macOS / Windows / Android)์ ์ํด RSA-2048์ ๋๋ค. - CA ์ธ์ฆ์๋ฅผ ๋ด๋ณด๋ด ๋ชจ๋ ํด๋ผ์ด์ธํธ ๊ธฐ๊ธฐ์ ์ค์นํฉ๋๋ค.
- ์ดํ ํด๋ผ์ด์ธํธ๋ ์๋ฒ๋ฅผ ์ ๋ขฐํ๊ณ HY2 SCALE ์ฌ์ฉ์๋ช + ๋น๋ฐ๋ฒํธ๋ก ์ธ์ฆํฉ๋๋ค.
CA ์ธ์ฆ์ ํ๋์ ๋ณด๊ธฐ
CA ์ธ์ฆ์๋ ๋ชฉ๋ก์ CA ๋ฐฐ์ง๋ฅผ ํ์ํฉ๋๋ค. ๋ฆฌํ ์ธ์ฆ์๋ ์๋ช ์ ์ด๋ฆ์ ํ์ํฉ๋๋ค. PKI๋ฅผ ์ฌ์ฉํด:
- IKEv2 ์๋ฒ ์ธ์ฆ์๋ฅผ ์๋ ์๋ช
- ๋ค๋ฅธ ๋ด๋ถ ์๋น์ค์ฉ ํ์ ์ธ์ฆ์ ์๋ช
- ์ธ๋ถ ์์กด์ฑ ์์ด ์๊ท๋ชจ ๋ฉ์ ์ ์ฒด PKI ๊ตฌ์ถ