[Cloudflare] Tunnel
Tunnel์ ํดํ์์ ์ ๊ณตํ๋ ํฐ๋๋ง ์๋น์ค๋ค.
์ต๊ทผ์ ์ถ๊ฐ๋์๋ค.
์ค๊ฐ์๋ก์ ์๋ํฌ์๋ ์ฐ๊ฒฐ์ ์์ ํ๊ฒ ๊ตฌ์ฑํ๊ฑฐ๋ API๋ฅผ ๊ฐ๋ฐฉํ ์ ์๊ณ , ๋ฌด๋ฃ๋ค.
๋์ ์๋ฆฌ
์ฌ์ฉ ๋ฐฉ์์ tailscale ๊ฐ์ VPN ์๋น์ค์ ์ ์ฌํ ํธ์ด๋ค. cloudflare ์์ด์ ํธ๋ฅผ ์ค์นํ๊ณ , ํฐ๋์ ๋ฑ๋กํ๋ฉด ํฌํธํฌ์๋ฉ์ ํ์ง ์๊ณ ๋ cloudflare๋ฅผ ํตํด์ ์ ์ ๊ฒฝ๋ก๋ฅผ ๋ง๋ค ์ ์๋ ๊ฒ์ด๋ค.
๊ทธ๋ผ ์ ๋ก์ปฌ ๋จธ์ ์ผ๋ก์ ์ ๊ทผ์ ์์ ํ ๊ณต๊ฐ ์ธํฐ๋ท์ ๊ฒ์ํ ์๋ ์๊ณ , tunnel ์ ๊ทผ ๊ถํ์ด ์๋ ํด๋ผ์ด์ธํธ์๋ง ์ ๊ทผ ๊ถํ์ ์ ์ดํ ์ ์๋ค.
์ฃผ์ํ ์ ์, tailscale ๊ฐ์ ์ ํต์ ์ธ VPN ์๋น์ค์๋ ๋์ ๋ฐฉ์์ด ์ข ๋ค๋ฅด๋ค๋ ๊ฒ์ด๋ค.
์ ํต์ ์ธ VPN๋ค์ ๊ฐ๋ฅํ๋ฉด holepunching ๊ฐ์ ๊ณ ์ ์ ์ธ ๊ธฐ์ ์ ์ฌ์ฉํด์ ์ง์ง ํ๋์จ์ด ์์ค์์ ์ง์ ์ฐ๊ฒฐ์ด ๊ฐ๋ฅํ๋๋ก ์ฐ๊ฒฐํด์ฃผ๋๋ฐ, ํฐ๋๋ง ๊ธฐ๋ฅ์ ๊ทธ๋ฐ ๋ฐฉ์์ด ์๋๋ค.
ํด๋ผ์ฐ๋ํ๋ ์ด๊ฐ ๋ชจ๋ ํธ๋ํฝ์ ์ค๊ฐ์ ๋ฐ๊ณ ๋์ ์ ์กํด์ฃผ๋ ํํ๋ก ๋์ํ๋ค.
๊ทธ๋์ ์ฑ๋ฅ์ ์ผ๋ก๋ ๋ณด์์ ์ผ๋ก ์ข ์ฐ์ฐํ ์๋ ์๋ค.
ํ์ง๋ง ์๋น์ค๋ฅผ ์์ ๊ฐ๋ฐฉํ ์ ์๋ค๋๊ฑด ๊ฝค๋ ํฐ ์ฅ์ ์ด๋ค.
์ข ๋ ์์ธํ ๊ทธ๋ฆผ์ ๊ทธ๋ ค๋ณด๋ฉด, ์ด๋ฐ ์์ด ๋๋ค.
ํ๋์ ํฐ๋์๋ ์ฌ๋ฌ๊ฐ์ ๋ ํ๋ฆฌ์นด๋ฅผ ์ฐ๊ฒฐํ ์ ์๊ณ , ์ฌ๋ฌ๊ฐ์ ๊ฒฝ๋ก๋ฅผ ๊ฐ๋ฐฉํ ์ ์๋ค. ๋ ํ๋ฆฌ์นด๋ค์ ๊ธฐ๋ณธ์ ์ผ๋ก ๋๋ฑํ ๊ตฌ์กฐ๋ฅผ ๊ฐ์ ธ์ผ ํ๋ค. ์๋ฅผ ๋ค์ด, 4040 ํฌํธ๋ก ์๋ฒ๋ฅผ ๋์ธ ๊ฑฐ๋ผ๋ฉด ๋ชจ๋ ๋ ํ๋ฆฌ์นด์ 4040 ํฌํธ๋ก ๋์์ค์ผ ํ๋ ๊ฒ์ด๋ค.
๋ง์ฝ ์ธ๋ถ์์ ๊ฒฝ๋ก๋ฅผ ํตํด ์ ์์ ์๋ํ๋ค๋ฉด ํฐ๋์ ์ ๋นํ ๋ ํ๋ฆฌ์นด ์ค ํ๋๋ฅผ ์์์ ์ก๊ณ ์ฐ๊ฒฐํด์ค๋ค.
๋ ์ฌ๊ธฐ์ ์ ์ํ ์ ์, ๋ ํ๋ฆฌ์นด ๋ถ์ฐ์ด ๋ก๋๋ฐธ๋ฐ์ฑ์ฒ๋ผ ๊ณตํํ๊ฒ ๋ถ์ฐ๋๊ณ ๊ทธ๋ฐ๊ฒ ์๋๋ ๊ฒ์ด๋ค. ๋คํธ์ํฌ ์์ผ๋ก ์ ๋ฆฌํ ๋ ํ๋ฆฌ์นด๋ฅผ ์ ๋นํ ์ก์์ ์ฐ๊ฒฐํด์ฃผ๊ณ , ์ฐ๊ฒฐ์ด ์ ์์ ์ผ๋ก ์ง์๋๋ ๋์์ ํด๋น ๋ ํ๋ฆฌ์นด์๋ง ์์ฒญ์ด ๊ฐ ํ๋ฅ ์ด ๋๋ค.
์ ํ์ฌํญ
๋ฌด๋ฃ์ง๋ง, ์ ํ๋ ์๋ค. ํฐ๋ ๊ฐ์์ ํ, ํฐ๋๋ง๋ค์ ๋ณต์ , ๊ฒฝ๋ก ์ ํ์ด ์๋ค.
์์ธ๋ก ๋ช
์์ ์ธ ๋์ญํญ ์ ํ ๊ฐ์๊ฑด ์๋๋ผ. ์๋ค์ ์๋ฒ๋น๊ฐ ๋ค ์ด๋์ ๋๋๊ฑฐ์ง?
๊ทธ๋ฆฌ๊ณ ํฐ๋์ ํตํด ์์ ๊ณต๊ฐ๋ฅผ ํ๋ ค๋ฉด Cloudflare์์ ๋๋ฉ์ธ์ ๊ตฌ์ ํ ๊ฒ์ด ์์ด์ผ ํ๋ค.
cloudflare client (cloudflared) ์ค์น
์ผ๋จ ์๋ฒ๊ฐ ๋๋ ์ฅ๋น์ ์์ด์ ํธ ๊ฒธ ํด๋ผ์ด์ธํธ๋ฅผ ์ค์นํด์ผ ํ๋ค.
๋ค์ ๋งํฌ์์ ์ง์ ๋ฐฐํฌ๋ ํจํค์ง๋ฅผ ๋ค์ด๋ฐ๊ฑฐ๋ ์ค์น ๋ฐฉ๋ฒ์ ํ์ธํ ์ ์๋ค.
https://developers.cloudflare.com/cloudflare-one/networks/connectors/cloudflare-tunnel/downloads/#linux
๋ฆฌ๋
์ค์ ๊ฒฝ์ฐ์๋ ๊ทธ๋ฅ ํจํค์ง ๋ฐ๋๊ฒ ํธํ๊ฑฐ๊ฐ๋ค.
๋ฐ๋น์๊ณผ ํ๋๋ผ ๋ฒ ์ด์ค ํจํค์ง๋ฅผ ์ ๊ณตํ๋ค.

