To navne er i spil, før klienten overhovedet forbinder: filnavnet på computeren (nuc.ovpn) og den identitet, serveren udleder af legitimationsoplysningen. Et client-config-dir-opslag bruger det andet. At omdøbe profilen på klienten eller tilføje .conf til serverens fil ændrer intet ved, hvilken fil serveren åbner.

Den nyttige sammenligning er ikke »hvilket navn brugte jeg«, men »hvilken regel anvender serveren«, fordi certifikatautentificering og brugernavn/adgangskode-autentificering kan give forskellige effektive navne ud fra samme login.

Profilnavn kontra certifikatets common name

Med det standardcertifikatbaserede setup tager serveren X.509-common-name og leder efter en fil med præcis det navn inde i client-config-dir. En profil ved navn nuc.ovpn, hvis certifikat siger tester, opløses til /etc/openvpn/server/ccd/tester. Klientens filnavn indgår aldrig i beregningen. Det er det første sted, en uoverensstemmelse gemmer sig.

En mappe fuld af omhyggeligt navngivne profiler kan derfor ramme ved siden af hver gang. Filen matches ikke på subject, på e-mailadresse eller på navnet i en GUI; den matches på common name-strengen.

På et filsystem, der skelner mellem store og små bogstaver, er Tester og tester to forskellige filer, og kun én åbnes nogensinde. Tjek common name fra det certifikat, klienten faktisk fremviser, ikke fra en kopi i dine noter.

username-as-common-name vender reglen om

Når serveren kører brugernavn/adgangskode-autentificering med username-as-common-name, erstatter det autentificerede brugernavn certifikatets common name for dette opslag.

Sammenlign de to tilfælde direkte: med certifikatidentitet følger filen certifikatet, og en ændring af adgangskode er irrelevant; med brugernavnsidentitet følger filen login-navnet, og en genudstedelse af certifikatet er irrelevant. Det felt, serveren erstatter, er det, der skal omdøbes efter. Et genudstedt certifikat med et nyt CN ændrer lydløst opslagets mål, og den gamle CCD-fil ligger stadig på disken og ser korrekt ud.

Blandede konfigurationer findes, og det er der, de fleste forvirringer starter. Hvis én serviceblok aktiverer substitutionen og en anden ikke, afhænger det effektive navn af, hvilken instans der håndterede forbindelsen. Bekræft den aktive konfiguration i stedet for at antage, at den globale fil gælder. Den oprindelige server-options-reference dokumenterer opslaget på det navngivne filnavn og det valgfrie fallback.

Hvad serveren læser, og hvad den lydløst springer over

To små forskelle afgør, om en fil bliver valgt. Den første er en tilføjet udvidelse. Den anden er et fremmed tegn i navnet.

OpenVPN tilføjer ikke .conf til det navn, den leder efter, så tester.conf matcher ikke tester. En editor, der skjuler filendelser, kan efterlade en fil, der ser rigtig ud i en liste og aldrig matcher.

Når der ikke findes en matchende fil, kan serveren falde tilbage til en fil ved navn DEFAULT. At nogle indstillinger ankommer er derfor ikke bevis for, at filen pr. klient blev brugt. Sammenlign den tildelte adresse eller de push'ede ruter med det, filen pr. klient ville give. Rettigheder er det tredje filter, fordi serveren åbner filen, efter den har opgivet privilegier; en root-shell, der kan læse den, beviser intet.

Et korrekt filnavn validerer ikke indholdet

Valg og indhold er separate fejl. Når den rigtige fil er åbnet, skal dens direktiver stadig være gyldige for den klient.

ifconfig-push skal tildele en adresse, som topologien faktisk kan bruge, og iroute giver kun mening for et routet subnet bag den klient.

Én identitet, flere enheder

To bærbare computere, der fremviser det samme common name, vælger den samme fil og modtager de samme klientspecifikke indstillinger. Hvis du har brug for separate adresser eller separat tilbagekaldelse, har du brug for separate identiteter, ikke to kopier af én fil.

Sammenligningen står mellem at dele en identitet og at udstede ét certifikat pr. enhed. Deling er nemmere at administrere og grovere at tilbagekalde, mens certifikater pr. enhed kræver mere opsætning og giver dig en ren enhed at deaktivere.

Relaterede artikler