์ ๋ ์ค๋ซ๋์ DVRIP ํ๋กํ ์ฝ์ ํตํด ์นด๋ฉ๋ผ๋ก ์์
ํ๊ธฐ ์ํ ์คํฌ๋ฆฝํธ์ ๋ํ ๊ธฐ์ฌ๋ฅผ ์ฐ๊ณ ์ถ์์ง๋ง ์ต๊ทผ ๋ด์ค์ ๊ด๋ จ๋ ๋
ผ์๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
์ฐ๋ฆฌ๋ 2๊ฐ์ ํจํค์ง๋ฅผ ๊ฐ์ง๊ณ ์์์ต๋๋ค... ์ ๊น, ์ด๊ฒ์ ๊ฐ์ ์ด์ผ๊ธฐ๊ฐ ์๋๋๋ค.
์ฐ๋ฆฌ๋ TP-LINK ๋ผ์ฐํฐ 2๋, NAT ๊ณต๊ธ์ ๋ค์ ์ธํฐ๋ท ์ก์ธ์ค, Partizan ๊ฐ์ ์นด๋ฉ๋ผ ์ด๋ค ๋ชจ๋ธ(TCP ๋๋ DVRIP๋ฅผ ํตํ RSTP๋ฅผ ์ง์ํ๋ ๋ชจ๋ IP ์นด๋ฉ๋ผ๊ฐ ์ง์ํ๋์ง ๊ธฐ์ตํ์ง ๋ชปํจ) ๋ฐ 4์ ๋ก์ ๋ํ ์ ๋ ดํ VPS๋ฅผ ๋ณด์ ํ์ต๋๋ค. ํน์ฑ: 2์ฝ์ด CPU 2.4GHz, 4GB RAM, 300GB HDD, 100Mbit/s ํฌํธ. ๋ํ ์ด ์ธ์๋ ํจ์น ์ฝ๋๋ณด๋ค ๋น์ฉ์ด ๋ง์ด ๋๋ ์ ํ์ ๊ตฌ์
ํ๋ ๊ฒ์ ๊บผ๋ คํฉ๋๋ค.
๋จธ๋ฆฌ๋ง
๋น์ฐํ ์ด์ ๋ก ์ฐ๋ฆฌ๋ ๋ผ์ฐํฐ์ ์นด๋ฉ๋ผ ํฌํธ๋ฅผ ์ ๋ฌํ๊ณ ์ถ์ ์ฆ๊ธธ ์ ์์ผ๋ฉฐ, ์ค๋ น ๊ฐ๋ฅํ๋๋ผ๋ ๊ทธ๋ ๊ฒ ํด์๋ ์ ๋ฉ๋๋ค.
IPv6 ํฐ๋๋ง์ ๋ช ๊ฐ์ง ์ต์ ์ด ์๋ค๋ ์์์ ๊ฐ์๊ธฐ ๋ค์์ต๋๋ค. ๋คํธ์ํฌ์ ๋ชจ๋ ์ฅ์น๊ฐ ์ธ๋ถ IPv6 ์ฃผ์๋ฅผ ์์ ํ๋๋ก ๋ชจ๋ ์์ ์ ์ํํ ์ ์๋ ๊ฒ ๊ฐ์ต๋๋ค. ์ด๋ ๊ฒ ํ๋ฉด ๋ณด์์ ์ฌ์ ํ โโ์ ์ง๋์ง๋ง ์์ ์ด ์กฐ๊ธ ๋จ์ํ๋ ๊ฒ์ ๋๋ค. ๋ฌธ์ ์ ์ด ์ด๋ฒคํธ์ ๋ํด ํ์ค TP-LINK ํ์จ์ด์์ ์ด ๊ธฐ์ ์ ์ง์ํ๋ ๊ฒ์ ๋ค์ ์ด์ํฉ๋๋ค. ์ ๋ฌธ์ฅ์์ ๋ด๊ฐ ์์ ํ ๋ง๋ ์ ๋๋ ๋ง์ ํ๊ณ ์์ ๊ฐ๋ฅ์ฑ์ด ์์ง๋ง ์ ํ ์ฃผ์๋ฅผ ๊ธฐ์ธ์ด์ง ๋ง์ธ์.
๊ทธ๋ฌ๋ ๋คํ์ค๋ฝ๊ฒ๋ ๋ชจ๋ ๋ผ์ฐํฐ์ ๊ฑฐ์ ๋ชจ๋ ํ์จ์ด(์ฌ์ค ๊ทผ๊ฑฐ๊ฐ ์๋ ์ง์ )์๋ PPTP/L2TP ํด๋ผ์ด์ธํธ ๋๋ ์ด๋ฅผ ์ฌ์ฉํ์ฌ ์ฌ์ฉ์ ์ ์ ํ์จ์ด๋ฅผ ์ค์นํ ์ ์๋ ๊ธฐ๋ฅ์ด ํฌํจ๋์ด ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ด๋ฅผ ํตํด ์ฐ๋ฆฌ๋ ์ด๋ฏธ ์ผ์ข ์ ํ๋ ์ ๋ต์ ๊ตฌ์ถํ ์ ์์ต๋๋ค.
ํ ํด๋ก์ง
์ด์ด ๋๋ ๊ฐ์ด๋ฐ ๋ด ๋๋ ๋ค์๊ณผ ๊ฐ์ ๋ฐฐ์ ๋ค์ด์ด๊ทธ๋จ์ ํ์์์ผฐ์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ ๋ ๋ค๋ฅธ ๊ณต๊ฒฉ ์ค์ ๋๋ ๊ทธ๊ฒ์ Habr์ ๊ฒ์ํ๊ธฐ ์ํด ๊ทธ๋ ธ์ต๋๋ค.
์ฃผ์ 169.178.59.82๋ ๋ฌด์์๋ก ์์ฑ๋์์ผ๋ฉฐ ์์๋ก๋ง ์ฌ์ฉ๋ฉ๋๋ค.
๊ธ์, ์๋๋ฉด ๋ง๋ก ๋งํ๋ฉด :
- ๋ผ์ฐํฐ TP-๋งํฌ 1 (192.168.1.1), ๋ฒฝ์์ ํ์ด ๋์จ ์ผ์ด๋ธ์ด ์ฝ์ ๋ฉ๋๋ค. ํธ๊ธฐ์ฌ ๋ง์ ๋ ์๋ผ๋ฉด ์ด๊ฒ์ด ๋ด๊ฐ ์ธํฐ๋ท์ ์ ์ํ๋ ๋ฐ ์ฌ์ฉํ๋ ๊ณต๊ธ์ ์ผ์ด๋ธ์ด๋ผ๊ณ ์ถ์ธกํ ๊ฒ์ ๋๋ค. ํจ์น ์ฝ๋๋ Wi-Fi๋ฅผ ํตํด ๋ค์ํ ๊ฐ์ ์ฉ ์ฅ์น๊ฐ ์ด ๋ผ์ฐํฐ์ ์ฐ๊ฒฐ๋ฉ๋๋ค. ์ด๊ฒ์ด ๋คํธ์ํฌ๋ค 192.168.1.0
- ๋ผ์ฐํฐ TP-๋งํฌ 2 (192.168.0.1, 192.168.1.200), TP-LINK 1 ๋ผ์ฐํฐ์์ ํ์ด ๋์จ ์ผ์ด๋ธ์ด ์ฝ์
๋ฉ๋๋ค. ์ด ์ผ์ด๋ธ ๋๋ถ์ TP-LINK 2 ๋ผ์ฐํฐ์ ์ฐ๊ฒฐ๋ ์ฅ์น๋ ์ธํฐ๋ท์ ์ก์ธ์คํ ์ ์์ต๋๋ค. ์ด ๋ผ์ฐํฐ๋ ์๋ฒ 10.0.5.100์ ๋ํ PPTP ์ฐ๊ฒฐ(169.178.59.82)๋ก ๊ตฌ์ฑ๋์ด ์์ต๋๋ค. IP ์นด๋ฉ๋ผ 192.168.0.200๋ ์ด ๋ผ์ฐํฐ์ ์ฐ๊ฒฐ๋์ด ์์ผ๋ฉฐ ๋ค์ ํฌํธ๊ฐ ์ ๋ฌ๋ฉ๋๋ค.
- 192.168.0.200:80 -> 49151 (์น๋ชจ๋)
- 192.168.0.200:34567 -> 49152 (DVRIP)
- 192.168.0.200:554 -> 49153(RTSP)
- ์๋ฒ (169.178.59.82, 10.0.5.1), TP-LINK 2 ๋ผ์ฐํฐ๊ฐ ์ฐ๊ฒฐ๋์ด ์์ต๋๋ค. ์๋ฒ๋ pptpd, Shadowsocks ๋ฐ 3proxy๋ฅผ ์คํํ๋ฉฐ ์ด๋ฅผ ํตํด 10.0.5.0 ๋คํธ์ํฌ์ ์ฅ์น์ ์ก์ธ์คํ ์ ์์ผ๋ฏ๋ก TP-LINK 2 ๋ผ์ฐํฐ์ ์ก์ธ์คํ ์ ์์ต๋๋ค.
๋ฐ๋ผ์ 192.168.1.0 ๋คํธ์ํฌ์ ๋ชจ๋ ํ ์ฅ์น๋ 2์ TP-LINK 192.168.1.200๋ฅผ ํตํด ์นด๋ฉ๋ผ์ ์ก์ธ์คํ ์ ์์ผ๋ฉฐ, ๋ค๋ฅธ ๋ชจ๋ ์ฅ์น๋ pptp, Shadowsocks ๋๋ ์๋ง5์ ํตํด ์ฐ๊ฒฐํ๊ณ 10.0.5.100์ ์ก์ธ์คํ ์ ์์ต๋๋ค.
์กฐ์
์ฒซ ๋ฒ์งธ ๋จ๊ณ๋ ์ ๊ทธ๋ฆผ์ ๋ค์ด์ด๊ทธ๋จ์ ๋ฐ๋ผ ๋ชจ๋ ์ฅ์น๋ฅผ ์ฐ๊ฒฐํ๋ ๊ฒ์ ๋๋ค.
- TP-LINK 1 ๋ผ์ฐํฐ ์ค์ ์ TP-LINK 192.168.1.200์ฉ ์ฃผ์ 2์ ์์ฝํ๋ ๊ฒ์ผ๋ก ์์ฝ๋ฉ๋๋ค. 192.168.1.0 ๋คํธ์ํฌ์์ ์ก์ธ์คํ๊ธฐ ์ํด ๊ณ ์ ์ฃผ์๊ฐ ํ์ํ ๊ฒฝ์ฐ ์ ํ ์ฌํญ์ ๋๋ค. ์ํ๋ ๊ฒฝ์ฐ 10-20Mbit๋ฅผ ์์ฝํ ์ ์์ต๋๋ค(10 ๋น๋์ค ์คํธ๋ฆผ ํ๋์๋ 1080์ด๋ฉด ์ถฉ๋ถํฉ๋๋ค).
- ์๋ฒ์ pptpd๋ฅผ ์ค์นํ๊ณ ๊ตฌ์ฑํด์ผ ํฉ๋๋ค. ๋๋ Ubuntu 18.04๋ฅผ ๊ฐ์ง๊ณ ์์ผ๋ฉฐ ๋จ๊ณ๋ ๋๋ต ๋ค์๊ณผ ๊ฐ์ต๋๋ค. (๊ธฐ์ฆ์๋ ์์์ต๋๋ค.
blog.xenot.ru/bystraya-nastrojka-vpn-servera-pptp-na-ubuntu-server-18-04-lts.fuck ):- ํ์ํ ํจํค์ง๋ฅผ ์ค์นํฉ๋๋ค.
sudo apt install pptpd iptables-persistent
- ์ฐ๋ฆฌ๋ ๊ทธ๊ฒ์ ๋ค์๊ณผ ๊ฐ์ ํํ๋ก ๊ฐ์ ธ์ต๋๋ค
/etc/pptpd.conf
option /etc/ppp/pptpd-options bcrelay eth0 # ะะฝัะตััะตะนั, ัะตัะตะท ะบะพัะพััะน ะฒะฐั ัะตัะฒะตั ั ะพะดะธั ะฒ ะธะฝัะตัะฝะตัั logwtmp localip 10.0.5.1 remoteip 10.0.5.100-200
- ํธ์งํ๋ค
/etc/ppp/pptpd-์ต์
novj novjccomp nologfd name pptpd refuse-pap refuse-chap refuse-mschap require-mschap-v2 #require-mppe-128 # ะะพะถะฝะพ ัะฐัะบะพะผะผะตะฝัะธัะพะฒะฐัั, ะฝะพ ะผะพะน TP-LINK c ะฝะธะผ ะฝะต ะดััะถะธั ms-dns 8.8.8.8 ms-dns 1.1.1.1 ms-dns 77.88.8.8 ms-dns 8.8.4.4 ms-dns 1.0.0.1 ms-dns 77.88.8.1 proxyarp nodefaultroute lock nobsdcomp
- ์๊ฒฉ ์ฆ๋ช
์ถ๊ฐ
/etc/ppp/chap-secrets
# Secrets for authentication using CHAP # client server secret IP addresses username pptpd password *
- ๋ค์์ ์ถ๊ฐ
/etc/sysctl.conf
net.ipv4.ip_forward=1
๊ทธ๋ฆฌ๊ณ sysctl์ ๋ค์ ๋ก๋ํ์ธ์
sudo sysctl -p
- pptpd๋ฅผ ์ฌ๋ถํ
ํ๊ณ ์์์ ์ถ๊ฐํ์ธ์.
sudo service pptpd restart sudo systemctl enable pptpd
- ํธ์งํ๋ค
iptables์
sudo iptables -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT sudo iptables -A INPUT -p tcp -m tcp --dport 1723 -j ACCEPT sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE sudo iptables --table nat --append POSTROUTING --out-interface ppp+ -j MASQUERADE sudo iptables -I INPUT -s 10.0.5.0/24 -i ppp+ -j ACCEPT sudo iptables --append FORWARD --in-interface eth0 -j ACCEPT
๊ทธ๋ฆฌ๊ณ ์ ์ฅ
sudo netfilter-persistent save sudo netfilter-persistent reload
- ํ์ํ ํจํค์ง๋ฅผ ์ค์นํฉ๋๋ค.
- TP-LINK 2 ์ค์
- ์นด๋ฉ๋ผ์ ์ฃผ์๋ 192.168.0.200์
๋๋ค.
DHCP -> ์ฃผ์ ์์ฝ โ MAC ์ฃผ์ โ ์นด๋ฉ๋ผ MAC, DHCP์์ ๋ณผ ์ ์์ -> DHCP ํด๋ผ์ด์ธํธ ๋ชฉ๋ก
โ ์์ฝ๋ IP ์ฃผ์ โ 192.168.0.200 - ํฌ์๋ฉ ํฌํธ:
๋ฆฌ๋๋ ์ -> ๊ฐ์ ์๋ฒ โ ์๋น์ค ํฌํธ: 49151, ๋ด๋ถ ํฌํธ: 80, IP ์ฃผ์: 192.168.0.200, ํ๋กํ ์ฝ: TCP
โ ์๋น์ค ํฌํธ: 49152, ๋ด๋ถ ํฌํธ: 34567, IP ์ฃผ์: 192.168.0.200, ํ๋กํ ์ฝ: TCP
โ ์๋น์ค ํฌํธ: 49153, ๋ด๋ถ ํฌํธ: 554, IP ์ฃผ์: 192.168.0.200, ํ๋กํ ์ฝ: TCP - VPN ์ฐ๊ฒฐ ์ค์ :
๋คํธ์ํฌ -> WAN โ WAN ์ฐ๊ฒฐ ์ ํ: PPTP
โ ์ฌ์ฉ์ ์ด๋ฆ: ์ฌ์ฉ์ ์ด๋ฆ(/etc/ppp/chap-secrets ์ฐธ์กฐ)
โ ๋น๋ฐ๋ฒํธ: ๋น๋ฐ๋ฒํธ(/etc/ppp/chap-secrets ์ฐธ์กฐ)
โ ๋น๋ฐ๋ฒํธ ํ์ธ: ๋น๋ฐ๋ฒํธ(/etc/ppp/chap-secrets ์ฐธ์กฐ)
- ์ ๋ IP
โ IP ์ฃผ์/์๋ฒ ์ด๋ฆ: 169.178.59.82(๋น์ฐํ ์๋ฒ์ ์ธ๋ถ IP)
โ ์ฐ๊ฒฐ ๋ชจ๋: ์๋์ผ๋ก ์ฐ๊ฒฐ - ์ ํ์ ์ผ๋ก ๋ผ์ฐํฐ์ ์น ํ์ด์ค์ ๋ํ ์๊ฒฉ ์ก์ธ์ค๋ฅผ ํ์ฉํฉ๋๋ค.
๋ณด์ -> ์๊ฒฉ ๊ด๋ฆฌ - ์น ๊ด๋ฆฌ ํฌํธ: 80
โ ์๊ฒฉ ๊ด๋ฆฌ IP ์ฃผ์: 255.255.255.255 - TP-LINK 2 ๋ผ์ฐํฐ ์ฌ๋ถํ
- ์นด๋ฉ๋ผ์ ์ฃผ์๋ 192.168.0.200์
๋๋ค.
PPTP ๋์ L2TP๋ฅผ ์ฌ์ฉํ ์ ์์ผ๋ฉฐ, ๋ง์ถคํ ํ์จ์ด๊ฐ ์๋ ๊ฒฝ์ฐ ์ํ๋ ๋๋ก ์ฌ์ฉํ ์ ์์ต๋๋ค. ๋๋ ๋ณด์์์ ์ด์ ๋ก ์ด ์ฒด๊ณ๋ฅผ ๊ตฌ์ถํ์ง ์์๊ธฐ ๋๋ฌธ์ PPTP๋ฅผ ์ ํํ๊ณ , ๋ด ๊ฒฝํ์ผ๋ก๋ pptpd๊ฐ ๊ฐ์ฅ ๋น ๋ฅธ VPN ์๋ฒ์์ต๋๋ค. ๋์ฑ์ด ์ ๋ ๋ง์ถคํ ํ์จ์ด๋ฅผ ์ค์นํ๊ณ ์ถ์ง ์์๊ธฐ ๋๋ฌธ์ PPTP์ L2TP ์ค ํ๋๋ฅผ ์ ํํด์ผ ํ์ต๋๋ค.
๋ด๊ฐ ๋งค๋ด์ผ์ ์ด๋ ๋ถ๋ถ๋ ์ค์ํ์ง ์์๊ณ , ๋น์ ์ด ๋ชจ๋ ๊ฒ์ ์ฌ๋ฐ๋ฅด๊ฒ ํ๊ณ ์ด์ด ์ข์๋ค๋ฉด, ์ด ๋ชจ๋ ์กฐ์์ด ๋๋ ํ
- ์ฒซ์งธ๋ก
ifconfig
์ธํฐํ์ด์ค๋ฅผ ๋ณด์ฌ๋๋ฆฌ๊ฒ ์ต๋๋ค
ppp0 inet 10.0.5.1 netmask 255.255.255.255 destination 10.0.5.100
, - ๋์งธ, 10.0.5.100์ ํ์ ํด์ผ ํฉ๋๋ค.
- ๊ทธ๋ฆฌ๊ณ ์ธ ๋ฒ์งธ๋ก
ffprobe -rtsp_transport tcp "rtsp://10.0.5.100:49153/user=admin&password=password&channel=1&stream=0.sdp"
์คํธ๋ฆผ์ ๊ฐ์งํด์ผ ํฉ๋๋ค.
์นด๋ฉ๋ผ ์ค๋ช ์์์ rtsp ํฌํธ, ๋ก๊ทธ์ธ ๋ฐ ๋น๋ฐ๋ฒํธ๋ฅผ ์ฐพ์ ์ ์์ต๋๋ค.
๊ฒฐ๋ก
์์น์ ์ผ๋ก ์ด๊ฒ์ ๋์์ง ์์ผ๋ฉฐ RTSP์ ์ก์ธ์คํ ์ ์์ผ๋ฉฐ ๋ ์ โโ์ํํธ์จ์ด๊ฐ DVRIP์ ํตํด ์๋ํ๋ ๊ฒฝ์ฐ ์ฌ์ฉํ ์ ์์ต๋๋ค. ffmpeg๋ฅผ ์ฌ์ฉํ์ฌ ์คํธ๋ฆผ์ ์ ์ฅํ๊ณ , ๋น๋์ค ์๋๋ฅผ 2-3-5๋ฐฐ ๋์ด๊ณ , ํ ์๊ฐ ๋จ์๋ก ๋๋๊ณ , ๋ชจ๋ Google ๋๋ผ์ด๋ธ๋ ์์ ๋คํธ์ํฌ์ ์ ๋ก๋ํ๋ ๋ฑ ๋ค์ํ ์์ ์ ์ํํ ์ ์์ต๋๋ค.
TCP๋ฅผ ํตํ RTSP๋ ๊ทธ๋ค์ง ์์ ์ ์ผ๋ก ์๋ํ์ง ์์๊ธฐ ๋๋ฌธ์ ๋ง์์ ๋ค์ง ์์์ง๋ง UDP์์๋ ํฌํธ ๋ฒ์๋ฅผ ์ ๋ฌํ ์ ์๊ธฐ ๋๋ฌธ์(๋๋ ํ ์ ์์ง๋ง ํ๊ณ ์ถ์ง๋ ์์) ๋ง์์ ๋ค์ง ์์์ต๋๋ค. RTSP๊ฐ ๋น๋์ค ์คํธ๋ฆผ์ ํธ์ํ์ง๋ง ์๋ํ์ง ์์ต๋๋ค. DVRIP์ ํตํด TCP๋ฅผ ํตํด ์คํธ๋ฆผ์ ๋๋๊ทธํ๋ ์คํฌ๋ฆฝํธ๋ฅผ ์์ฑํ์ต๋๋ค. ๋์ฑ ์์ ์ ์ธ ๊ฒ์ผ๋ก ๋ํ๋ฌ์ต๋๋ค.
์ด ์ ๊ทผ ๋ฐฉ์์ ์ฅ์ ์ค ํ๋๋ TP-LINK 2 ๋ผ์ฐํฐ ๋์ 4G ํ์ฌ์ ์ง์ํ๋ ์ฅ์น๋ฅผ ์ฌ์ฉํ์ฌ UPS์ ์นด๋ฉ๋ผ๋ก ์ ์์ ๊ณต๊ธํ ์ ์๋ค๋ ๊ฒ์ ๋๋ค(์์ฌํ ์ฌ์ง ์์ด ์ด์ ๋ณด๋ค ํจ์ฌ ์ ์ ์ฉ๋์ด ํ์ํจ). ๋ ์ฝ๋๋ฅผ ์ฌ์ฉ) ๋ํ ๋ นํ ๋ด์ฉ์ ๊ฑฐ์ ์ฆ์ ์๋ฒ๋ก ์ ์ก๋๋ฏ๋ก ์นจ์ ์๊ฐ ์ฌ์ดํธ์ ์นจ์ ํ๋๋ผ๋ ๋น๋์ค๋ฅผ ํ์ทจํ ์ ์์ต๋๋ค. ์ผ๋ฐ์ ์ผ๋ก ๊ธฐ๋์ ์ฌ์ง๊ฐ ์์ผ๋ฉฐ ๋ชจ๋ ๊ฒ์ ์์๋ ฅ์๋ง ๋ฌ๋ ค ์์ต๋๋ค.
์ถ์ : ๋ง์ ์ ์กฐ์
์ฒด๊ฐ ๊ธฐ์ฑ ํด๋ผ์ฐ๋ ์๋ฃจ์
์ ์ ๊ณตํ๋ค๋ ๊ฒ์ ์๊ณ ์์ง๋ง ๊ฐ๊ฒฉ๋ฉด์์ VPS(์ด๋ฏธ 3๊ฐ๊ฐ ์์ผ๋ฏ๋ก ์ด๋๊ฐ์ ๋ฆฌ์์ค๋ฅผ ํ ๋นํด์ผ ํจ)๋ณด๋ค ๊ฑฐ์ ๋ ๋ฐฐ๋ ๋น์ธ๊ณ ์ ์ด ๊ธฐ๋ฅ์ด ํจ์ฌ ์ ์ต๋๋ค. ๋ณ๋ก ๋ง์กฑ์ค๋ฌ์ด ํ์ง์ ์๋๋๋ค.
์ถ์ฒ : habr.com