์๋ฌดํผ, ์ค์นํด์ ์ด๋ ๊ฒ ์คํ์ด ๋๋ฉด ์ค์น ์์ฒด๋ ์ ๋ ๊ฒ์ด๋ค.

ํฐ๋ ๋ง๋ค๊ธฐ
ํฐ๋์ ์ฐ๋ ค๋ฉด ๋น์ฐํ ํฐ๋์ ๋ง๋ค์ด์ผ ํ๋ค.
ํ๋์ ๊ฐ๋ฐฉ์ฉ ์๋น์ค๋ง๋ค ํฐ๋์ ํ๋์ฉ ๋ง๋๋ ๊ฒ์ด ์ผ๋ฐ์ ์ธ ์ฌ์ฉ ํจํด์ด ๋๋ค.

๋ง๋๋ ๊ฒ ์์ฒด๋ ๋งค์ฐ ๊ฐ๋จํ๋ค.
๊ทธ๋ฆฌ๊ณ ์๋ด๋ฅผ ๋ฐ๋ผ์ ๋ช ๋ น์ ์ฌ์ฉํ๋ฉด ๋ ํ๋ฆฌ์นด๋ก์ ํ์ฌ ์ฅ๋น๋ฅผ ๋ฑ๋กํ ์ ์๋ค.

