To startere åbner den samme profil på én maskine, og kun GUI’et opretter forbindelse. Filen er intakt, og installationsprogrammet er sandsynligvis i orden; det, der er forskelligt, er den kontekst, hver starter giver openvpn.exe. Arbejdsmappe, kontoidentitet og filattributter følger alle med den kontekst. Kontrollér dem i den rækkefølge, og stop ved den første, der forklarer fejlen.

Bekræft, hvilken starter der fejler

Begynd med at bevise opdelingen. Hvis GUI’et opretter forbindelse, og tjenesten ikke gør det med den samme profilvej, er filen læsbar for nogen, og spørgsmålet bliver, hvem der læser den, og hvorfra. Hvis begge fejler, er profilen i stykker, og intet af dette gælder. Skriv tjenestens navn ned og den præcise profil, den blev bedt om at indlæse.

En tjeneste, der peger på sin egen autostart-mappe, indlæser måske ikke den fil, du har åben i en editor. Sammenlign stien i tjenestekonfigurationen med stien i GUI’et, tegn for tegn, fordi et mappenavn til sidst eller et andet drevbogstav er nok til at sende dig ned ad den forkerte gren.

Hvor relative stier opløses

En profil, der refererer til ca.crt eller et hjælpescript ved bart navn, kræver et opslag relativt til, hvor processen nu engang er. GUI’et starter i konfigurationsmappen, så de navne opløses. En tjeneste startet af tjenestestyringen har ikke et sådant udgangspunkt, og opslaget fejler, før nogen certifikat læses. Derfor virker den samme profil i den ene starter og ikke i den anden.

Giv indpakningen en mappe at starte i, eller gør hver reference absolut. At genskabe GUI’ets kontekst på en kommandolinje ser sådan ud:

openvpn --cd "C:\VPN\profiles\office" --config "C:\VPN\profiles\office\office.ovpn"

At hæve detaljeringsgraden på den kommando viser den præcise sti, der blev forsøgt. Gør det, før du ændrer rettigheder, fordi en manglende fil og en afvist læsning kræver forskellige rettelser. Standardloggen skelner ikke mellem dem. Et ekstra flag sparer en times gætteri.

Når tjenestens identitet ikke kan læse

En tjeneste kører som en systemidentitet, ikke som dig. En ACL, der giver din bruger fuld kontrol og ingen andre, fejler der, mens den fungerer perfekt i din session. En profil, der ligger på et tilknyttet drev eller en godkendt deling, fejler af samme grund. Bekræft filens tilladelser, før du ser på noget andet.

Kontrollen er en læsning af de effektive tilladelser plus en læsning forsøgt som tjenestens identitet. Kør første del fra en forhøjet kommandoprompt:

icacls "C:\VPN\profiles\office\office.ovpn"

Forsøg derefter den samme læsning som tjenestens identitet, for eksempel med psexec -s -i fra Sysinternals, og se, om filen åbner. Hvis den ikke gør, hjælper ingen sti-rettelse. Ret ACL’en eller flyt profilen til et sted, som tjenestens identitet kan læse.

Filkryptering er det andet, sjældnere tilfælde. En profil markeret med attributten Encrypting File System dekrypteres gennemsigtigt for den bruger, der krypterede den, og forbliver ulæselig for en tjenestekonto. Derfor åbner den samme fil i din editor og ikke under tjenesten.

Attributten er synlig fra en forhøjet kommandoprompt, og at kontrollere den åbner ikke profilen. Kør begge kommandoer og læs outputtet:

cipher /s:"C:\VPN\profiles\office"
attrib "C:\VPN\profiles\office\office.ovpn"

At fjerne attributten gør filen læsbar, og det fjerner også den beskyttelse, den bar. Hvis profilen skal forblive beskyttet, skal du lægge det hemmelige materiale, hvor tjenestens identitet har en udtrykkelig tildeling, i stedet for at stole på kryptering pr. bruger. Den ordning overlever en adgangskodeændring, og den gør adgangen reviderbar for en anden end den person, der krypterede filen.

Beslutning om, hvem der ejer tunnelen

GUI’et kan spørge om en adgangskode og kan læse et certifikat fra din brugerprofil. Tjenesten kan ingen af delene, så en profil, der afhænger af en interaktiv hemmelighed, starter aldrig uden opsyn, uanset hvordan stierne rettes. Den grænse er en designbeslutning, ikke en mangel, der skal omgås. Vælg én ejer, før du ændrer noget andet.

Hvis tunnelen skal være oppe før login, skal du give tjenesten en kilde til uovervågede legitimationsoplysninger og sin egen kopi af profilen. Hvis den kun skal eksistere, mens du er ved skrivebordet, så behold den i GUI’et og fjern tjenestekopien. Begge på én gang er den konfiguration, der skaber adapterkonflikter og dublerede ruter.

Den konflikt bliver normalt diagnosticeret som en konfigurationsfejl i stedet for som to ejere, der slås om én adapter. Hændelsesloggen vil vise én proces, der ikke kan åbne TAP-enheden, hvilket ligner et tilladelsesproblem og ikke er det. Tæl ejerne først.

Hvad tjenestens indpakning rent faktisk starter

Tjenestens indgangspunkt er en lille indpakning, der læser sine egne gemte parametre og derefter starter openvpn.exe. Når kommandolinjen i hændelsesloggen ikke stemmer med din forventning, er det de værdier, der skal undersøges. Geninstallation nulstiller dem til standard og ødelægger beviserne. Læs dem først.

Værdierne bor i registreringsdatabasen under tjenestens egen nøgle, og sc qc viser den binære sti, som tjenestestyringen vil starte. Sammenlign den sti med indpakningens gemte konfiguration, før du redigerer nogen af dem.

At erstatte indpakningen med et script, du kontrollerer, er mere invasivt, men det folder den effektive kommandolinje sammen i én læsbar fil. Slut af med en genstart, og læs derefter loggen pr. profil, indtil den første vellykkede opstartslinje vises. En tjenestestatus på kørende betyder kun, at indpakningen ikke er afsluttet, hvilket også er sandt, når dens barn døde med det samme.

Relaterede artikler