Kaip paleisti WireGuard tunelį kaip systemd paslaugą
wg-quick@ šablonas pakelia pavadintą profilį ir įdiegia maršrutus, DNS bei kabliukus. Patikrinkite unit, palikite vieną valdytoją atsakingą ir išbandykite išmontavimą.
Turite WireGuard profilį /etc/wireguard/wg0.conf ir norite, kad jis būtų paleistas nerašant wg-quick up ranka po kiekvieno perkrovimo. Paketo systemd šablonas daro būtent tai: [email protected] paleidžia wg-quick profiliui, pavadintam wg0. Jis taip pat įdiegia adresus, maršrutus, DNS ir bet kokius profilio deklaruojamus kabliukus, o tai yra daugiau nei tiesiog rakto įkėlimas į branduolį. Patikrinkite, ar šablonas tikrai yra jūsų sistemoje, prieš manydami, kad jis yra.
Likusi šios instrukcijos dalis eina ta tvarka, kuria iš tikrųjų dirbtumėte.
Raskite unit ir profilį, kurį jis skaito
Išvardykite unit failus su systemctl list-unit-files 'wg-quick*'. Distribucijose, kurios tai supakuoja, pamatysite [email protected], o egzemplioriaus pavadinimas imamas iš profilio. Egzempliorius išsprendžiamas į /etc/wireguard/<name>.conf, todėl wg-quick@wg0 skaito tik wg0.conf ir nieko daugiau. Jei sąrašas tuščias, įrankių paketas neįdiegtas ir joks įgalinimas nepadės.
Laikykite profilį 600 režimu ir root nuosavybėje. Jame yra privatus raktas, o unit mielai veiks su prastesnėmis teisėmis, jei leisite.
Pakelkite jį ir skaitykite žurnalą
Paleiskite egzempliorių su systemctl start wg-quick@wg0, tada patikrinkite systemctl status wg-quick@wg0 ir journalctl -u wg-quick@wg0 -b. Unit, kuris paleidžiamas ir iškart išeina, paprastai turi profilio klaidą, o žurnalas nurodo eilutę. Patvirtinkite su wg show, kad sąsaja egzistuoja ir kad paskutinis rankos paspaudimas yra naujas. wg-quick vadove išvardyta, ką scenarijus daro už pačios sąsajos ribų.
Sukonfigūruota sąsaja be rankos paspaudimo yra kelio arba rakto problema, o ne paslaugos problema.
Palikite vieną valdytoją atsakingą
Jei NetworkManager ar kitas klientas jau valdo tunelį, paleidus systemd unit sukuriamas antras savininkas tai pačiai sąsajai, maršrutams ir DNS. Simptomai klaidina: tunelis pakyla, tada maršrutai dingsta, arba DNS po kelių sekundžių grįžta atgal. Pasirinkite vieną valdytoją ir išjunkite kitą tam profiliui. Žurnalas paprastai rodo perėmimą kaip maršrutų arba sprendiklio pakeitimus iškart po to, kai unit praneša apie sėkmę.
Du valdytojai nesidalija nuosavybės. Jie perrašo vienas kitą.
Išbandykite sustabdymą, perkrovimą ir įkrovimą
Paleiskite systemctl stop wg-quick@wg0 ir patvirtinkite, kad sąsaja dingo, o maršrutai pašalinti. Tada paleiskite jį iš naujo ir patikrinkite, ar maršrutai grįžta, nes išmontavimo klaidos pasireiškia likusiais maršrutais, o ne nepavykusiais paleidimais. Galiausiai įjunkite jį įkrovimo metu su systemctl enable --now wg-quick@wg0 ir kartą perkraukite.
Įkrovimo metu galinio taško pavadinimas turi būti išspręstas prieš unit darbą. Jei DNS dar neveikia, unit nepavyksta ir lieka nepavykęs, kol nepaleisite jo rankiniu būdu.
Užrašykite savininką
Užrašykite, kurį profilį unit skaito, kuris valdytojas valdo sąsają ir iš kur atsirado failas. Kai vėliau kas nors importuos tą patį tunelį į darbalaukio klientą, ta pastaba yra skirtumas tarp migracijos ir dviejų diegimų, kurie kovoja dėl vieno adreso. Užrašykite ir sąsajos pavadinimą, nes du profiliai panašiais pavadinimais yra įprastas painiavos šaltinis.
Tunelis su dviem savininkais veikia iki pirmo perkrovimo, o paskui tampa mįsle. Štai kodėl pastaba priklauso saugyklai, o ne pokalbio gijai.