Il-peer ta' WireGuard jisparixxi wara r-restart: sib il-konfigurazzjoni vera
Peer miżjud b'wg set jaħdem sal-restart li jmiss, għax l-interface terġa' tinbena minn fajl jew profil li qatt ma editjajt. Sib l-sid ewwel.
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 peersL-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 wg0wg 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.