Pindutin ang kumonekta at tatlong bagay ang nagbabago sa isang Linux machine: may lumilitaw na interface, nai-install ang mga ruta, at nagsisimulang sumagot nang iba ang resolver. Karamihan ng mga pagkabigo sa setup ay nagmumula sa isa sa tatlong iyon na nangyayari nang wala ang iba, o sa dalawang programa na hindi nagkakasundo kung sino ang may-ari sa kanila. Ang pag-unawa sa pagkakasunod-sunod ay nagpapaliwanag ng pagkabigo nang mas mabilis kaysa sa pagbasa ng log output ng isang kliyente.

May interface na lumilitaw bago pa gumana ang anuman

Binubuksan ng isang tunnel client ang isang virtual interface at ibinibigay dito ang mga packet. Ang TUN device ay nagdadala ng mga packet ng IP, na siyang kailangan ng isang routed VPN; ang TAP device ay nagdadala ng mga frame ng Ethernet, na siyang kailangan ng isang bridged na disenyo. Ang kernel module ang nagbibigay ng device, at pagmamay-ari ito ng kliyente hangga't tumatagal ang session.

Ang pag-angat ng interface ay hindi pareho ng gumaganang tunnel. Maaari itong umiral na may address habang hindi maabot ang peer, at iyon ang dahilan kung bakit ang listahan ng interface ang unang pagsusuri at hindi ang huli. Ang isang device na nag-uulat na ito ay nasa itaas ay naglalarawan ng pananaw ng kernel sa isang virtual na link, hindi ang kahandaang sumagot ng peer.

Iwanan ang ibinigay na mode ng interface. Ang pagpapalit ng isang TUN profile sa TAP ay hindi ginagawang bridged ang isang routed server, at karaniwan itong gumagawa ng koneksyon na naitatag at walang ipinapasa.

Ang mga ruta ay ini-install ng may-ari ng tunnel

Ang mga ruta ang ikalawang pagbabago, at ang pagmamay-ari nila ay mas mahalaga kaysa sa nilalaman. Ang isang NetworkManager profile, isang systemd unit at isang kliyenteng pinatakbo sa kamay ay lahat makakapag-install ng mga ruta, at kapag dalawa sa kanila ang gumawa nito nang sabay, may nabubuong table na walang makapagpapaliwanag mamaya.

ip -br addr show
ip route show
ip -6 route show

Ang isang full-tunnel profile ay pumapalit sa default na ruta; ang isang split-tunnel profile ay nagdaragdag ng mas tiyak na mga ruta at iniiwan ang default. Pareho silang normal, at ang pangalawa ang dahilan kung bakit ang pagtanggal ng default na ruta ay isang masamang unang pagsubok sa isang machine na pinamamahalaan mo nang malayuan. Ang pag-alis nito ay ang pinakamabilis ding paraan upang mawala ang session na ginagamit mo upang ayusin ang problema.

Basahin ang table sa halip na magpalagay. Ang isang mas tiyak na ruta o patakaran ay maaaring magpadala ng trapiko sa tunnel habang ang default na ruta ay nakaturo pa rin sa pisikal na interface, na tila magkasalungat hanggang mabasa mo ang buong table. Ang kumbinasyong iyon ay normal para sa split tunnel at nakakalito para sa sinumang umaasa na isang linya ang maglalarawan ng disenyo. Hanapin ang rutang tumutugma sa iyong tunay na destinasyon, hindi ang tumutugma sa diagram.

Nagpapalit ng kamay ang resolver

Ang DNS ang ikatlong pagbabago at ang pinakamalamang na pinamamahalaan sa isang lugar na hindi mo tiningnan. Sa isang desktop, maaaring itulak ng NetworkManager ang mga setting ng resolver para sa bawat koneksyon. Sa isang sistemang gumagamit ng systemd-resolved, inilalapat ang mga setting sa bawat link at ang /etc/resolv.conf ay maaaring isang stub o simbolikong link sa halip na isang file na dapat mong i-edit.

resolvectl status
readlink -f /etc/resolv.conf
cat /etc/resolv.conf

Kung ang isang manu-manong pag-edit sa file ng resolver ay mawala pagkatapos ng muling pagkonekta, iyon ang hudyat na hanapin ang component na nagpapanatili nito at palitan ang profile sa halip. Ang pag-edit sa nabuong file ay isang pagbabagong buburahin ng muling pagkonekta.

Ang mga pribadong pangalan ay karaniwang nangangailangan ng panloob na resolver at ng mga domain ng paghahanap na ibinigay ng operator. Ang pagpapalit ng pampublikong resolver ay maaaring makasira sa mismong resource kung saan umiiral ang VPN, at ang sintomas ay mukhang pagkabigo sa routing at hindi sa DNS. Subukan ang pangalan at address nang hiwalay, dahil ang isang gumagana at ang isa ay nabigo ay nagsasabi sa iyo nang eksakto kung saan titingin. Ang isang paghahambing na iyon ay nakakatipid ng isang oras ng pag-debug ng ruta.

Isang manager bawat koneksyon

Ang format ng profile ang nagpapasya kung aling programa ang makakagamit nito. Ang isang OpenVPN profile ay nangangailangan ng OpenVPN o isang compatible na plugin, at ang isang WireGuard configuration ay may sariling format na may mga key ng peer at pinapayagang prefix. Hindi isinasalin ng isang import dialog ang isa sa isa pa, anuman ang iminumungkahi ng extension ng file.

Pumili ng isang manager at hayaang siya ang may-ari ng koneksyon. Ang pag-angat ng parehong tunnel sa pamamagitan ng dalawang tool ay ginagawang malabo ang table ng ruta at ang pag-uugali sa muling pagkonekta, at karaniwang nananalo ang pangalawang nagsimula sa mga paraang mahirap ulitin.

I-install ang mga package na sinusuportahan ng iyong distribusyon at kunin ang profile mula sa operator. Ituring itong isang kredensyal, dahil karaniwan itong naglalaman ng pribadong key o katumbas na materyal, at itago ito kung saan nakatira ang iba mong lihim. Ang profile na naiwan sa isang download folder ay isang key na naiwan sa isang mesa.

Ano ang susuriin kapag nakaangat ito ngunit hindi gumagana

Kapag nakaangat ang interface at nag-uulat ng tagumpay ang kliyente, magtrabaho pakanluran: pinipili ba ng table ng ruta ang tunnel para sa destinasyon, sumasagot ba ang resolver para sa pribadong pangalan, at mayroon bang daan pabalik ang kabilang panig. Ang bawat isa ay may hiwalay na command at hiwalay na may-ari.

nmcli connection show --active
nmcli device status
wg show

Ang sanggunian ng nmcli ay nagdodokumento ng mga command ng status at koneksyon kung kailangan mo ang buong set. Ang mahalaga dito ay ang pagkakaiba ng isang aktibong profile at ng isang device na nagdadala ng trapiko, dahil maaaring magkaiba ang dalawa.

Kumonekta muli nang isang beses sa parehong manager bago mo sabihing tapos na ang setup, at tiyakin na gumagana pa rin ang DNS pagkatapos ng pagdiskonekta. Ang isang configuration na gumagana lamang hanggang sa unang pagbabago ng network ay hindi pa tapos, gumagana lang ito sa sandaling ito.

Kaugnay na mga artikulo