Vsak namizni računalnik vodi svoj zapis o tem, kaj je VPN počel, izvoz aplikacije pa je običajno najmanj popoln med njimi. Upravitelji storitev beležijo, kdaj se je enota zagnala, jedro beleži, kdaj se je pojavil vmesnik, omrežni sklad pa beleži, kdaj poti ni bilo mogoče uporabiti. Noben od teh mehanizmov ne ve, kaj je odjemalec nameraval, in odjemalec ne ve, kaj je jedro storilo z njegovo zahtevo.

Branje enega takega zapisa izolirano vodi v napačen sklep. Preberite dva, iz iste minute, in zaporedje postane vidno.

Trije mehanizmi s tremi slovarji

V Linuxu dnevnik systemd zajame sporočila življenjskega cikla enote iz wg-quick@wg0 ali vtičnika VPN NetworkManagerja, obročni medpomnilnik jedra pa nosi sporočila o vmesnikih in usmerjanju. V Windowsu dnevnik dogodkov razdeli zgodbo med ponudnike sistema, WLAN in oddaljenega dostopa, vsak s svojimi identifikatorji. V macOS združeni dnevnik nosi sporočila, omejena na podsistem, ki jih grafična Console prikaže le delno.

Slovarji se ne prevajajo. Identifikator dogodka z ene platforme na drugi ne pomeni ničesar, posnetek zaslona pogovornega okna Windows pa ne dokaže ničesar o enoti Linux.

Skupno vsem trem je časovni žig, vir in resnost, in prav ta trojica omogoča korelacijo med dnevnikom odjemalca in zapisom operacijskega sistema. Tudi razpoložljivost se razlikuje: vsebnik brez dnevnika, okrnjena slika Windows ali raven beleženja, znižana pri gradnji, lahko skrijejo celotno plast.

FacilityWhat it recordsWhat it cannot show
systemd journalUnit start and stop, helper output, exit statusWhether packets actually reached the peer
Kernel and netlinkInterface creation, address assignment, route changesWhy the client asked for that configuration
Windows event logProvider-specific connection and adapter eventsAnything the provider chose not to log

Kaj povezana vrstica dokazuje in česa ne

Dogodek zagona storitve zabeleži, da je bila lokalna enota pozvana k zagonu in da se ni takoj končala. Ne zabeleži dokončanega rokovanja, veljavnega ključa partnerja ali delujoče poti. Da bi to vrstico imeli za dokaz tunela, je najpogostejše napačno branje teh dnevnikov. Vrstica dokazuje namero in stanje procesa, o dosegljivosti pa prav ničesar.

Stanje posredovanja je ločeno opazovanje in prihaja iz usmerjevalne tabele, ne iz kakšnega dnevnika.

Dogodek adapterja lahko pojasni tih neuspeh: vmesnik se je dvignil, naslov je bil dodeljen, poti pa niso bile nikoli nameščene, ker jih je pravilo politike zavrnilo. V tem zaporedju je vsaka vidna vrstica videti zdrava, medtem ko se nič ne usmerja, in edini način, da to vidite, je primerjava časovnih žigov dnevnika z usmerjevalno tabelo v istem trenutku. Imate lastno zaporedje dogodkov odjemalca ob obeh, ker je odjemalec edini vir, ki ve, kaj je zahteval. Dve dejstvi, ki ju potrebujete skupaj, se skoraj nikoli ne pojavita v isti vrstici.

Poznejše ponovno povezovanje prepiše zanimivi del te slike, zato zajemite okno ob prvi napaki in ne šele po treh poskusih.

Povežite ozko okno

Zabeležite čas poskusa z njegovim časovnim pasom in nato izvlecite nekaj minut okoli njega. Prva napaka v oknu skoraj vedno nastopi pred vrstico prekinitve, ki jo navajajo zahtevki za podporo.

journalctl -u wg-quick@wg0 --since "today 09:00" --until "today 09:20"
ip route show table all | grep wg0
log show --last 20m --predicate 'subsystem == "com.apple.network"'

Vsak ukaz odgovarja na drug del vprašanja: prvi da življenjski cikel, drugi stanje posredovanja, tretji omrežni podsistem macOS. V Windowsu filtrirajte sistemski dnevnik po imenu ponudnika, namesto da bi drseli skozi cel kanal, in izvozite le ustrezne dogodke.

Izvleček naj bo dovolj majhen, da mu bralec lahko sledi. Okno dvajsetih minut s štirimi pomembnimi dogodki podpira sklep; izvoz za cel dan s tisoči vrstic ne podpira ničesar.

Kje se ti zapisi ustavijo

Lokalni zapisi opisujejo napravo, ne poti. Ne morejo pokazati, kaj je ponudnik shranil, ali je bila seja povezana z računom ali kaj je videla ciljna točka. Izjava ponudnika, da ne vodi dnevnikov, ne pove ničesar o operacijskem sistemu na vašem prenosniku, lokalni dogodek pa ne dokaže ničesar o zgodovinskih zapisih ponudnika.

Nosijo tudi več osebnih podatkov, kot bi pričakovali: uporabniška imena, imena gostiteljev, priklopne poti in identifikatorji naprav se pojavljajo v običajnih sistemskih sporočilih, tudi kadar ni nobene vsebine brskanja. Odstranite jih, preden kar koli priložite zahtevku, izvirnik pa hranite pod običajnim nadzorom dostopa.

Na upravljani napravi zaprosite IT za ustrezen izvleček, namesto da bi poskušali izbrisati organizacijsko beleženje. Diagnostični cilj je eno ozko vprašanje, na katero odgovorita dva vira, ne popolna zgodovina stroja.

Sorodni članki