vpn.persistent jätkab proovimist, kuid ei hoia sind ühendatud
Atribuut palub VPN-teenusel tunnelit lingimuudatuste ajal hoida. Aktiveerimine, elujõulisus, kavatsus ja kill-switchi käitumine jäävad eraldi küsimusteks.
NetworkManager pakub ühte atribuuti, vpn.persistent, ja inimesed paluvad sellel vastata korraga neljale erinevale küsimusele. Selle ülesvoolu dokumentatsioon on hoolikas: püsivus kehtib siis, kui VPN-teenus seda toetab ja profiil selle lubab, ning seejärel palutakse ühendusel üle elada lingimuudatusi ja katkestusi kuni selgesõnalise lahtiühendamiseni. Sama dokumentatsioon näitab ka, et atribuudi vaikeväärtus on false, mida enamik taastamisplaane ei eelda. Lugege seda katse palvena, mitte tulemuse lubadusena.
Millele seade tegelikult kohustub
Profiili salvestatud väärtus on haldurile mõeldud juhis ja haldur peab selle juhise andma VPN-pistikule, mis teab, mida sellega teha. Kui paigaldatud pistik eirab atribuuti, aktiveerub profiil siiski ja logi jääb vaikseks, mis on hiljem silumisega tegeleja jaoks mõlema maailma halvim. Miski profiili sees ei saa sundida pistikut rakendama käitumist, mida sellel pole, seega on ainus nähtav tulemus puudumine.
Seetõttu on dokumentatsioonis olev tingimus tähtsam kui lüliti. Kontrollige, milline pistik ja väljalase teil tegelikult on, ja kirjutage versioon ühenduse kirjelduse kõrvale, et järgmine inimene ei peaks seda uuesti avastama. Rakendamata lipule ehitatud taastamispoliitika ebaõnnestub tootmises täpselt ühe korra ja alati kõige ebamugavamal hetkel.
Atribuudi käsitlemine katsena seab ka testimisele õige ootuse. Te ei kontrolli, kas lipp on seatud; te kontrollite, kas midagi juhtus siis, kui link kadus. Need on erinevad katsed ja ainult üks neist on pärastlõunat väärt.
Neli küsimust, mis sulanduvad üheks
Aktiveerimine küsib, mis VPN-i üldse üles toob. NetworkManageri profiili saab siduda baasühendusega, eraldi hallatav OpenVPN teenus omab oma käivitust, ja kolmanda käivitaja lisamine sellele korraldusele annab teile kaks omanikku, kellel on erinev arusaam sellest, kes juhib. Otsustage, milline komponent käivitust omab, enne kui lisate veel ühe päästiku.
Taastamine küsib, mis juhtub, kui link muutub või kaob, ja see on kitsas küsimus, mida vpn.persistent käsitleb. Elujõulisus küsib, kas klient suudab aru saada, et vastaspool lakkas vastamast, ja sellele vastab hoopis OpenVPN-i keepalive'i või taaskäivituse käitumine; neid kahte mehhanismi kirjeldatakse sageli sama sõnaga ja rakendatakse eri kohtades. Testige neid eraldi, erinevate tööriistadega, muidu omistate ühe käitumise teisele.
Kavatsus küsib, kas uuesti ühendamine on üldse soovitud, ja see on küsimus, millele oleku küsitlemine ei suuda vastata. Tahtlik peatumine ja katkestus tekitavad sama mitteaktiivse oleku, seega kõik, mis puudumisel uuesti ühendub, oletab inimliku otsuse kohta. Oletamine on korras täpselt kuni hetkeni, mil see kellestki üle sõidab.
Kontrollnimekiri, mis hoiab need lahus
Käivitage sündmused järjekorras, selle asemel et konfiguratsiooni lugeda ja selle üle arutleda, ja registreerige, mida igaüks näitab, ajatempliga.
Esiteks aktiveerige kavandatud baasühendus ja kinnitage, et VPN tõusis üles oodatud päästiku kaudu, mitte mehhanismi kaudu, mille paigaldamise olite unustanud. Teiseks võrrelge heakskiidetud katkestuse ajal halduri VPN-sündmusi, omanikukliendi taastamisolekut ja värsket taotlust privaatsele ressursile. Kolmandaks ühendage tahtlikult lahti, oodake ja kinnitage, et miski ei taaskäivita profiili teie selja taga.
Kolmas samm on see, mille inimesed vahele jätavad, ja just see leiab kõige sagedamini tegeliku defekti. Valvekoer, mis küsitleb aktiivset profiili ja ühendub uuesti, kui seda pole, tühistab rõõmsalt kasutaja tahtliku lahtiühendamise. Kasutaja vaatevinklist ei ole see vastupidavus; see on masin, mis ei kuuletu. Küsige neilt, enne kui ühe lisate.
Kirjutage tulemused samasse dokumenti kui ühenduse kirjeldus. Taastamispoliitika on nii hea kui viimane kord, mil keegi nägi seda tahtlikult ebaõnnestuvat. Ajatemplid teevad erinevuse nähtavaks kõigile, kes märkmeid järgmisena loevad.
Autentimine on taastamise osa
Uuesti ühendamine ei ole puhtalt võrgutoiming. Kui heakskiidetud voog vajab uut väljakutset, ühekordset koodi või saladust, milleni aktiveerimiskontekst ei ulatu, ei suuda ükski püsivusseade seda mitte millestki luua.
See selgitab tuttavat mustrit: ühendus taastub masinas, mille võtmehoidla on avatud, ja ebaõnnestub samas masinas pärast taaskäivitust. Võrgukiht tegi täpselt seda, mida paluti, ja volituste kiht ei omanud midagi pakkuda.
Parandage volituste töövoog, selle asemel et lühendada korduskatse intervalli. Kiiremad korduskatsed viipa vastu, millele keegi ei saa vastata, tekitavad logimüra ja vale mulje, nagu midagi üritataks.
Püsivus ei ole kill switch
Atribuut püüab VPN-suhet hoida või taastada. See ei otsusta, mida rakendused tohivad teha, kui VPN on maas, ja ei blokeeri iseenesest midagi.
Kui nõue on, et ükski liiklus ei väljuks tunnelist, on see eraldi poliitika oma mehhanismi, oma testimise ja oma tõrgete režiimidega. Eeldus, et püsivus seda katab, muudab turvaküsimuse õnnetuseks.
Kirjutage taastamismärkmetesse mõlemad pooled: mida VPN üritas ja milline rakendusliiklus oli katse kestel lubatud.