To profilar, den eine koplar til og den andre ikkje, og den raske måten å sjå kvifor er ein diff. Problemet er at same diff skriv ut den innebygde private nøkkelen, den statiske nøkkelen og kvar legitimasjonsblokk fila ber, og folk limer inn utdata i ein chat før dei oppdagar det. Å avgjere kva du samanliknar kjem før du køyrer kommandoen. Samanlikn struktur og roller på verna kopiar, og bygg ei eiga redigert fil når nokon andre skal sjå ho.

Kva ei .ovpn-fil faktisk inneheld

Ei .ovpn-fil er ein konfigurasjon med valfrie innebygde blokkar. Ho kan halde eit CA-sertifikat, eit klientcertifikat, ein privat nøkkel, ein tls-auth eller tls-crypt-nøkkel og direktiv som peikar på eksterne filer eller spør om legitimasjon. To filer kan sjå nesten identiske ut og berre skilje seg inne i ein blokk, eller skilje seg i eitt direktiv som endrar transporten fullstendig. Talet på linjer seier deg ingenting om kva av dette som skjedde.

Ein skilnad inne i ein nøkkelblokk er ikkje offentleg prov på noko. Eit gjenutstedt sertifikat og eit med ny nøkkel kan gje same form for endring, så blokkavviket seier at materialet er annleis, ikkje kva avgjerd som skapte det. Handsame det som eit signal om å samanlikne felt, ikkje som ein konklusjon.

Samanlikn etter rolle, ikkje etter linje

Følg den eigne rekkjefølgja til sambandet: endepunkt og transport først, deretter tillit og forventa identitet, deretter brukarautentisering, deretter ruter, DNS og skriptkrokar. Den rekkjefølgja svarar til det klienten gjer, så den første skilnaden du møter er det første som kunne ha brote sambandet. Alfabetisk samanlikning spreier i staden beslekta innstillingar over heile utdata.

Ein feltmedviten gjennomgang ser på desse elementa, i den rekkjefølgja. Alt klienten spør om interaktivt høyrer til autentiseringsrada, ikkje tillitsradene.

  • remote, proto og port, inkludert kvar sambandsblokk.
  • ca og cert: utferdar, emne og utløpsdato.
  • Om det i det heile finst ein privat nøkkel, aldri kva han inneheld.
  • tls-auth eller tls-crypt-tilstadevere og nøkkelretning.
  • Autentiseringsdirektiv, inkludert kvar tilvising til ei legitimasjonsfil.
  • Ruter, DNS-val og skriptkrokar som køyrer ved tilkopling.

Når ei fil har fleire sambandsblokkar, hald kvart val saman med endepunktet sitt. Å samanlikne berre den første remote-linja kan oversjå alternativet klienten faktisk vel på dette nettet.

Kvifor ein vanleg diff er feil reiskap

Ein vanleg diff er bygd for tekst, ikkje for hemmelegheiter. Han skriv gjerne ut ein privat nøkkel i rullehistorikken, og han fortel deg ikkje at direktivet du stirar på er irrelevant for feilen. Feltuttrekk er både tryggare og lettare å lese, fordi sertifikatmateriale kan samanliknast som metadata i staden for bytes.

openssl x509 -in ca.crt -noout -subject -issuer -enddate
openssl x509 -in client.crt -noout -subject -issuer -enddate
grep -E '^(remote|proto|port|tls-auth|tls-crypt|route|dhcp-option)' profile.ovpn

Dei to første kommandoane skriv ut identitet og gyldigheit utan å røre nøkkelen, så utdata er trygge å lime inn. grep skriv ut direktivnamn og verdiar, men aldri blokkinnhaldet, noko som gjer det til rett første gjennomgang når du mistenkjer ein transport- eller ruteforskjell. Viss ein blokk sjølv må samanliknast, samanlikn hashen i staden for innhaldet.

Bygg ein redigert kopi til saka

Fjern ekte hemmelegheiter og unødvendige identifikatorar medan du held feltnamn og nok struktur til å forklare skilnaden. Ein markør med same form avdekkjer framleis kvar materialet sit og kor langt det var, så avgjer om sjølv det er akseptabelt. Kontroller den endelege vedlagde fila sjølv i staden for å stole på kommandoen du hugsar du køyrde. Ikkje rediger den fungerande originalen berre for å lage eit døme, fordi ein redigert profil ikkje nødvendigvis kan køyrast og aldri bør importerast igjen.

Hald originalane identifiserbare med filnamn og hash i staden for å kopiere dei til tre katalogar med liknande namn. Ein hash-streng er nok til å prove kva fil som vart gjennomgått og kostar ingenting om han lek. Kutt kopiane når endringa er lukka, slik at neste person arvar éi autoritativ fil.

Hald samanlikninga knytt til ein feil

Ei samanlikning er verdt kostnaden når ho svarar på eit spørsmål om éin import eller éin tilkoplingsfeil. Namngje først trinnet som feilar, og samanlikn deretter berre felta trinnet er avhengig av; å samle alle legitimasjonane til klienten i éin katalog gjer neste lekkasje meir sannsynleg og neste diagnose tregare. Jo smalare spørsmålet er, jo kortare er lista over felt som kan svare på det.

Viss ei ny fil kom frå operatøren, stadfest distribusjonsvegen før du erstattar tillitsmateriale. Etter endringa, inspiser den importerte kopien klienten faktisk valde og det forhandla resultatet, fordi eit direktiv kan ignorerast eller lesast annleis av ein annan klientversjon. Fila på disken er ikkje prov på sambandet som køyrde. Semantikken til direktiva står i OpenVPN 2.6-handboka.

Relaterte artiklar