Pereiti prie turinio

Kaip prijungti Linux maršrutizatorių prie VPSnet privataus tinklo per WireGuard

Skirta: Linux Ubuntu 24.04Žingsnių: 5

Norėdami prijungti Linux maršrutizatorių prie VPSnet privataus tinklo per WireGuard, VPSnet valdymo skydelyje pridėkite padalinį ir atsisiųskite jo .conf failą, tada Linux sistemoje įdiekite WireGuard įrankius, įdėkite failą į /etc/wireguard, įjunkite IP persiuntimą (IP forwarding) ir paleiskite tunelį su wg-quick – maršrutus jis sukuria pats. Išbandyta su Ubuntu 24.04.5 LTS ir pastoviu viešuoju IPv4 adresu, kai ryšį užmezga maršrutizatorius.

Prieš pradedant

  • VPSnet valdymo skydelyje atidarykite savo VPN, pasirinkite Prijungti padalinį (maršrutizatorių), pažymėkite Linux ir spauskite Toliau. Įveskite padalinio tinklus. Lauką Maršrutizatoriaus viešas adresas tuneliui (nebūtina) palikite tuščią, jei maršrutizatorius yra už NAT arba jo adresas keičiasi: tada ryšį užmezga maršrutizatorius – taip šis gidas ir išbandytas.
  • Iškart atsisiųskite .conf failą: jame yra maršrutizatoriaus privatus raktas, o failas rodomas tik vieną kartą.
  • Padalinio eilutėje mygtukas Maršrutizatoriaus nustatymas parodo toliau esančias komandas su tikruoju jūsų failo pavadinimu; jas nukopijuosite mygtuku Kopijuoti visas komandas; šis blokas nieko nepaleidžia, jei failas jau yra /etc/wireguard.

Paveikslėliuose rodomos pavyzdinės reikšmės (dokumentacijai skirti adresai). Įveskite reikšmes iš savo instrukcijos skydelyje.

Šio gido paveikslėliuose – bandymo metu gauta terminalo išvestis, kurioje adresai, pavadinimai ir raktai pakeisti pavyzdinėmis reikšmėmis.

1. Įdiekite WireGuard įrankius

Linux Ubuntu 24.04: Terminal – Įdiekite WireGuard įrankius

Terminal

Ubuntu ir Debian sistemose paketas vadinasi wireguard-tools; pats WireGuard yra branduolyje.

sudo apt install wireguard-tools
wg --version

2. Įdėkite konfigūracijos failą

Linux Ubuntu 24.04: /etc/wireguard/ – Įdėkite konfigūracijos failą

/etc/wireguard/

Atsisiųstą failą nukopijuokite į /etc/wireguard/ nekeisdami pavadinimo ir palikite skaitymo teisę tik root naudotojui: jame yra maršrutizatoriaus privatus raktas. Sąsaja vadinsis taip pat kaip failas (čia – vilnius-branch). Jei toks failas jau yra, komanda nieko nekopijuoja ir tai praneša – tada pirmiausia pervadinkite atsisiųstą failą, kad neperrašytumėte kito tunelio konfigūracijos.

sudo sh -c 'umask 077; set -C; cat > /etc/wireguard/vilnius-branch.conf' < vilnius-branch.conf

3. Įjunkite IP persiuntimą

Linux Ubuntu 24.04: /etc/sysctl.d/99-vpsnet-forward.conf – Įjunkite IP persiuntimą

/etc/sysctl.d/99-vpsnet-forward.conf

Maršrutizatorius perduoda srautą tarp biuro tinklo ir tunelio; nustatymas išlieka ir perkrovus.

echo 'net.ipv4.ip_forward = 1' | sudo tee /etc/sysctl.d/99-vpsnet-forward.conf
sudo sysctl --system

4. Paleiskite tunelį

Linux Ubuntu 24.04: wg-quick@vilnius-branch – Paleiskite tunelį

wg-quick@vilnius-branch

wg-quick įjungia sąsają, sukuria maršrutą kiekvienam AllowedIPs adresui ir pasileidžia po kiekvieno perkrovimo.

sudo systemctl enable --now wg-quick@vilnius-branch

5. Patikrinkite ryšį

Linux Ubuntu 24.04: wg show – Patikrinkite ryšį

wg show

Paskutinis handshake turi būti prieš kelias sekundes, o maršrutai į VPSnet tinklus – eiti per sąsają vilnius-branch. Tada iš biuro kompiuterio paleiskite ping į VPSnet serverio privatų adresą.

sudo wg show vilnius-branch
ip route | grep vilnius-branch

Patikra ir galimos problemos

  • Skydelyje atidarykite padalinį ir spauskite Tikrinti tunelį: patikrinama, ar maršrutizatorius atsako, ar sutampa raktai ir ar eina srautas.
  • Handshake nėra: patikrinkite failo eilutes Endpoint ir PublicKey bei ar leidžiamas išeinantis UDP srautas į VPN adresą ir portą. journalctl -u wg-quick@vilnius-branch parodo paleidimo klaidas.
  • Handshake yra, bet biuro kompiuteriai negauna atsakymo: patikrinkite IP persiuntimą (sysctl net.ipv4.ip_forward) ir ar jūsų ugniasienė (nftables, ufw) praleidžia srautą tarp biuro ir tunelio sąsajų, be NAT.

DUK

Kurioms Linux sistemoms skirtas šis gidas?

Gidas parengtas ir išbandytas su Ubuntu 24.04.5 LTS (branduolys 6.8, wireguard-tools 1.0.20210914), kai viešasis IPv4 adresas pastovus. Kitose distribucijose skiriasi diegimo komanda; failas ir wg-quick komandos tos pačios.

Kur gauti privatų raktą?

Tik .conf faile, kurį skydelis sukuria padaliniui. Failas rodomas vieną kartą.

Mano maršrutizatorius yra už NAT. Ar veiks?

Taip. Ryšį užmezga maršrutizatorius, o keepalive jį palaiko.

Ar keli padaliniai gali pasiekti vienas kitą?

Taip, kai VPN nustatymuose įjungta „Padaliniai gali pasiekti vienas kitą“. Tada kitų padalinių tinklai pridedami prie AllowedIPs: dar kartą atverkite „Maršrutizatoriaus nustatymas“ ir pridėkite juos maršrutizatoriuje.

Ar tuneliui reikia NAT?

Ne. VPSnet serveriai mato biuro kompiuterių adresus.