iptables๋ฅผ ์ด์ฉํ์ฌ ํฌํธ ํฌ์๋ฉํ๊ธฐ (feat. ๋ฐ๋์ผ์ดํฐ๋ ์๋ฒ, VPS, OpenVPN)
์๋๋ Dedicated Server <==> Client ์ด๊ฒ ์ผ๋ฐ์ ์ด๋ค.
๊ทธ๋ฐ๋ฐ ์์ฒ๋ผ Dedicated Server <==> VPS <==> Client ์ด๋ ๊ฒ ์ค๊ณ ์๋ฒ๋ฅผ ๋์์ผ ํ๋ ๊ฒฝ์ฐ๊ฐ ์๋ค.
์๋ฒ๋ก ์ธ PC๊ฐ ๊ธฐ์์ฌ์ ์์ด์ Public IP๋ฅผ ๋ชป ์ด๋ค๋ ๊ฐ.
์ ์ฉํ ํ๊ฒฝ์ ๋ค์๊ณผ ๊ฐ๋ค.
- ์๋ฒ PC์ VPS๋ OpenVPN์ผ๋ก ์ฐ๊ฒฐ๋จ.
- ์๋ฒ PC๊ฐ OpenVPN Client / VPS๊ฐ OpenVPN Server
- ์๋ฒ PC์ OpenVPN Private IP๋ 10.8.100.2
- VPS๋ iptables๋ฅผ ์ฐ๋ Linux, TCP/UDP ๋ ๋ค ์ ์ฉ, ๋คํธ์ํฌ ์ธํฐํ์ด์ค๋ eth0, Public IP๋ 12.34.56.78, OpenVPN Private IP๋ 10.8.100.1
- ์๋น์คํ ํฌํธ๋ ์์ชฝ ๋ค 33333
$ sudo iptables -t nat -A PREROUTING -d 12.34.56.78 -p tcp --dport 33333 -j DNAT --to-dest 10.8.100.2:33333
$ sudo iptables -t nat -A PREROUTING -d 12.34.56.78 -p udp --dport 33333 -j DNAT --to-dest 10.8.100.2:33333
$ sudo iptables -t nat -A POSTROUTING -p tcp --destination 10.8.100.2 --dport 33333 -o eth0 -j SNAT --to-source 10.8.100.1
$ sudo iptables -t nat -A POSTROUTING -p udp --destination 10.8.100.2 --dport 33333 -o eth0 -j SNAT --to-source 10.8.100.1
$ sudo iptables -t filter -A FORWARD -p tcp -d 10.8.100.2 --dport 33333 -j ACCEPT
$ sudo iptables -t filter -A FORWARD -p udp -d 10.8.100.2 --dport 33333 -j ACCEPT
$ sudo iptables-save
์ฌ๋ถํ
ํ๋ฉด ์ด๊ธฐํ๋๋ค. ์ด๋ฅผ ๋ง์ผ๋ ค๋ฉด crontab
๋ฑ ๋ถํ
์ ์ ์คํฌ๋ฆฝํธ๋ฅผ ์๋์คํํ๊ฒ ๋ง๋ค์ด์ผ ํ๋ค.
์ธ๋ถ์์ 12.34.56.78:33333์ผ๋ก ์ ์ํ๋ฉด ์ฐ๊ฒฐ๋๋ค.
์ฐธ๊ณ ๋ก ์์ค ๋ฐ๋์ผ์ดํฐ๋ ์๋ฒ(Source Dedicated Server)์ ๊ฒฝ์ฐ status
๋ฅผ ์ณ์ ๋ด๋ถ IP๋ฅผ ํ์ธํด์ผ ํ๋ค.
๋ด๋ถ IP๊ฐ OpenVPN์ ๊ทธ๊ฒ๊ณผ ๋์ผํด์ผ ์ ๋๋ก ์ฐ๊ฒฐ๋ ๊ฑฐ๋ค.
์ด๋ฅผ ์์ฉํ๋ฉด Public IP๊ฐ ์ ๊ณต๋์ง ์๋ ํ๊ฒฝ(๊ธฐ์์ฌ, ๊ณต๊ณต์์ค, ๋ชจ๋ฐ์ผ, ...)์ด๋ผ๋ VPS+OpenVPN+๋ผ์ฐํ (iptables) ์กฐํฉ์ผ๋ก ํด๋น VPS์ Public IP๋ฅผ ๋ด๊ฒ์ฒ๋ผ ์ฌ์ฉํ ์ ์๋ค. ๋ฌผ๋ก VPS๋ฅผ ๋ฐ๋ก ์๋ํด์ผ ๋์ง๋ง.... ์ด์ฐจํผ ๋ผ์ฐํฐ ์ญํ ๋ง ํ๋ฏ๋ก ์ฑ๋ฅ์ ๊ตฌ์ ๋ฐ์ง ์์ผ๋ ์ ๋ ดํ VPS๋ฅผ ์ฐพ์๋ณด๋ฉด ๋ ๊ฒ์ด๋ค.
์ฐธ๊ณ ์๋ฃ
https://blog.kerus.net/2438/iptables-port-forward-to-another-public-ip
https://unix.stackexchange.com/questions/449853/port-forwarding-using-openvpn-client
https://whattheserver.com/openvpn-server-with-port-forwarding/
'๊ฐ๋ฐ&IT > Infra. & Arch. & Cloud' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
PowerShell์์ ์ผ์์ ์ผ๋ก ํ๊ฒฝ๋ณ์ ์์ ํ๊ธฐ (0) | 2024.04.02 |
---|---|
Ubuntu ๋จธ์ ๋ณต์ ์ IP ์ฃผ์ ๊ฒน์นจ ๋ฌธ์ ํด๊ฒฐ (0) | 2024.03.29 |
Ansible ์ค์น ๋ฐ Ansible๋ก AWS EC2 ์์ฑํ๊ธฐ (0) | 2024.03.11 |
Nextcloud ์ ๋ฐ์ดํธ๋ฅผ ์น ๋์ ์ฝ์์ฐฝ์์ ํ๊ธฐ (0) | 2023.06.22 |
SSH ์๋ฒ๋ก SOCKS5 ํ๋ก์ ๊ตฌ์ฑํ๊ธฐ (0) | 2022.02.07 |
CurrPorts - TCP/IP ์ก์์ ๋ง ํฌํธ ๋ฐ ์ฐ๊ฒฐ ์ํ ๋ชจ๋ํฐ๋ง ๋๊ตฌ (0) | 2013.08.09 |
์ฐ๋ถํฌ 12.04 ๋ฐ 13.10 ๋ค์ด๋ก๋ (0) | 2013.06.29 |
์๋ ํ์ธ์.
ํฌ์คํ ์ด ์ข์๋ค๋ฉด "์ข์์โค๏ธ" ๋๋ "๊ตฌ๋ ๐๐ป" ํด์ฃผ์ธ์!