siga WireGuard inti ka hareup Linux 5.6, kuring mutuskeun pikeun ningali kumaha cara anu pangsaéna pikeun ngahijikeun VPN ieu sareng .
pakakas
- Raspberry Pi 3 kalayan modul LTE sareng alamat IP umum. Bakal aya server VPN di dieu (saterusna dina téks disebut edgewalker)
- Telepon hurung Android, anu kedah nganggo VPN pikeun sadaya komunikasi
- catetan leutik Linux, anu ngan ukur kedah nganggo VPN dina jaringan
Unggal alat anu nyambung ka VPN kedah tiasa nyambung ka sadaya alat anu sanés. Salaku conto, telepon kedah tiasa nyambung ka pangladén wéb dina laptop upami kadua alat éta bagian tina jaringan VPN. Upami setelanna rada saderhana, maka anjeun tiasa mikir ngeunaan nyambungkeun desktop kana VPN (via Ethernet).
Nganggap yén sambungan kabel sareng nirkabel janten kirang aman dina waktosna (, и ), kuring serius ngémutan ngagunakeun WireGuard pikeun sadaya alat kuring, naon waé lingkungan anu dianggo.
Pamasangan parangkat lunak
WireGuard nyayogikeun pikeun kalolobaan distribusi Linux, Windows и macOSAplikasi pikeun Android sareng iOS dikirimkeun ngalangkungan toko aplikasi.
Abdi gaduh Fedora pangénggalna Linux 31, sareng sateuacan dipasang kuring males maca manualna. Kuring kakara mendakan pakétna. wireguard-tools, dipasang aranjeunna, lajeng teu bisa angka kaluar naha nanaon ieu jalan. Panaliti salajengna ngungkabkeun yén kuring henteu gaduh pakét dipasang wireguard-dkms (kalayan supir jaringan), tapi teu aya dina gudang distribusi kuring.
Upami kuring parantos maca petunjukna, kuring bakal nyandak léngkah anu leres:
$ sudo dnf copr enable jdoss/wireguard
$ sudo dnf install wireguard-dkms wireguard-tools Abdi gaduh distribusi Raspbian Buster anu dipasang dina Raspberry Pi kuring, parantos aya pakét wireguard, pasang:
$ sudo apt install wireguardDina telepon Android Kuring geus masang aplikasi éta ti katalog Google App Store resmi.
Pamasangan konci
Pikeun ngaoténtikasi node Wireguard Ngagunakeun skéma konci pribadi/publik anu saderhana pikeun ngaoténtikasi node VPN. Anjeun tiasa sacara gampil ngahasilkeun konci VPN nganggo paréntah ieu:
$ wg genkey | tee wg-laptop-private.key | wg pubkey > wg-laptop-public.key
$ wg genkey | tee wg-server-private.key | wg pubkey > wg-server-public.key
$ wg genkey | tee wg-mobile-private.key | wg pubkey > wg-mobile-public.keyIeu masihan urang tilu pasangan konci (genep file). Kami moal ngarujuk kana file dina konfigurasi, tapi nyalin eusina di dieu: unggal konci mangrupikeun hiji garis dina base64.
Nyiptakeun file konfigurasi pikeun server VPN (Raspberry Pi)
Konfigurasi anu cukup basajan, Kuring dijieun file handap /etc/wireguard/wg0.conf:
[Interface]
Address = 10.200.200.1/24
ListenPort = 51820
PrivateKey = <copy private key from wg-server-private.key>
PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -t nat -A POSTROUTING -o wwan0 -j MASQUERADE
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -t nat -D POSTROUTING -o wwan0 -j MASQUERADE
[Peer]
# laptop
PublicKey = <copy public key from wg-laptop-public.key>
AllowedIPs = 10.200.200.2/32
[Peer]
# mobile phone
PublicKey = <copy public key from wg-mobile-public.key>
AllowedIPs = 10.200.200.3/32Sababaraha catetan:
- Di tempat anu pas anjeun kedah nyelapkeun garis tina file nganggo konci
- VPN abdi nganggo pita internal
10.200.200.0/24 - Pikeun tim
PostUp/PostDownAbdi gaduh antarmuka jaringan éksternal wwan0, anjeun tiasa gaduh anu béda (contona, eth0)
Jaringan VPN gampang diangkat ku paréntah di handap ieu:
$ sudo wg-quick up wg0 Hiji jéntré leutik: salaku server DNS I dipaké dnsmasq dihijikeun ka panganteur jaringan br0, Kuring ogé ditambahkeun alat wg0 kana daptar alat anu diidinan. Dina dnsmasq ieu dilakukeun ku nambahkeun garis panganteur jaringan anyar kana file konfigurasi /etc/dnsmasq.confContona:
interface=br0
interface=wg0Salaku tambahan, kuring nambihan aturan iptable pikeun ngijinkeun lalu lintas kana port déngékeun UDP (51280):
$ sudo iptables -I INPUT -p udp --dport 51820 -j ACCEPTAyeuna sadayana berpungsi, urang tiasa nyetél peluncuran otomatis torowongan VPN:
$ sudo systemctl enable wg-quick@wg0.serviceKonfigurasi klien dina laptop
Jieun file konfigurasi dina laptop /etc/wireguard/wg0.conf kalayan setélan anu sami:
[Interface]
Address = 10.200.200.2/24
PrivateKey = <copy private key from wg-laptop-private.key>
[Peer]
PublicKey = <copy public key from wg-server-public.key>
AllowedIPs = 10.200.200.0/24
Endpoint = edgewalker:51820Katerangan:
- Gantina edgewalker anjeun kedah netepkeun IP umum atanapi host server VPN
- Sanggeus dipasang
AllowedIPsdina10.200.200.0/24, urang ngan ngagunakeun VPN pikeun ngakses jaringan internal. Lalu lintas ka sadaya alamat / server IP anu sanés bakal terus ngalangkungan saluran terbuka "normal". Éta ogé bakal nganggo server DNS anu tos dikonpigurasi dina laptop.
Pikeun nguji sareng peluncuran otomatis kami nganggo paréntah anu sami wg-quick и systemd:
$ sudo wg-quick up wg0
$ sudo systemctl enable wg-quick@wg0.serviceNyetél klien pikeun Android-telepon
Pikeun telepon Android Urang nyieun file konfigurasi anu sarupa pisan (urang sebut waé mobile.conf):
[Interface]
Address = 10.200.200.3/24
PrivateKey = <copy private key from wg-mobile-private.key>
DNS = 10.200.200.1
[Peer]
PublicKey = <copy public key from wg-server-public.key>
AllowedIPs = 0.0.0.0/0
Endpoint = edgewalker:51820 Beda sareng konfigurasi dina laptop, telepon kedah nganggo server VPN kami salaku pangladén DNS (line DNS), sareng ogé ngalangkungan sadaya lalu lintas ngalangkungan torowongan VPN (AllowedIPs = 0.0.0.0/0).
Gantina nyalin file kana alat sélulér anjeun, anjeun tiasa ngarobih kana kode QR:
$ sudo apt install qrencode
$ qrencode -t ansiutf8 < mobile.confKode QR bakal dikaluarkeun ka konsol salaku ASCII. Éta tiasa di-scan tina aplikasi. Android VPN sareng ngonpigurasikeun torowongan VPN sacara otomatis.
kacindekan
carana ngatur WireGuard ngan saukur magis dibandingkeun sareng OpenVPN.
sumber: www.habr.com
