TL; DR: ืื ื ืืชืงืื Wireguard ื-VPS, ืืชืืืจ ืืืื ืืื ืชื ืืืืชื ืฉืื ื-OpenWRT ืื ืืืฉ ืืจืฉืช ืืืฉื ื ืืืืชืืช ืฉืื ืืืืืคืื ืฉืื.
ืื ืืชื ืฉืืืจืื ืืช ืืชืฉืชืืช ืืืืฉืืช ืฉืืื ืืฉืจืช ืืืชื ืื ืฉืืฉ ืืื ืืจืื ืืืฉืืจืื ืืฉืืืืช IP ืืืืช, ืื ืื ืจืื ืฉืชืจืฆื ืืงืื ืืืฉื ืืืืื ืืืขืืืื, ืืืืืืืืืก, ืจืืืช ืืืืจื. ืืจืื, ืขืืืจ ืืฉืืืืช ืืืืืช, ื ืจืืฉ IP ืืืกืคืง, ืืืืืจ ืืื ืืืฆืืืืช ืฉื ืื ืฉืืจืืช ืืืขืืจืืช ืืืืฆื.
ืืืงืื ืืืช, ืืืืจืชื VPN ืขื ืืืฉื ื-LAN ืืืืชื ืฉืื. ืืืชืจืื ืืช ืฉื ืคืชืจืื ืื:
- ืฉืงืืคืืช: ืื ื ืืจืืืฉ ืืืืช ืืื ืืฆื.
- ืคืฉืืืช: ืืืืจ ืืืชื ืืชืฉืื ืืื, ืืื ืฆืืจื ืืืฉืื ืขื ืืขืืจื ืฉื ืื ืืฆืืื.
- ืืืืจ: ืืืจ ืืฉ ืื VPS; ืืืฉืืืืช ืืืื, VPN ืืืืจื ื ืืืขื ืืืื ื ืืืืื ืช ืืฉืืืื.
- ืืืืื: ืฉืื ืืืจ ืื ืืืื, ืืชื ืืืื ืืืฉืืืจ ืืช MongoDB ืืื ืกืืกืื ืืืฃ ืืื ืื ืืื ืื ืื ืืช ืื ืชืื ืื.
ืืื ืชืืื, ืืฉ ืืกืจืื ืืช. ืจืืฉืืช, ืชืฆืืจื ืืืืืืจ ืื ืืงืื ืื ืคืจื, ืืืื ืืฆื ืืฉืจืช. ืื ืืืื ืืืืืช ืื ื ืื ืื ืืฉ ืื ืืกืคืจ ืจื ืฉื ืืืฉืืจืื ืฉืืื ืืชื ืจืืฆื ืืืฉืช ืืฉืืจืืชืื. ืฉื ืืช, ืืืชืื ืฉืืฉ ืื LAN ืขื ืืืชื ืืืื ืืขืืืื - ืชืฆืืจื ืืคืชืืจ ืืช ืืืขืื ืืื.
ืื ืื ื ืฆืจืืืื:
- VPS (ืืืงืจื ืฉืื ืืืืืื 10).
- ื ืชื OpenWRT.
- ืึตืึตืคืึนื.
- ืฉืจืช ืืืชื ืขื ืฉืืจืืช ืืื ืืจื ื ืืืฉืื ืืืืืงื.
- ืืจืืขืืช ืืฉืจืืช.
ืืื ืืืืืืืช ื-VPN ืฉืื ืืฉืชืืฉ ืืื Wireguard. ืืคืชืจืื ืืื ืืฉ ืื ืืืืงืืช ืืืืืฉืืช, ืื ืืชืืจ ืืืชื. ืขืืืจ VPN ืื ื ืืฉืชืืฉ ืืจืฉืช ืืฉื ื 192.168.99.0/24
, ืืืืืช ืฉืื 192.168.0.0/24
.
ืชืฆืืจืช VPS
ืืคืืื ื-VPS ืืืืืื ืืืืชืจ ืขืืืจ 30 ืจืืื ืืืืืฉ ืืกืคืืง ืืขืกืงืื, ืื ืืฉ ืื ืืื ืืกืคืืง ืืื ืฉืืืื ืื ืืื
ืื ื ืืืฆืข ืืช ืื ืืคืขืืืืช ืืฉืจืช ื-root ืืืืฉื ื ืงื; ืืืืืช ืืฆืืจื, ืืืกืฃ 'sudo' ืืืชืื ืืช ืืืืจืืืช.
ื-Wireguard ืื ืืื ืืื ืืืื ืืก ืืืชื ืืืืจืืื, ืื ืื ื ืืจืืฅ 'apt edit-sources' ืืืืกืืฃ ืืฆืืืืช ืืืืจืืืช ืืฉืชื ืฉืืจืืช ืืกืืฃ ืืงืืืฅ:
deb http://deb.debian.org/debian/ buster-backports main
# deb-src http://deb.debian.org/debian/ buster-backports main
ืืืืืื ืืืชืงื ืช ืืืจื ืืจืืืื: apt update && apt install wireguard
.
ืืืืจ ืืื, ืื ื ืืืฆืจืื ืืื ืืคืชืืืช: wg genkey | tee /etc/wireguard/vps.private | wg pubkey | tee /etc/wireguard/vps.public
. ืืืืจ ืขื ืคืขืืื ืื ืคืขืืืื ื ืืกืคืืช ืขืืืจ ืื ืืืฉืืจ ืืืฉืชืชืฃ ืืืขืื. ืฉื ื ืืช ืื ืชืื ืืงืืฆื ืืืคืชื ืขืืืจ ืืืฉืืจ ืืืจ ืืื ืชืฉืื ืืช ืืืืืื ืฉื ืืคืชืืืช ืคืจืืืื.
ืขืืฉืื ืื ืื ื ืืืื ืื ืืช ืืชืฆืืจื. ืืชืืืง /etc/wireguard/wg0.conf
ืืชืฆืืจื ืืืฆืืช:
[Interface]
Address = 192.168.99.1/24
ListenPort = 57953
PrivateKey = 0JxJPUHz879NenyujROVK0YTzfpmzNtbXmFwItRKdHs=
[Peer] # OpenWRT
PublicKey = 36MMksSoKVsPYv9eyWUKPGMkEs3HS+8yIUqMV8F+JGw=
AllowedIPs = 192.168.99.2/32,192.168.0.0/24
[Peer] # Smartphone
PublicKey = /vMiDxeUHqs40BbMfusB6fZhd+i5CIPHnfirr5m3TTI=
AllowedIPs = 192.168.99.3/32
ืืงืืข [Interface]
ืืืืืจืืช ืฉื ืืืืื ื ืขืฆืื ืืกืืื ืืช, ืืื ื [Peer]
โ ืืืืจืืช ืืื ืฉืืชืืืจ ืืืื. IN AllowedIPs
ืืืคืจืืื ืืคืกืืงืื, ืฆืืื ื ืจืฉืชืืช ืืืฉื ื ืฉืื ืืชืื ืืขืืืช ืืืงืืืื. ืืืื ืื, ืขืืืชืื ืฉื ืืชืงื ื "ืืงืื" ืืจืฉืช ืืืฉื ื ืฉื VPN ืืืืืื ืืืืืช ืืขืื ืืกืืื /32
, ืื ืืฉืืจ ืื ืืชื ืขื ืืื ืืฉืจืช. ืืืืืื ืฉืืจืฉืช ืืืืชืืช ืชื ืืชื ืืจื OpenWRT, ื AllowedIPs
ืื ื ืืืกืืคืื ืืช ืจืฉืช ืืืฉื ื ืืืืชืืช ืฉื ืืขืืืช ืืืงืืืื. IN PrivateKey
ะธ PublicKey
ืืคืจืง ืืช ืืืคืชื ืืคืจืื ืฉื ืืฆืจ ืขืืืจ ื-VPS ืืืช ืืืคืชืืืช ืืฆืืืืจืืื ืฉื ืืขืืืชืื ืืืชืื.
ื-VPS, ืื ืื ืฉื ืืชืจ ืืื ืืืคืขืื ืืช ืืคืงืืื ืฉืชืขืื ืืช ืืืืฉืง ืืืืืกืืฃ ืืืชื ืืืคืขืื ืืืืืืืืช: systemctl enable --now wg-quick@wg0
. ื ืืชื ืืืืืง ืืช ืืฆื ืืืืืืจ ืื ืืืื ืืืืฆืขืืช ืืคืงืืื wg
.
ืชืฆืืจืช OpenWRT
ืื ืื ืฉืืชื ืฆืจืื ืืฉืื ืื ื ืืฆื ืืืืืื ื-luci (ืืืฉืง ืืืื ืืจื ื OpenWRT). ืืืื ืก ืืคืชื ืืช ืืืจืืืกืืื ืชืืื ื ืืชืคืจืื ืืขืจืืช. OpenWRT ืืื ื ืืืืกื ืืืืื ืืืืฉื, ืืื ืขืืื ืืขืืื ืืช ืจืฉืืืช ืืืืืืืช ืืืืื ืืช ืขื ืืื ืืืืฆื ืขื ืืืืฆื ืืืจืืง ืขืืื ืจืฉืืืืช. ืืืืจ ืืฉืืืชื, ืกืข ืืชืื ืืืกื ื luci-app-wireguard
ืืืืกืชืื ืขื ืืืืื ืขื ืขืฅ ืชืืืช ืืคืืคื, ืืชืงื ืืช ืืืืืื ืืื.
ืืชืคืจืื ืจืฉืชืืช, ืืืจ ืืืฉืงืื ืืืืฅ ืขื ืืืคืชืืจ ืืืจืืง ืืืกืฃ ืืืฉืง ืืืฉ ืืชืืช ืืจืฉืืืช ืืงืืืืื. ืืืืจ ืืื ืช ืืฉื (ืื wg0
ืืืงืจื ืฉืื) ืืืืืจืช ืคืจืืืืงืื ื-VPN ืฉื WireGuard, ื ืคืชื ืืืคืก ืืืืจืืช ืขื ืืจืืข ืืฉืื ืืืช.
ืืืจืืืกืืื ืืืืจืืช ืืืืืืช, ืขืืื ืืืืื ืืช ืืืคืชื ืืคืจืื ืืืช ืืชืืืช ื-IP ืฉืืืื ื ืขืืืจ OpenWRT ืืื ืขื ืจืฉืช ืืืฉื ื.
ืืืจืืืกืืื ืืืืจืืช ืืืืช ืืฉ, ืืืจ ืืช ืืืืฉืง ืืจืฉืช ืืืงืืืืช. ืืืจื ืื, ืืืืืจืื ืื-VPN ืืืื ืกื ืืืืคื ืืืคืฉื ืืืืืจ ืืืงืืื.
ืืืฉืื ืืช ืขืืืชืื, ืืืฅ ืขื ืืืคืชืืจ ืืืืื, ืืืืืจ ืืื ืชืืื ืืช ื ืชืื ื ืฉืจืช ื-VPS ืืืืคืก ืืืขืืืื: ืืคืชื ืฆืืืืจื, ืืชืืืืช IP ืืืชืจืืช (ืขืืื ืื ืชื ืืช ืื ืืืฉื ื ืฉื ื-VPN ืืฉืจืช). ื-Endpoint Host ื-Endpoint Port, ืืื ืืช ืืชืืืช ื-IP ืฉื ื-VPS ืขื ืืืฆืืื ืฉืฆืืื ื ืงืืื ืืื ืืื ืืืืช ListenPort, ืืืชืืื. ืืืืง ืืชืืืืช IP ืืืชืจืืช ืขืืืจ ืืกืืืืื ืฉืืืืืฆืจื. ืืืงืคืืื ืืืื ืืช Persistent Keep Alive, ืืืจืช ืืื ืืจื ืื-VPS ืื ืชื ืชืืฉืืจ ืื ืืืืจืื ืืืื ืืืืืจื NAT.
ืืืืจ ืืื, ืชืืืื ืืฉืืืจ ืืช ืืืืืจืืช, ืืืืืจ ืืื ืืขืืื ืขื ืจืฉืืืช ืืืืฉืงืื, ืืืืืฅ ืขื ืฉืืืจ ืืืื. ืืืืืช ืืฆืืจื, ืืคืขื ืืืคืืจืฉ ืืช ืืืืฉืง ืืืืฆืขืืช ืืืฆื ืืคืขื ืืืืฉ.
ืืืืจืช ืกืืืจืืคืื
ืชืืืงืง ืืืงืื Wireguard, ืืื ืืืื ื
ืฆืืืื ืืกื ืืืืืฉ ืืืืืคืื
ืืืฅ ืขื ืืชืงืืืืื ืืคืื ื, ืืคืขื ืืืชื ื...
ืกืืื
ืขืืฉืื ืืชื ืืืื ืืืฉืช ืื ืืืืจ ืืืชื, ืืฉื ืืช ืืช ืืืืจืืช ืื ืชื ืื ืืขืฉืืช ืื ืืืจ ืืจืืช ื-IP.
ืฆืืืืื ืืกื ืืืืืืจ ืืืงืืื
ืืงืืจ: www.habr.com