Dit profiel is in 2016 geschreven, en het wordt nog steeds geïmporteerd en het maakt nog steeds verbinding. Dat is precies waarom niemand ernaar kijkt. De client die deze richtlijnen ooit las, is allang verdwenen, en de huidige build kan er verschillende anders interpreteren.

Dat een bestand overleeft, betekent niet dat een configuratie actueel is. Die twee ideeën scheiden is het grootste deel van het werk.

Ontdek welke client het profiel schreef

Begin bij de uitgever en de versie. De betekenis van een richtlijn wordt bepaald door de implementatie die hem leest. Een regel die ooit een algoritme koos, kan een terugvallijst, een waarschuwing of een harde fout worden. Welke release hem interpreteert, bepaalt de uitkomst.

OpenVPN is het duidelijkste voorbeeld. Versie 2.5 introduceerde data-ciphers en veranderde hoe de oudere richtlijn cipher aan de onderhandeling deelneemt. Een profiel dat alleen cipher AES-128-CBC bevat, doet nu een veel smaller voorstel dan de auteur bedoelde.

Lees de releaseopmerkingen voor de instelling die nu waarschuwt of faalt. Een waarschuwing in het log is een feit over de huidige build, en weegt zwaarder dan ieders herinnering aan waarom de regel is toegevoegd.

Kijk wat er werkelijk is onderhandeld

Een geslaagde import bewijst het parsen, niet het beleid. Het onderhandelde resultaat verschijnt in het clientlog nadat de verbinding tot stand is gekomen. Het kan afwijken van beide uiteinden van het configuratiebestand.

# 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

Een geaccepteerde import die stilletjes een richtlijn laat vallen, laat een profiel achter dat op één manier leest en zich op een andere gedraagt. Dat gat is hoe een document dat als gehard is bestempeld iets zwakkers onderhandelt dan zijn eigen tekst beweert. Het log is de enige plek waar het verschil zichtbaar wordt. Lees het voordat u het bestand vertrouwt.

Upgrade de regeling, niet de regel

Neem het profiel dat de operator onderhoudt in plaats van algoritmenamen samen te stellen tot de import ophoudt met klagen. Regels op goed geluk toevoegen keert de richting van de oplossing om. Het past de client aan een onbekende server aan in plaats van vast te stellen wat de server ondersteunt.

De server heeft mogelijk ook de gecoördineerde upgrade nodig. Een huidige client kan geen ondersteuning creëren voor een voorstel dat de tegenpartij nooit biedt. Geen enkele optie aan clientzijde vervangt een gateway die niet is bijgewerkt.

Wat niet mag worden opgeofferd, is verificatie. Certificaatcontroles verwijderen, de hostnamecontrole uitschakelen of updates uitzetten om een oud profiel in leven te houden, verandert een compatibiliteitsprobleem in een vertrouwensprobleem. Dat gebeurt meestal met één kleine wijziging tegelijk.

Bevestig het resultaat en leg de uitzondering vast

Inspecteer na de wijziging opnieuw de onderhandelde suite en test de resource waarvoor de tunnel bestaat. Een profiel dat onderhandelt wat u bedoelde en de dienst nog steeds niet bereikt, heeft een routerings- of identiteitsprobleem. Het heeft geen cryptografisch probleem.

Bewaar de vorige bekende goede configuratie op een beschermde plek. Een vergelijking is alleen mogelijk zolang het oude bestand nog bestaat.

Documenteer elke compatibiliteitsuitzondering met een eigenaar en een controledatum. Een tijdelijke regeling zonder eigenaar wordt permanent beleid. De volgende persoon die het bestand leest, zal aannemen dat het bewust is gekozen.

Gerelateerde artikelen