Wat plaaslike stelsellogs oor 'n VPN-verbinding verraai
Die bedryfstelsel teken diensbeginsels, adapterveranderinge en roetemislukkings aan wat 'n app nooit neerskryf nie. Lees een nou venster en korreleer dit.
Elke lessenaar hou sy eie rekord van wat 'n VPN gedoen het, en die toepassing se uitvoer is gewoonlik die minste volledige van hulle. Diensbestuurders teken aan wanneer 'n eenheid begin het, die kern teken aan wanneer 'n koppelvlak verskyn het, en die netwerkstapel teken aan wanneer roetes nie toegepas kon word nie. Nie een van daardie fasiliteite weet wat die kliënt bedoel het nie, en die kliënt weet nie wat die kern met sy versoek gedoen het nie.
Om een so 'n rekord in isolasie te lees, lei tot die verkeerde gevolgtrekking. Lees twee, uit dieselfde minuut, en die volgorde word sigbaar.
Drie fasiliteite met drie woordeskatte
Op Linux vang die systemd-joernaal eenheidslewensiklusboodskappe van wg-quick@wg0 of die NetworkManager-VPN-inprop vas, en die kern se ringbuffer dra koppelvlak- en roeteboodskappe. Op Windows verdeel die gebeurtenislog die verhaal oor stelsel-, WLAN- en afstandtoegangverskaffers, elk met sy eie identifiseerders. Op macOS dra die verenigde log subsisteemgebonde boodskappe wat die grafiese Console net gedeeltelik blootlê.
Die woordeskatte vertaal nie. 'n Gebeurtenisidentifiseerder van een platform beteken niks op 'n ander nie, en 'n skermkiekie van 'n Windows-dialoog bewys niks oor 'n Linux-eenheid nie.
Wat al drie deel, is 'n tydstempel, 'n bron en 'n ernsgraad, en daardie drietal is wat korrelasie moontlik maak tussen 'n kliëntlog en 'n bedryfstelselrekord. Beskikbaarheid wissel ook: 'n houer sonder joernaal, 'n afgeskaalde Windows-beeld of 'n logvlak wat tydens die bou verminder is, kan 'n hele laag verberg.
| Facility | What it records | What it cannot show |
|---|---|---|
| systemd journal | Unit start and stop, helper output, exit status | Whether packets actually reached the peer |
| Kernel and netlink | Interface creation, address assignment, route changes | Why the client asked for that configuration |
| Windows event log | Provider-specific connection and adapter events | Anything the provider chose not to log |
Wat 'n gekoppelde lyn bewys en nie bewys nie
'n Diensbegin-gebeurtenis teken aan dat die plaaslike eenheid gevra is om te begin en dat dit nie dadelik beëindig het nie. Dit teken nie 'n voltooide handdruk, 'n geldige eweknie-sleutel of 'n werkende roete aan nie. Om daardie lyn as bewys van 'n tonnel te beskou, is die mees algemene verkeerde lesing van hierdie logs. Die lyn bewys voorneme en prosesstatus, en glad niks oor bereikbaarheid nie.
Die aanstuurtoestand is 'n aparte waarneming, en dit kom uit die roetetabel eerder as uit enige log.
'n Adaptergebeurtenis kan 'n stil mislukking verduidelik: die koppelvlak het opgekom, die adres is toegeken, en die roetes is nooit geïnstalleer nie omdat 'n beleidsreël hulle verwerp het. In daardie volgorde lyk elke sigbare lyn gesond terwyl niks geroteer word nie, en die enigste manier om dit te sien is om die log-tydstempels op dieselfde oomblik met die roetetabel te vergelyk. Hou die kliënt se eie gebeurtenisvolgorde langs albei, want die kliënt is die enigste bron wat weet waarvoor dit gevra het. Die twee feite wat jy saam nodig het, verskyn byna nooit op dieselfde lyn nie.
'n Latere herverbinding oorskryf die interessante deel van hierdie prentjie, dus vang die venster by die eerste mislukking eerder as ná drie herpogings.
Korreleer 'n nou venster
Teken die pogingtyd met sy tydsone aan, en haal dan die paar minute rondom dit. Die eerste fout in die venster is byna altyd ouer as die ontkoppellyn wat ondersteuningskaartjies aanhaal.
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"'
Elke opdrag beantwoord 'n ander deel van die vraag: die eerste gee die lewensiklus, die tweede die aanstuurtoestand, die derde die macOS-netwerksubstelsel. Filtreer op Windows die stelsellog volgens verskaffernaam eerder as om deur die hele kanaal te rol, en voer net die ooreenstemmende gebeurtenisse uit.
Hou die uittreksel klein genoeg dat 'n leser dit kan volg. 'n Venster van twintig minute met vier relevante gebeurtenisse ondersteun 'n gevolgtrekking; 'n uitvoer van 'n hele dag met duisende lyne ondersteun niks.
Waar hierdie rekords ophou
Plaaslike rekords beskryf die toestel, nie die pad nie. Hulle kan nie wys wat 'n verskaffer gestoor het, of 'n sessie aan 'n rekening gekoppel is, of wat 'n bestemming gesien het nie. 'n Verskaffer se verklaring dat hy nie logs hou nie, sê niks oor die bedryfstelsel op jou skootrekenaar nie, en 'n plaaslike gebeurtenis bewys niks oor die verskaffer se historiese rekords nie.
Hulle dra ook meer persoonlike data as wat verwag word: gebruikersname, gasheername, monteerpaaie en toestelidentifiseerders verskyn in gewone stelselboodskappe selfs wanneer geen blaai-inhoud teenwoordig is nie. Verwyder dit voordat jy iets aan 'n kaartjie heg, en hou die oorspronklike onder normale toegangsbeheer.
Vra op 'n bestuurde toestel die betrokke uittreksel by IT aan eerder as om organisatoriese logboeke te probeer skoonmaak. Die diagnostiese doel is een nou vraag wat deur twee bronne beantwoord word, nie 'n volledige geskiedenis van die masjien nie.