Acest profil a fost scris în 2016 și încă se importă și încă se conectează. Exact de aceea nimeni nu se uită la el. Clientul care cândva citea aceste directive a dispărut de mult, iar versiunea actuală poate interpreta mai multe dintre ele altfel.

Faptul că un fișier supraviețuiește nu înseamnă că o configurație este actuală. Separarea acestor două idei este cea mai mare parte a muncii.

Aflați ce client a scris profilul

Începeți cu emitentul și versiunea. Semnificația unei directive este definită de implementarea care o citește. O linie care cândva alegea un algoritm poate deveni o listă de rezervă, o avertizare sau o eroare dură. Ce versiune o interpretează decide rezultatul.

OpenVPN este exemplul cel mai clar. Versiunea 2.5 a introdus data-ciphers și a schimbat modul în care directiva mai veche cipher participă la negociere. Un profil care conține doar cipher AES-128-CBC face acum o propunere mult mai îngustă decât intenționa autorul său.

Citiți notele de versiune pentru setarea care acum avertizează sau eșuează. O avertizare în jurnal este un fapt despre versiunea actuală și cântărește mai mult decât memoria cuiva despre motivul adăugării liniei.

Uitați-vă la ce s-a negociat de fapt

Un import reușit dovedește analiza, nu politica. Rezultatul negociat apare în jurnalul clientului după ce conexiunea se ridică. Poate diferi de ambele capete ale fișierului de configurare.

# 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.ovpn

Un import acceptat care aruncă în tăcere o directivă lasă un profil care se citește într-un fel și se comportă în altul. Această lacună explică modul în care un document etichetat ca întărit negociază ceva mai slab decât afirmă propriul său text. Jurnalul este singurul loc unde diferența apare. Citiți-l înainte de a avea încredere în fișier.

Actualizați aranjamentul, nu linia

Luați profilul întreținut de operator în loc să asamblați nume de algoritmi până când importul nu mai protestă. Adăugarea de linii prin încercări inversează direcția corecției. Adaptează clientul la un server necunoscut în loc să stabilească ce acceptă serverul.

Serverul poate avea nevoie și de actualizarea coordonată. Un client actual nu poate crea suport pentru o propunere pe care cealaltă parte nu o oferă niciodată. Nicio opțiune din partea clientului nu înlocuiește o poartă care nu a fost actualizată.

Ceea ce nu trebuie sacrificat este verificarea. Eliminarea verificărilor de certificate, dezactivarea verificării numelui de gazdă sau oprirea actualizărilor pentru a menține în viață un profil vechi transformă o problemă de compatibilitate într-o problemă de încredere. De obicei se întâmplă o mică modificare pe rând.

Confirmați rezultatul și înregistrați excepția

După modificare, inspectați din nou setul negociat și testați resursa pentru care există tunelul. Un profil care negociază ceea ce ați intenționat și totuși nu ajunge la serviciu are o problemă de rutare sau de identitate. Nu are una criptografică.

Păstrați configurația anterioară cunoscută ca bună într-un loc protejat. O comparație este posibilă doar cât timp vechiul fișier mai există.

Documentați orice excepție de compatibilitate cu un proprietar și o dată de revizuire. O soluție temporară pe care nimeni nu o deține devine politică permanentă. Următoarea persoană care va citi fișierul va presupune că a fost aleasă deliberat.

Articole similare