Il-peer li żidt b'wg set iwieġeb għall-ping il-ħin kollu u jisparixxi wara r-restart. Xejn ma sar ħsara: il-kernel qatt ma ħażen dan il-peer imkien ħlief fl-interface ħajja, u kull ma jerġa' joħloq l-interface waqt il-boot benaha minn fajl li ma messejtx. It-tiswija mhijiex wg set ieħor. Hija li ssir taf liema komponent jippossjedi l-interface, li tedita l-istat ta' dak il-komponent, u mbagħad li tipprova li l-peer jgħix mill-istess avveniment taċ-ċiklu tal-ħajja li neħħaħ.

Irriproduċih darba, apposta

Tiswiex problema ta' restart qabel ma tista' taraha sseħħ. B'aċċess għall-console jew barra mill-banda disponibbli, innota l-lista tal-peers, erġa' ibda permezz tas-servizz li jippossjedi l-interface, u qabbel. Jekk il-peer għadu hemm, il-bidla tiegħek diġà waslet għall-istat persistenti u int qed tiddibbagja l-avveniment ħażin.

Ikteb tliet fatti waqt li tagħmel dan: l-isem tal-interface, l-unit jew il-profil li beda l-interface, u jekk il-counter tal-handshake fuq il-peer li baqa' ġiex irrisettjat. Counter irrisettjat ifisser li l-interface ġiet meqruda u mibnija mill-ġdid; counter mhux mibdul ma' peer nieqes ifisser li xi ħaġa editjat il-konfigurazzjoni taħt saqajk.

Min jippossjedi l-interface?

WireGuard innifsu m'għandux daemon u m'għandux fajl ta' konfigurazzjoni. Xi ħaġa fuqu issejjaħ lil wg waqt il-boot, u dik ix-xi ħaġa hija s-sors tal-verità. Il-kandidati tas-soltu huma [email protected], profil ta' konnessjoni ta' NetworkManager, unit tan-netwerk speċifiku għad-distribuzzjoni, jew pannell ta' ġestjoni li jikteb id-database tiegħu stess.

Staqsi lis-sistema, mhux lid-dokumentazzjoni tad-distribuzzjoni tiegħek. systemctl status wg-quick@wg0 u nmcli connection show normalment issolvuha b'ordni wieħed kull wieħed. Jekk it-tnejn jippretendu l-interface, sibt il-bug qabel ma editjajt xejn: żewġ sidien jerġgħu jiktbu l-istess apparat f'kull bidu, u jirbaħ l-aħħar li jaħdem.

systemctl status wg-quick@wg0 --no-pager
grep -R "Address\|SaveConfig\|PostUp" /etc/wireguard/wg0.conf
nmcli -g NAME,TYPE connection show
wg show wg0 peers

L-istat tal-ħidma u l-istat tal-bidu mhumiex l-istess fajl

wg set jimmaniġġja l-apparat ħaj permezz ta' netlink. Ma jiktibx /etc/wireguard/wg0.conf, profil ta' NetworkManager jew id-database ta' pannell. wg show b'suċċess wara jipprova li l-kernel aċċetta l-peer, mhux li xi ħaġa se tirrestawrah.

Hemm it-tieni nassa fid-direzzjoni opposta. L-għażla SaveConfig ta' wg-quick tikteb l-istat attwali tal-interface lura fil-fajl tal-konfigurazzjoni meta l-interface tinżel. Meta tkun attiva, edit li jsir fil-fajl waqt li l-interface tkun 'il fuq jista' jiġi miksub mit-tifi li jiġi wara, u se taħlef li dik il-linja kienet hemm. Jekk il-peer jerġa' lura drabi bla għadd, aqra l-fajl wara waqfa, mhux qabel.

NetworkManager iġib ruħu mod ieħor: huwa jippossjedi l-profil u japplikah mal-attivazzjoni, għalhekk .conf editjat bl-idejn ħdejn konnessjoni attiva ta' NetworkManager huwa biss dekorazzjoni. Agħżel sid wieħed għall-interface u ħalli lill-ieħor ma jmesshiex.

Ħu ħsieb li l-edit jaslu fiż-żewġ postijiet

L-ewwel editja l-istat persistenti, imbagħad ħalli lis-sid japplikah, u fl-aħħar ivverifika l-istat ħaj. Dan l-ordni jfisser li falliment f'kull pass jindika ħaġa waħda minflok tlieta.

# 1. persistent state (wg-quick owner)
sudo vi /etc/wireguard/wg0.conf

# 2. apply through the owner, not by hand
sudo systemctl restart wg-quick@wg0

# 3. verify runtime matches the file
sudo wg show wg0
sudo wg showconf wg0

wg showconf jipprintja l-konfigurazzjoni ħajja fl-istess sintassi li juża l-fajl, u dan jagħmel it-tnejn direttament komparabbli. Ittratta dak l-output bħala sigriet: fih ċwievet privati, għalhekk tinkollahx fi ticket jew f'kanal ta' chat. Qabbel iċ-ċwievet pubbliċi tal-peers u l-IPs permessi, u ċċekkja li l-peer li neħħejt apposta mhumiex lura.

Ipprova li jgħix mill-avveniment taċ-ċiklu tal-ħajja

Erġa' ibda permezz tas-sid it-tieni darba, imbagħad ikkonferma tliet affarijiet separati: il-peer jidher f'wg show, il-counter tal-handshake jiżdied wara traffiku, u l-applikazzjoni li tiddependi mill-tunnel fil-fatt twieġeb. Peer elenkat b'handshake antik huwa problema ta' routing jew ta' ċavetta, mhux problema ta' persistenza, u din id-distinzjoni tiffranka edit tal-konfigurazzjoni bla skop.

Fl-aħħar, iċċekkja x'imlesta r-restart. Restart li jqajjem peer li neħħejt apposta huwa l-istess bug bis-sinjal oppost, u s-soltu jfisser li kopja antika tal-konfigurazzjoni għadha tiġi mgħobbija minn xi mkien. Innota s-sid, il-mogħdija tal-fajl, iċ-ċavetta pubblika tal-peer u l-ordnijiet tal-verifika ħdejn il-konfigurazzjoni, sabiex il-persuna li jmiss ma terġax tiskopri dan billi tirrestartja host tal-produzzjoni.

Artikli relatati