Utdaterte krypteringslinjer i gamle VPN-profiler: les før du kopierer
Direktiver overlever versjonsendringer med andre betydninger, eller ingen i det hele tatt. Sjekk hvilken klient som skrev profilen, og hva tunnelen faktisk forhandlet frem.
Denne profilen ble skrevet i 2016, og den importeres fortsatt og den kobler fortsatt til. Det er nettopp derfor ingen ser på den. Klienten som en gang leste disse direktivene er for lengst borte, og den nåværende versjonen kan tolke flere av dem annerledes.
At en fil overlever betyr ikke at en konfigurasjon er oppdatert. Å skille de to ideene er det meste av arbeidet.
Finn ut hvilken klient som skrev profilen
Begynn med utgiveren og versjonen. Betydningen av et direktiv defineres av implementasjonen som leser det. En linje som en gang valgte en algoritme, kan bli en reserveliste, en advarsel eller en hard feil. Hvilken utgivelse som tolker den, avgjør resultatet.
OpenVPN er det tydeligste eksemplet. Versjon 2.5 innførte data-ciphers og endret hvordan det eldre direktivet cipher deltar i forhandlingene. En profil som bare inneholder cipher AES-128-CBC, gir nå et mye snevrere tilbud enn forfatteren hadde tenkt.
Les utgivelsesnotatene for innstillingen som nå advarer eller feiler. En advarsel i loggen er et faktum om gjeldende versjon, og det veier tyngre enn noens minne om hvorfor linjen ble lagt til.
Se på hva som faktisk ble forhandlet
En vellykket import beviser parsing, ikke policy. Det forhandlede resultatet vises i klientloggen etter at forbindelsen er oppe. Det kan avvike fra begge ender av konfigurasjonsfilen.
# OpenVPN: what did this session agree on?
sudo journalctl -u openvpn-client@office --since '5 min ago' | grep -i 'cipher\|Data Channel'
# which directives does the profile actually carry?
grep -n -E 'cipher|auth|tls-|dh ' office.ovpnEn akseptert import som stille dropper et direktiv, etterlater en profil som leses på én måte og oppfører seg på en annen. Det gapet er hvordan et dokument merket som herdet forhandler frem noe svakere enn dets egen tekst hevder. Loggen er det eneste stedet forskjellen vises. Les den før du stoler på filen.
Oppgrader ordningen, ikke linjen
Skaff profilen operatøren vedlikeholder i stedet for å sette sammen algoritmenavn til importen slutter å klage. Å legge til linjer ved prøving snur retningen på rettelsen. Det tilpasser klienten til en ukjent server i stedet for å fastslå hva serveren støtter.
Serveren kan også trenge den koordinerte oppgraderingen. En gjeldende klient kan ikke skape støtte for et tilbud motparten aldri gir. Ingen klientinnstilling erstatter en gateway som ikke er oppdatert.
Det som ikke må ofres, er verifisering. Å fjerne sertifikatkontroller, slå av vertsnavnkontrollen eller slå av oppdateringer for å holde en gammel profil i live gjør et kompatibilitetsproblem til et tillitsproblem. Det skjer vanligvis med én liten endring om gangen.
Bekreft resultatet og registrer unntaket
Etter endringen, undersøk det forhandlede settet på nytt og test ressursen tunnelen finnes for. En profil som forhandler det du hadde tenkt, og fortsatt ikke når tjenesten, har et ruting- eller identitetsproblem. Den har ikke et kryptografisk problem.
Oppbevar den forrige kjente gode konfigurasjonen på et beskyttet sted. En sammenligning er bare mulig så lenge den gamle filen fortsatt finnes.
Dokumenter ethvert kompatibilitetsunntak med en eier og en gjennomgangsdato. En midlertidig ordning uten eier blir permanent policy. Den neste som leser filen, vil anta at den ble valgt med vilje.