A’ stèidheachadh VPN sìmplidh le WireGuard agus Raspberry Pi mar fhrithealaiche

Bhon àm sin WireGuard a bhith mar phàirt de cridhe san àm ri teachd Linux 5.6, cho-dhÚin mi faicinn dè an dòigh as fheàrr air an VPN seo a thoirt a-steach leis an fhear agamsa Router LTE / Puing Ruigsinneachd air Raspberry Pi.

Uidheam

  • Raspberry Pi 3 le modal LTE agus IP poblach. Bidh frithealaiche VPN ann (air an ainmeachadh an-seo mar coisiche)
  • Fòn air Android, a dh'fheumas VPN a chleachdadh airson a h-uile conaltradh
  • Laptop Linux, nach bu chòir VPN a chleachdadh ach taobh a-staigh an lĂŹonra

Feumaidh a h-uile inneal a tha a’ ceangal ri VPN a bhith comasach air ceangal ris a h-uile inneal eile. Mar eisimpleir, bu chòir gum biodh e comasach dha fòn ceangal ri frithealaiche lìn air laptop ma tha an dà inneal mar phàirt de lìonra VPN. Ma tha an suidheachadh sìmplidh gu leòr, faodaidh tu smaoineachadh air ceangal ri VPN agus deasg (tro Ethernet).

Leis gu bheil ceanglaichean uèirleas is uèirleas a’ fàs nas tèarainte thar ùine (ionnsaighean cuimsichte, KRACK WPA2 Hacking ionnsaigh и Dragonblood ionnsaigh an aghaidh WPA3), tha mi gu mòr a’ beachdachadh air a chleachdadh WireGuard airson mo h-innealan uile, ge bith dè an àrainneachd anns a bheil iad ag obair.

StĂ ladh bathar-bog

WireGuard a ’solarachadh pacaidean ro-ullaichte airson a’ mhòr-chuid de sgaoilidhean Linux, Windows и macOSIarrtasan airson Android agus iOS air an lìbhrigeadh tro stòran aplacaidean.

Tha an dreach as Úire de Fedora agam Linux 31, agus mus do stàlaich mi e bha mi ro leisg airson an leabhar-làimhe a leughadh. Lorg mi na pacaidean an-dràsta. wireguard-tools, chuir iad a-steach iad, agus an uairsin cha b 'urrainn dhomh a-mach carson nach robh dad ag obair. Nochd tuilleadh sgrÚdaidh nach robh am pasgan agam air a chuir a-steach wireguard-dkms (le dràibhear lÏonra), agus cha robh e ann an stòr mo chuairteachadh.

Nam biodh mi air an stiĂšireadh a leughadh, bhithinn air na ceumannan ceart a ghabhail:

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

Tha an cuairteachadh Buster Raspbian agam air a chuir a-steach air mo Raspberry Pi, tha pasgan ann mu thrĂ th wireguard, stĂ laich e:

$ sudo apt install wireguard

Air a ’fòn Android Stàlaich mi an aplacaid WireGuard VPN bho chatalog oifigeil Google App Store.

StĂ ladh iuchraichean

Gus nòdan a dhearbhadh Wireguard A’ cleachdadh sgeama iuchrach prìobhaideach/poblach sìmplidh gus nodan VPN a dhearbhadh. ’S urrainn dhut iuchraichean VPN a chruthachadh gu furasta leis an àithne a leanas:

$ 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

Bheir seo dhuinn trÏ prÏomh chàraidean (sia faidhlichean). Cha toir sinn iomradh air faidhlichean ann an configs, ach dèan lethbhreac den t-susbaint an seo: tha gach iuchair mar aon loidhne ann am base64.

A’ cruthachadh faidhle rèiteachaidh airson frithealaiche VPN (Raspberry Pi)

Tha an rèiteachadh gu math sÏmplidh, chruthaich mi am faidhle a leanas /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

Nota no dhĂ :

  • Anns na h-Ă iteachan iomchaidh feumaidh tu na loidhnichean a chuir a-steach bho na faidhlichean leis na h-iuchraichean
  • Tha an VPN agam a’ cleachdadh raon a-staigh 10.200.200.0/24
  • Airson sgiobaidhean PostUp/PostDown Tha eadar-aghaidh lĂŹonra taobh a-muigh agam wwan0, is dòcha gu bheil fear eile agad (mar eisimpleir, eth0)

Tha an lĂŹonra VPN air a thogail gu furasta leis an Ă ithne a leanas:

$ sudo wg-quick up wg0

Aon mhion-fhiosrachadh beag: mar fhrithealaiche DNS, chleachd mi dnsmasq ceangailte ri eadar-aghaidh lìonra br0, chuir mi innealan ris cuideachd wg0 gu liosta nan innealan ceadaichte. Ann an dnsmasq, thèid seo a dhèanamh le bhith a’ cur loidhne ùr leis an eadar-aghaidh lìonra ris an fhaidhle rèiteachaidh /etc/dnsmasq.confmar eisimpleir:

interface=br0
interface=wg0

Cuideachd, chuir mi riaghailt iptable ris gus trafaic a cheadachadh don phort èisteachd UDP (51280):

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

A-nis gu bheil a h-uile càil ag obair, is urrainn dhuinn foillseachadh fèin-ghluasadach an tunail VPN a chlàradh:

$ sudo systemctl enable wg-quick@wg0.service

Suidheachadh neach-dèiligidh laptop

Air an laptop, cruthaich faidhle rèiteachaidh /etc/wireguard/wg0.conf leis na h-aon shuidheachaidhean:

[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

Notaichean:

  • An Ă ite edgewalker, feumaidh tu IP poblach no aoigheachd frithealaiche VPN a shònrachadh
  • Le bhith a ’suidheachadh AllowedIPs air 10.200.200.0/24, cha bhith sinn a’ cleachdadh ach an VPN gus faighinn chun lĂŹonra a-staigh. Leanaidh trafaic gu gach seòladh IP / frithealaiche eile a’ dol tro shianalan fosgailte “cunbhalach”. Thèid am frithealaiche DNS ro-shuidhichte air an laptop a chleachdadh cuideachd.

Airson deuchainn agus cur air bhog fèin-ghluasadach, bidh sinn a’ cleachdadh na h-aon òrdughan wg-quick и systemd:

$ sudo wg-quick up wg0
$ sudo systemctl enable wg-quick@wg0.service

A’ stèidheachadh an neach-dèiligidh airson Android-fòn

Airson fòn Android Bidh sinn a’ cruthachadh faidhle rèiteachaidh glè choltach (canaidh sinn ris 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

Eu-coltach ri rèiteachadh an laptop, bu chòir don fhòn ar frithealaiche VPN a chleachdadh mar an t-seirbheisiche DNS aige (sreang DNS), a bharrachd air a dhol seachad air a h-uile trafaic tron ​​​​tunail VPN (AllowedIPs = 0.0.0.0/0).

An àite am faidhle a chopaigeadh chun inneal gluasadach agad, faodaidh tu a thionndadh gu còd QR:

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

Thèid an còd QR a chur a-mach chun chonsail mar ASCII. Faodar a sganadh bhon aplacaid. Android VPN agus rèitich an tunail VPN gu fèin-ghluasadach.

co-dhĂšnadh

adjustment WireGuard dĂŹreach draoidheil an coimeas ri OpenVPN.

Source: www.habr.com

Ceannaich aoigheachd earbsach airson làraich le dìon DDoS, frithealaichean VPS VDS 🔥 Ceannaich aoigheachd làrach-lìn earbsach le dìon DDoS, frithealaichean VPS VDS | ProHoster