๊ณต๊ฐ path ๊ฐ๋ฐฉํ๊ธฐ
์๋ฒ๋ฅผ ํ๋ ๋ก์ปฌ์ ๋์ฐ๊ณ , ๊ทธ๊ฑธ ํฐ๋์ ํตํด ๊ฐ๋ฐฉํด๋ณด๊ฒ ๋ค.
sudo docker run -p 4000:80 nginx

์ ๋นํ ๊ฐ๋จํ ์๋ฒ๋ฅผ 4000 ํฌํธ์ ํ๋ ๋์ฐ๊ณ

๊ฒฝ๋ก์์ ๊ณต๊ฐ ์ ํ๋ฆฌ์ผ์ด์
์ ์ถ๊ฐํ๋ค.

๊ทธ๋ผ ์ฆ์ ํด๋น ๋๋ฉ์ธ์ ํตํด ์ ๊ทผํ ์ ์๊ฒ ๋ ๊ฒ์ด๋ค. SSL ์ค์ ๊น์ง ์์์ ํด์ค๋ค.
๋น๊ณต๊ฐ ํธ์คํธ ์ถ๊ฐ
์ ์ url์ ๋ง๋ค๋, ๊ทธ๊ฒ ํ์ ๋ ํด๋ผ์ด์ธํธ๋ง์ด ์ ๊ทผํ ์ ์๊ฒ๋ ํ๋ ๊ฒ๋ ๊ฐ๋ฅํ๋ค.
๋จ, ํน์ IP๋ง ํ์ฉํ๊ฑฐ๋ ํ๋๊ฑด ์๋๊ณ ํญ์ cloudflare ์์ด์ ํธ๋ฅผ ๊ฒฝ์ ํด์๋ง ๋ค์ด๊ฐ ์ ์๋ค.

๋น๊ณต๊ฐ ํธ์คํธ๋ฅผ ๋ง๋ค๋ฉด

๊ทธ๊ฑด ๊ทธ๋ฅ์ ์ ์์ด ๋์ง ์๋๋ค.
์ด๊ฑด Cloudflare์์ ์ ๊ณตํ๋ warp๋ผ๋ ์์ด์ ํธ๋ฅผ ๊น๊ณ , Zero Trust๋ฅผ ๊ตฌ์ฑํ๊ณ , Cloudflare One Client๋ฅผ ์จ์ผ๋ง ์ ๊ทผํ ์ ์๋ค.
๊ทผ๋ฐ ์ด๊ฑด ๋ง์ด ๋ฒ๊ฑฐ๋กญ๊ณ ์๋นํ ๊ธธ์ด์ง๋ฏ๋ก, ์ถํ ๋ณ๋ ์ง๋ฉด์ ํ ์ ํด์ ๋ค๋ฃจ๋๋ก ํ๊ฒ ๋ค.