journalctl pentru jurnalele VPN: ce unitate deține conexiunea?
OpenVPN, wg-quick și NetworkManager scriu în unități diferite. Alegeți proprietarul, îngustați fereastra de timp, apoi citiți prima etapă eșuată în ordine.
Începeți cu unitatea systemd care deține efectiv conexiunea VPN, nu cu comanda de jurnal pe care v-o amintiți. Un serviciu OpenVPN direct, o unitate wg-quick și un profil NetworkManager își pun mesajele utile în unități diferite, iar o interogare către unitatea greșită produce un rezultat gol care pare tăcere. Comparați cei trei proprietari obișnuiți, îngustați fereastra și apoi citiți etapele în ordine.
Comparați cei trei proprietari obișnuiți
Un serviciu client OpenVPN este de obicei o unitate de instanță numită după profil, cum ar fi [email protected]. Mesajele sale includ calea configurației, analiza opțiunilor, strângerea de mână TLS și instalarea rutelor pe care o face clientul.
O unitate wg-quick este mai silențioasă prin proiectare. Configurarea interfeței are loc la pornire, strângerea de mână este gestionată de nucleu, iar reînnoirile de rutină ale cheilor nu sunt înregistrate implicit, așa că wg show este adesea mai informativ decât jurnalul. Această diferență contează când comparați un protocol care înregistrează negocierea cu unul care nu o face.
NetworkManager deține profilurile pe care le-a creat, iar mesajele sale se află sub NetworkManager.service chiar și atunci când pluginul de bază este un asistent VPN. Întrebați atât managerul, cât și unitatea asistent când profilul este administrat în acest fel.
Îngustați interogarea la o singură unitate și o singură fereastră
Întrebați unitatea pe care ați identificat-o și limitați timpul la încercarea pe care o investigați. O zi este de obicei suficientă, iar o fereastră mai scurtă este mai bună când mașina se reconectează des.
journalctl -u [email protected] --since today
systemctl list-units --type=service | grep -i vpn
systemctl cat [email protected]Verificați numele instalat înainte de a avea încredere în interogare. Împachetarea distribuției redenumește unitățile, iar un profil care există ca fișier poate să nu fi fost niciodată activat ca serviciu. Dacă unitatea nu există, jurnalul gol vă spune despre implementare, nu despre tunel.
Citiți prima etapă eșuată
Citiți evenimentele în ordinea în care apar: căutarea punctului final, transport, identitate, autentificare, instalarea rutelor și eșecul ulterior al aplicației. Primul eșec concret este cel care merită investigat, pentru că tot ce urmează este o consecință.
Un serviciu care pornește cu succes nu dovedește că fiecare resursă necesară este accesibilă. O buclă de reconectare poate produce mai multe negocieri separate, așa că păstrați numele profilului și ora încercării împreună cu evenimentele și citiți o singură încercare în loc de un flux unificat. O singură încercare este o secvență cu o cauză, în timp ce un flux unificat este un zid de linii repetate. Scrieți prima eroare în tichet înainte de a citi mai departe.
Nu amestecați un serviciu eșuat cu un client manual
Dacă ați pornit un client manual după ce serviciul a eșuat, ieșirea lui merge în altă parte și comportamentul poate fi diferit. Capturați rezultatul nou de la același proprietar și aceeași cerere după o corectare acceptată, astfel încât comparația să arate ce s-a schimbat în loc să amestece două programe diferite.
Nu modificați marcajele de timp originale pentru a le alinia la alt host. Notați separat fusul orar și orice diferență de ceas cunoscută, pentru că o cronologie pe care ați editat-o nu mai este dovadă.
Partajați un extras, nu o exportare
Intrările din jurnal pot conține nume de utilizator, adrese de puncte finale, topologie privată și informații despre mediul scripturilor. Examinați extrasul real și mascați ce este sensibil în loc să publicați o exportare completă fără restricții. Citați liniile care dovedesc eșecul și rezumați restul. Un extras scurt revăzut este mai ușor de folosit decât un fișier pe care nimeni nu îl citește.
Trimiteți fereastra îngustă, numele unității și prima etapă eșuată și spuneți ce ați exclus deja. Manualul systemd journalctl documentează selectorii și opțiunile de ieșire dacă aveți nevoie de un format pe care versiunea distribuției îl acceptă.