Det begynner vanligvis med en profil som har koblet til i årevis, åpnet i en nyere klient, og som feiler før tunnelen i det hele tatt starter. Terminalen skriver noe slikt som Options error: Unrecognized option ... in client.ovpn:130: tls-remote, med en versjon i parentes på slutten. Les det som en klage fra parseren: filen inneholder et direktiv som denne klienten ikke lenger kjenner.

Den ene meldingen forklarer hvorfor det ikke hjelper å generere nøkler på nytt, skrive passordet igjen eller sjekke serveren. Feilen oppstår mens klienten leser sin egen konfigurasjon, før den åpner en socket. Det nyttige arbeidet er å finne direktivet som ble avvist, og erstatte det med dagens ekvivalent.

Les linjen som feiler før du endrer noe

Kjør klienten selv i stedet for å starte den fra et systemkurv-ikon, slik at meldingen er synlig og stien til profilen er entydig. Åpne filen på linjen som er oppgitt, og se på tokenet klienten navnga. Linjenummeret er profillinjen, ikke en versjon, og det lurer folk fordi det samme tallet står i parentesen som en utgivelsesidentifikator.

Gamle profilgeneratorer skrev ikke ett dårlig direktiv; de skrev flere. Rett den første feilen, kjør klienten på nytt og forvent at den neste dukker opp. Den rekkefølgen er normal og ikke et tegn på at endringene gjorde ting verre.

Hva som skjedde med keysize og tls-remote

keysize ba om en nøkkellengde for chiffrer i en tid da profilen valgte chiffrer eksplisitt. OpenVPN 2.4 avviklet det, og senere klienter fjernet det fra alternativtabellen, så parseren avviser nå linjen i stedet for å ignorere den. Moderne forhandling utleder nøkkellengden fra chiffrer som er valgt, og derfor er det ingenting igjen for direktivet å styre.

tls-remote ble fjernet i 2.4. Det sammenlignet servercertifikatet med et forventet navn, og erstatningen er verify-x509-name, som er strengere på hvordan navnet matches. Det gamle direktivet er borte, så en profil som har det med, vil aldri parses av en gjeldende klient.

Rett ett direktiv per forsøk. Hvis profilen også angir en chiffrer som klienten ikke tilbyr, gir det en annen feil senere, og å blande begge endringene i én redigering gjør det umulig å se hvilken som ødela håndtrykket. Koble til på nytt etter hver endring og ta vare på feilteksten. Den vanen gir også en fungerende tilbakefallsløsning hvis en endring gjør ting verre.

Skriv om kontrollen av serveridentitet

Erstatningen tar det forventede navnet og en sammenligningsmodus. verify-x509-name vpn.example.edu name krever at sertifikatets subjekt er nøyaktig lik den verdien. Andre modus matcher et prefiks eller en full subjektstreng, og å velge feil modus gjør en fungerende profil om til en ren verifiseringsfeil.

Hvis det gamle tls-remote-argumentet var serverens fulle common name, er en nøyaktig name-sammenligning vanligvis riktig. Hvis det var en delvis verdi, bruk prefiksmodus i stedet for å forkorte det forventede navnet, fordi en kortere nøyaktig match ikke vil verifisere. Når den opprinnelige verdien ikke er skrevet ned, spør den som drifter serveren om subjektet de publiserer.

Ikke demp kontrollen for å få feilen til å forsvinne. Å fjerne verifiseringen av serveridentitet gjør et løsbart profilproblem om til en uverifisert tunnel, som er nøyaktig risikoen direktivet fantes for å hindre.

Rettet profil, lokal redigering eller eldre klient

Når noen andre eier serveren, er den reneste veien en gjeldende profil fra dem. Din kopi kom fra en eldre generator, og deres eksport bruker allerede de gjeldende direktivene. Én nedlasting fjerner hele kategorien feil og holder fremtidige redigeringer på ett sted.

Når du eier begge ender, rediger en kopi og behold originalen. Endre ett direktiv, lagre, koble til og noter klientversjonen du testet. Ha en kort lapp ved hver endring, fordi en profil som er redigert over flere økter er vanskelig å revidere fra hukommelsen. Kjøring fra kommandolinjen mot den redigerte filen gjør den løkken rask, fordi feilen går rett til terminalen.

Å feste eller rulle tilbake til en klient før 2.4 får også meldingen til å forsvinne, og med et apparat som aldri blir oppdatert kan det være den eneste brukbare nødløsningen. Behandle det som midlertidig: en gammel klient på en gjeldende maskin betyr vanligvis et gammelt bibliotek og en konfigurasjon uten støtte, som er et problem utsatt i stedet for løst.

Etter at tunnelen er oppe, les hele profilen én gang til. Profiler som hadde ett fjernet direktiv, har ofte ett til, og det andre dukker først opp når det første er borte.

Relaterte artikler