key-method eemaldamine OpenVPN-profiilist ei muuda midagi
Direktiiv kadus parsijast, mitte protokollist. Eraldage vananenud valik võtmevahetuse vormingust enne profiili muutmist.
Profiil, mis on aastaid töötanud, keeldub äkki käivitumast ja teade nimetab direktiivi, mida keegi ei mäleta lisanud olevat: key-method. Järgmine otsingutulemus soovitab ühilduvuse huvides lisada key-method 2, mis on nõuanne teisest ajastust. Rea tagasi lükanud parsija on praegune ega tunne sellist valikut üldse. Rea eemaldamine parandab käivituse ega muuda midagi selles, kuidas kaks osapoolt sessiooni kaitsevad.
Just see vahe profiili sisu ja protokolli tegeliku toimimise vahel on kogu teema, ja see selgitab mitut muud muudatust, mida inimesed samal ajal teevad. See selgitab ka, miks need muudatused tavaliselt paketina saabuvad.
Sümptom on parsimisviga, mitte kätlemise tõrge
Valikud loetakse enne, kui ükski pakett saadetakse. Tundmatu direktiiviga profiil ebaõnnestub selles etapis, nii et protsess ei jõua kunagi võrku ega tekita kunagi kätlemisviga. Sõnastus tavaliselt nimetab valiku ja faili, mis teeb selle üheks lihtsamini omistatavaks tõrkeks. Sellesse ei ole kaasatud ükski pakett, marsruut ega tulemüür.
openvpn --config /etc/openvpn/client/office.ovpn --verb 3 --log /tmp/parse.log
grep -n 'Options error' /tmp/parse.log
Kui teade nimetab direktiivi, on diagnoos valmis: fail sisaldab midagi, mida see build ei aktsepteeri. Kui teade nimetab hoopis failiteed, on probleemiks puuduv include või võti, mis on sama käivitusetapi teine osa.
Mida te ei peaks järeldama, on see, et klient või server vajab vanemat protokollirežiimi. Parsimistõrge on sõnavara probleem teie faili ja binaarfaili vahel ning binaarfail on sel juhul lihtsalt ühe sõna oma sõnavarast välja visanud.
Direktiiv ja edastusvorming on kaks eri asja
Vana key-method valik määras, kuidas TLS-i võtmevahetust raamitakse, ja kaasaegne vahetus on mitmepaketiline meetod, mida see valik kunagi nõudis. Valik kadus, sest see ei valinud enam midagi; vorming, mida see nimetas, jäi ainsaks. Rea eemaldamine jätab sessiooni seega sama raamistusega nagu enne. Tekstimuudatus ei saa seda kummaski suunas muuta.
Seepärast on vana binaarfaili tagasitoomine, et «taastada» meetod 2, vale parandus. See ei taasta midagi peale vanema parsija vanemate vaikeväärtustega ja võtab teilt parandused, mis pärast seda tulid. Sama loogika kehtib sertifikaadi kontrolli või šifrite nimekirja nõrgendamise kohta lootuses, et ühendus taastub.
Kasulik kontroll on versioon ja parsitud konfiguratsioon, mitte sõna olemasolu failis:
openvpn --version | head -n 1
grep -rn 'key-method' /etc/openvpn/ 2>/dev/null
Mida eemaldada ja millisest failist
Muutke faili, mida jooksev protsess tegelikult loeb, ja ainult seda faili. Pakendatud süsteemides on selleks tavaliselt profiil kliendi või serveri kataloogis, mille unit nimetab, mitte teie kodukataloogis viiteks hoitav koopia. Genereeritud profiili võidakse ka mallist uuesti üles ehitada, nii et ainult juurutatud koopias tehtud muudatus naaseb pärast järgmist provisjoneerimiskäiku.
Kustutage vananenud rida ja jätke lõpp-punkt, sertifikaadid, šifripoliitika ja juhtkanali seaded puutumata. Need on toetatud valikud, mida protsess vajab, ja need ei ole parsimisveaga seotud. Kui samas profiilis on muid direktiive, mida te ei tunne, kontrollige igaüht teie jooksva versiooni vastu, selle asemel et kustutada nende rühm, kuni protsess käivitub.
Seejärel käivitage kavandatud eksemplar ja lugege selle käivituse väljundit. Puhas käivitus olemasoleva kuulajaga on kinnitus, et see etapp on lõpetatud; kliendi test pärast seda vastab teisele küsimusele.
Tagasi lükatud profiil ja tagasi lükatud klient näevad sarnased välja
Kaks tõrget tekitavad sarnaseid tugiteemasid ja vajavad erinevaid tõendeid. Server, mis lükkab tagasi oma konfiguratsiooni, ei käivitu kunagi, nii et ükski klient ei saa sellega ühenduda. Server, mis käivitub korralikult ja keeldub ühest kliendist, töötab, ja selle logi sisaldab põhjust: sertifikaadiprobleem, lükandatud valik, mida klient ei aktsepteeri, šifri lahknevus.
Eemaldatud valik ei ole teise juhtumi diagnoos ja selle järele haaramine raiskab sama tunni kaks korda. Kui kliendi logi näitab serveri keeldumist, lugege seda keeldumist; kui see näitab kohalikku viga, on uuritav fail kliendi profiil. Direktiivi järele haaramine, mida enam ei ole, viivitab mõlemat uurimist sama palju.
Ühilduvusküsimused, millele rida kunagi ei vastanud
Selle direktiiviga ringlevad profiilid kannavad tavaliselt lugu kindlast platvormist ja lugu elab tehnilisest põhjusest kauem. Mobiili- või töölauaklient vajab endiselt täielikku toetatud profiili: usaldusväärset sertifikaadiahelat, andmešifrit, mida mõlemad otsad aktsepteerivad, juhtkanali režiimi, mida mõlemad otsad rakendavad, ja mitte ühtegi direktiivi, mida kliendi build tagasi lükkab. Ükski neist ei ole otsustatud vana key-method rea olemasolu või puudumisega.
Pakkimine on eraldi poliitikaküsimus sama kujuga. key-method rea eemaldamine ei ütle midagi selle kohta, kas pakkimisdirektiiv on teie juurutuses toetatud või vastuvõetav, ja need kaks otsust tuleks teha sõltumatult. Mitme turvalisusega seotud seade korraga kustutamine, kuni midagi ühendub, on viis, kuidas töötavast profiilist saab seletamatu.
Pidage lühikest kirjet selle kohta, mida eemaldasite ja miks: valik, selle tagasi lükanud versioon ja käsk, mis vea näitas. Järgmine inimene, kes profiili pärib, vajab täpselt neid kolme fakti, ja need on odavam praegu üles kirjutada kui hiljem rekonstrueerida.