OpenVPN brukar faktisk TLS, og folk utvidar rutinemessig det til ein påstand det ikkje kan bera: at ein tunnel difor ser ut som ein nettlesar som vitjar ein nettstad. Den første delen er sann. Den andre er ikkje. TLS her høyrer til ein kontrollkanal som reiser inne i OpenVPN sin eigen behaldar, ved sida av ein nyttelastkanal med heilt annan kryptografi, så den som granskar dei innleiande bytene ser OpenVPN.

To samtalar i éin konvolutt

Tenk på ein økt som to samtalar som deler éin konvolutt. Den eine validerer sertifikat og leier ut nøkkelmateriale. Den andre krypterer det du faktisk sender, ved hjelp av det den første produserte.

Konvolutten er protokollen. Kvar pakke byrjar med eit lite hovud som nemner typen, og det hovudet kjem før alt anna.

Kva som faktisk kjem først

På grunn av den rekkjefølgja er det første på leidningen ikkje ein TLS-post. Det er hovudet til OpenVPN, etterfølgd av innhaldet i den kanalen hovudet annonserer. Ein ClientHello finst der inne, berre ikkje ved byte null. Det trengst inga dekryptering for å leggje merke til skilnaden, for forma åleine røpar han.

Standardverdiar tel her òg. Straumen er UDP til 1194 med mindre profilen vel TCP. I båe tilfelle er det ytre utsjånaden ein tunnel og ikkje ein webførespurnad.

Tre ærlege måtar å endre forma på

Ein TLS-terminator som stunnel tek imot TLS på ein port i kvar ende og gjev den dekrypterte straumen til OpenVPN lokalt, så nettet ser TLS til den porten. Ein protokoll som er TLS frå første byte, oppfører seg annleis igjen: den AnyConnect-kompatible utvekslinga som ocserv implementerer, liknar fjernåtkomsten verksemder allereie ventar. SSTP, som følgjer med Windows, har same eigenskap i eit anna produkt.

På Linux ber SSH-valet -w ei punkt-til-punkt-samband inne i ei SSH-økt, noko som er nyttig når SSH er den einaste tillatne protokollen. Det er den billegaste av dei fire om SSH allereie verkar frå det nettet, og den minst nyttige om det ikkje gjer det.

Kva ingen av dei endrar

Ingen av desse endrar kva tunnelen kan nå. Dei gjer ikkje ei blokkert adresse tilgjengeleg, dei autentiserer ingen, og dei bestemmer ikkje ruter.

Ei innpakking kostar deg òg ein komponent. To lyttarar og to konfigurasjonsfiler tyder to stader for ein feil, og båe ser identiske ut frå plassen til brukaren. Budsjetter for det før du tek i bruk ein. Økta held fram som ein einaste langvarig kryptert straum til ein destinasjon, og volumet og tidspunktet held fram med å vere synleg.

Diagnostiser først, vel deretter

Så diagnostiser først. Droppa UDP blir svart av TCP-modus, og ein gjenkjend signatur blir svart av ein annan protokoll eller ei innpakking. Å velje eit verktøy før du kjenner blokkeringa er korleis folk endar med å vedlikehalde tre lag som alle feilar av same grunn.

Eit nett som berre tillèt webportar, snevrar valet inn til ein TLS-basert protokoll på 443. Å bruke alle tre på éin gong gjev ein stabel ingen kan feilsøkje, så endre éin ting og test den same straumen på nytt.

Viss ingen av dei gjeld, er det nøyaktige svaret at dette nettet ikkje vil bera ein tunnel for deg. Det er ei konstatering og ikkje eit nederlag for innsatsen. Å gå gjennom fleire alternativ reverserer ikkje eit politisk vedtak gjort lenger opp.

Éi grense står framfor alt dette. Løyve til å køyre ein tunnel på nokon annan sitt nett er eit politisk spørsmål, avgjort separat frå om mekanismen verkar. Desse fakta forklarar kva ein observatør ser, og dei gjev ikkje løyve.

Relaterte artiklar