Mametraka VPN tsotra miaraka amin'ny WireGuard sy Raspberry Pi ho mpizara

Satria WireGuard ho lasa ampahany amin'ny kernel Linux 5.6 ho avy, dia nanapa-kevitra ny hijery ny fomba tsara indrindra hampidirana ity VPN ity amin'ny my LTE router/point point amin'ny Raspberry Pi.

fitaovana

  • Raspberry Pi 3 miaraka amin'ny maody LTE sy adiresy IP ho an'ny daholobe. Hisy mpizara VPN eto (amin'ity lahatsoratra ity dia antsoina hoe edgewalker)
  • Telefaonina Android tsy maintsy mampiasa VPN ho an'ny fifandraisana rehetra
  • Linux laptop izay tokony hampiasa VPN ao anaty tambajotra ihany

Ny fitaovana rehetra mifandray amin'ny VPN dia tsy maintsy afaka mifandray amin'ny fitaovana hafa rehetra. Ohatra, ny telefaona dia tokony ho afaka mifandray amin'ny mpizara tranonkala amin'ny solosaina finday raha toa ka ao anatin'ny tambajotra VPN ireo fitaovana roa ireo. Raha toa ka tsotra ny fanamboarana, dia azonao atao ny mieritreritra ny hampifandray ny birao amin'ny VPN (amin'ny alΓ lan'ny Ethernet).

Noho ny fiheverana fa ny fifandraisana an-tariby sy tsy misy tariby dia mihamalemy hatrany rehefa mandeha ny fotoana (fanafihana lasibatra, KRACK WPA2 fanafihana fanafihana ΠΈ Fanafihana Dragonblood manohitra ny WPA3), mandinika tsara ny fampiasana WireGuard ho an'ny fitaovako rehetra aho, na inona na inona tontolo iainany.

Fametrahana rindrambaiko

Ny WireGuard dia manome fonosana voaomana mialoha ho an'ny ankamaroan'ny fizarana Linux, Windows ary macOS. Ny fampiharana Android sy iOS dia alefa amin'ny alΓ lan'ny lahatahiry fampiharana.

Manana ny Fedora Linux 31 farany aho, ary kamo loatra namaky ny boky alohan'ny hametrahana azy. Vao nahita ny fonosana wireguard-tools, nametraka azy ireo, ary avy eo tsy nahalala ny antony tsy nisy na inona na inona. Ny fanadihadihana fanampiny dia nahatsikaritra fa tsy nametraka ilay fonosana aho wireguard-dkms (miaraka amin'ny mpamily tambajotra), fa tsy tao amin'ny trano fitehirizam-bokiko.

Raha namaky ny torolalana aho dia ho nanao ny dingana marina:

$ sudo dnf copr enable jdoss/wireguard
$ sudo dnf install wireguard-dkms wireguard-tools

Manana ny fizarana Raspbian Buster napetraka ao amin'ny Raspberry Pi-ko aho, efa misy fonosana ao wireguard, mametraka azy:

$ sudo apt install wireguard

Tao amin'ny findaiko Android dia nametraka ny fampiharana aho WireGuardVPN avy amin'ny katalaogin'ny Google App Store ofisialy.

Fametrahana fanalahidy

Ho an'ny fanamarinana ny mpiara-mianatra, Wireguard dia mampiasa tetik'asa fanalahidy manokana/bahoaka tsotra hanamarinana ny mpiara-miasa VPN. Azonao atao ny mamorona mora foana ny fanalahidy VPN amin'ny fampiasana ity baiko manaraka ity:

$ 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.key

Izany dia manome antsika tsiroaroa manan-danja telo (rakitra enina). Tsy hiresaka momba ny rakitra ao amin'ny configs izahay, fa kopia eto ny votoatiny: ny fanalahidy tsirairay dia andalana iray ao amin'ny base64.

Mamorona rakitra fanamafisana ho an'ny mpizara VPN (Raspberry Pi)

Tsotra ny configuration, noforoniko ity rakitra manaraka ity /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/32

Fanamarihana roa:

  • Ao amin'ny toerana mety dia mila mampiditra andalana avy amin'ny rakitra miaraka amin'ny fanalahidy ianao
  • Ny VPN-ko dia mampiasa tarika anatiny 10.200.200.0/24
  • Ho an'ny ekipa PostUp/PostDown Manana ny serasera ivelany aho wwan0, mety manana hafa ianao (ohatra, eth0)

Ny tambajotra VPN dia atsangana mora amin'ny baiko manaraka:

$ sudo wg-quick up wg0

Tsipiriany kely iray: toy ny mpizara DNS nampiasaiko dnsmasq mifamatotra amin'ny interface interface br0, nanampy fitaovana koa aho wg0 mankany amin'ny lisitry ny fitaovana navela. Ao amin'ny dnsmasq dia atao izany amin'ny alΓ lan'ny fampidirana tsipika vaovaon'ny tambajotra amin'ny rakitra fikirakirana /etc/dnsmasq.conf, ohatra:

interface=br0
interface=wg0

Fanampin'izany, nanampy fitsipika iptable aho hamela ny fifamoivoizana mankany amin'ny seranan-tsambo mihaino UDP (51280):

$ sudo iptables -I INPUT -p udp --dport 51820 -j ACCEPT

Ankehitriny rehefa mandeha ny zava-drehetra, dia afaka mametraka ny fandefasana mandeha ho azy ny tonelina VPN izahay:

$ sudo systemctl enable [email protected]

Configuration mpanjifa amin'ny solosaina finday

Mamorona fichier configuration amin'ny solosaina finday /etc/wireguard/wg0.conf miaraka amin'ny toe-javatra mitovy:

[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:51820

fanamarihana:

  • Raha tokony ho edgewalker ianao dia mila mamaritra ny IP public na mpampiantrano mpizara VPN
  • Amin'ny alΓ lan'ny fametrahana AllowedIPs amin'ny 10.200.200.0/24, VPN ihany no ampiasainay hidirana amin'ny tambajotra anatiny. Hitohy amin'ny alalan'ny fantsona misokatra β€œara-dalΓ na” ny fifamoivoizana mankany amin'ny adiresy/server IP hafa rehetra. Izy io koa dia hampiasa ny mpizara DNS efa namboarina mialoha amin'ny solosaina finday.

Ho an'ny fitiliana sy fandefasana mandeha ho azy dia mampiasa baiko mitovy izahay wg-quick ΠΈ systemd:

$ sudo wg-quick up wg0
$ sudo systemctl enable [email protected]

Mametraka mpanjifa amin'ny telefaona Android

Ho an'ny telefaona Android dia mamorona rakitra fanamafisana mitovy amin'izany izahay (aleo antsoina hoe 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

Tsy toy ny fanamafisam-peo amin'ny solosaina finday, ny telefaona dia tsy maintsy mampiasa ny mpizara VPN ho toy ny mpizara DNS (line DNS), ary mandalo ihany koa ny fifamoivoizana rehetra amin'ny alΓ lan'ny tonelina VPN (AllowedIPs = 0.0.0.0/0).

Raha tokony handika ny rakitra amin'ny findainao ianao, dia azonao atao ny manova azy ho kaody QR:

$ sudo apt install qrencode
$ qrencode -t ansiutf8 < mobile.conf

Ny kaody QR dia hivoaka amin'ny console ho ASCII. Azo alaina avy amin'ny fampiharana Android VPN izy io ary hanangana tonelina VPN ho azy.

famaranana

Ny fametrahana WireGuard dia mahagaga fotsiny raha oharina amin'ny OpenVPN.

Source: www.habr.com

Add a comment