Veza koja radi posle prijave, a pre nje ne uspeva, obično znači da pokušaj pri podizanju nije mogao da dobije tajnu, a ne da ju je server odbio. Akreditiv postoji; kontekst koji ga traži ne postoji. Ta jedna razlika štedi nepotrebno resetovanje lozinke.

Prati zahtev: nešto pokreće vezu pre nego što postoji sesija radne površine, a skladište tajni koje inače odgovara još nije otključano. Dva konteksta se ne slažu oko toga kome tajna pripada, a profil beleži koji od njih treba da ju dostavi.

Šta putanja podizanja zapravo traži

Pri podizanju sistema NetworkManager se pokreće kao sistemski servis bez korisničke sesije, bez sesijskog D-Busa i bez otključanog prstena ključeva. Profil veze ipak može da se podigne, ali samo sa tajnama do kojih servis može da dođe sam. Sve što poseduje agent za tajne čeka dok se čovek ne prijavi i agent se ne pojavi. Servis radi tačno ono što kaže njegova konfiguracija; profil je ono što mora da se promeni.

Kvar je upisan u vezu, a ne skriven u prstenu ključeva.

Čitanje zastavica tajni na vezi

Pitaj vezu šta očekuje, a ne šta radna površina pamti. Kolona zastavica direktno odgovara na pitanje i preživljava ponovna pokretanja u datoteci profila na disku.

Počni sa listom profila, pa potvrdi koja je veza postavljena da se podiže sama. Zatim ispiši jednu vezu i pročitaj zastavice lozinke:

nmcli -f NAME,UUID,TYPE,AUTOCONNECT connection show
nmcli connection show "Work VPN" | grep -i -E "password|secret|key"
journalctl -b -u NetworkManager --grep "secret"

Prva naredba potvrđuje koji profili postoje i da li je neki postavljen na automatsko povezivanje, čime se uopšte pokreće pokušaj bez nadzora. Druga otkriva vrednosti zastavica, a treća pokazuje kako se servis žali da nijedan agent nije odgovorio za datu tajnu. Linija dnevnika koja tajnu naziva agentovom jeste cela dijagnoza u jednoj rečenici.

Flag valueWhere the secret livesBehaviour before login
0Stored in the connection profileAvailable to the system service
1Owned by a secret agentBlocks until the agent is unlocked
2Never storedPrompts on every activation
4Not requiredNever requested at all

Zašto premeštanje veze u sistemski opseg menja odgovor

Vezu koju poseduje korisnik aktivira njegov agent, zato savršeno radi kad se radna površina podigne. Premeštanje u sistemski opseg uklanja agenta sa putanje, pa se isti profil ponaša drugačije bez ijedne promenjene linije VPN konfiguracije.

To premeštanje je legitiman dizajn i nosi zahtev: tajna mora biti dostupna sistemskom servisu. Čuvanje u profilu, dostavljanje kroz akreditiv sistemskog opsega ili prihvatanje interaktivnog upita u pravom trenutku sve su valjani odgovori. Ostaviti zastavicu 1 i nadati se nije.

Privatni ključ sa sopstvenom lozinkom dodaje drugi sloj. Čak ni sačuvana lozinka naloga neće otključati ključ koji traži lozinku, zato proveri koju tajnu faza koja ne uspeva zapravo traži pre nego što bilo šta promeniš.

Šta ne treba raditi i šta umesto toga raditi

Učiniti svaku datoteku akreditiva čitljivom za sve ili isključiti proveru identiteta da upit ne bi bio potreban razmenjuje neugodnost pri pokretanju za trajnu izloženost. Oboje i skriva zavisnost umesto da je rešava, a sledeće ažuriranje slike vraća isti kvar.

Koristi u toj fazi mehanizam koji tvoja distribucija dokumentuje za aktivaciju bez nadzora, pa potvrdi da se zastavice profila s njim poklapaju. Proveri rezultat sa čistog podizanja, a ne iz ljuske koja već ima agenta. Zapiši vlasnika veze, izvor tajne i fazu koja mora da radi, da kasnija promena automatskog pokretanja ne bi tiho vratila zavisnost od toga da neko prvo otključa radnu površinu. Dokumentacija je razlika između popravljenog servisa i onog koji se opet kvari sledeći kvartal.

Testiraj sa kontrolisanog čistog podizanja, a ne ručnim ponovnim pokušajem nakon prijave. Ponovni pokušaj uspeva zbog razloga zbog kojeg je pokušaj pri podizanju propao, i to je upravo dokaz koji brz test uništava.

Povezani članci