Samme profil, to sessioner: den forbinder fra skrivebordet og hænger over SSH på en opfordring, som intet kan svare på. Intet er i stykker, og ingen indstilling er gået tabt. NetworkManager beder en hemmelighedsagent om legitimationsoplysningen, og en hemmelighedsagent er en skrivebordskomponent, som ikke findes i den session, du bruger.

Kør sekvensen nedenfor, og tunnelen kommer op uden skærm, med forbehold for at lagring af en hemmelighed ændrer, hvem der kan bruge profilen.

Bekræft diagnosen, før du redigerer noget

Forskellen mellem interaktiv og ikke-interaktiv aktivering er hele diagnosen. Hvis nmcli --ask connection up lykkes, mens en almindelig aktivering hænger, er profilen korrekt, og hemmelighedens kilde mangler. Den ene sammenligning sparer dig for at skrive en fungerende konfiguration om.

nmcli -f NAME,UUID,TYPE connection show
nmcli connection show "Office IPsec" | grep -i flags

Læs flagene i stedet for at gætte på dem. Værdier, der betyder "spørg en agent", er det, du leder efter, og de præcise nøglenavne varierer mellem VPN-plugins, fordi de bor i pluginets egen dataordbog. En FortiSSL-profil og en IPsec-profil bruger ikke nødvendigvis de samme navne, så arbejd ud fra dit eget profiles output.

Bekræft også, at plugin-pakken til den protokol er installeret. Et manglende plugin viser sig som en ukendt forbindelsestype eller en aktiveringsfejl, der intet siger om adgangskoder, og at jagte hemmeligheden i den tilstand spilder den samme time to gange. Én pakkeforespørgsel er billigere end en hel eftermiddag med at redigere nøglefiler.

Flyt hemmeligheden ind i nøglefilen

Forbindelsesfilen ligger under /etc/NetworkManager/system-connections/. Hemmeligheder gemmes ikke der som standard, og det er pointen med de flag, du netop har læst. At ændre et flag til nul fortæller NetworkManager, at værdien er gemt sammen med profilen i stedet for at blive anmodet om ved aktivering.

[vpn]
password-flags=0

[vpn-secrets]
password=YOUR-VPN-PASSWORD

For en profil med to hemmeligheder gentages mønsteret: ét flag for hver hemmelighed i [vpn]-sektionen, og værdierne i [vpn-secrets]. En IPsec-profil bærer typisk en forudelt nøgle sammen med brugerens legitimationsoplysning, og plugin'et navngiver dem anderledes end et almindeligt adgangskodefelt, så kopiér nøglenavnene fra vpn.data-outputtet i stedet for fra et blogindlæg, der brugte et andet plugin. Ét forkert nøglenavn giver en profil, der indlæses og derefter fejler ved godkendelse, hvilket læses præcis som en forkert adgangskode. Sammenlign din fil med en fungerende profil fra samme plugin, før du forbinder igen.

Sæt anførselstegn om værdier, der indeholder mellemrum, anførselstegn eller et dollartegn. En værdi uden anførselstegn med et $ i sig læses bogstaveligt eller udvides afhængigt af, hvor den parses, og den resulterende godkendelsesfejl ligner en forkert adgangskode.

Ret derefter filens ejerskab og tilstand. Disse nøglefiler læses af en privilegeret tjeneste, og en fil, som andre brugere kan læse, betragtes som utroværdig, hvilket er den sædvanlige grund til, at en redigeret profil ser ud til at blive ignoreret. Ejer root, tilstand 600, ingen undtagelser.

Genindlæs, og aktivér derefter

Filen læses, når forbindelsen indlæses, så det er ikke nok at redigere den. Genindlæs profilerne, og bring derefter forbindelsen op eksplicit.

sudo nmcli connection reload
sudo nmcli connection up "Office IPsec"

Hvis genindlæsningen ikke fanger ændringen, gør en fuld genstart af tjenesten det, og der er rapporter om præcis det. Foretræk genindlæsningen, når andre links betyder noget, fordi en genstart af tjenesten afbryder hver administreret forbindelse, og på en fjernvært kan det afslutte din session, før den tunnel, du ville have, er oppe.

Brug UUID, når navne er tvetydige. Maskiner med flere kundeprofiler akkumulerer næsten-dubletter, og aktivering af den forkerte giver en fejl, der ligner et problem med legitimationsoplysningerne.

Når den gemte hemmelighed ikke er problemet

En FortiSSL-profil kan fejle selv med en korrekt gemt legitimationsoplysning, fordi klienten aldrig stoler på gatewayens certifikat. Den indstilling er ikke i hoveddialogen; den ligger bag VPN'ets avancerede valgmuligheder, hvor det betroede certifikats digest indtastes. Hvis loggen nævner certifikatet i stedet for adgangskoden, er du i denne gren, og ingen mængde redigering af [vpn-secrets] hjælper.

To flere kontroller hører til her. Bekræft, at profilen ikke blev importeret fra en fil, der stadig peger på en sti, som plugin'et ikke kan læse, og bekræft, at profilen er den aktive og ikke en forældet dublet. Begge giver aktiveringsfejl, der læses som godkendelsesfejl.

Beslut, om lagring er acceptabelt

En gemt PSK og adgangskode kan læses af alt, der kører som root på den maskine. På en maskine, du kontrollerer, er det en rimelig handel for en tjeneste uden skærm. På en delt vært fortjener det en samtale, fordi profilen nu indeholder en legitimationsoplysning, der tidligere var beskyttet af skrivebordets nøglering. Spørg, hvem ellers der kan nå root på den vært, før du beslutter det, ikke efter ændringen er på plads.

Hvis politik forbyder gemte VPN-hemmeligheder, må du ikke svække profilen for at få et cron-job til at virke. Kør forbindelsen fra en session, der har en agent, eller brug en anden mekanisme til automatiseringen.

Til sidst, notér hvilke profiler der bærer hemmeligheder, så ingen kopierer en til en bærbar uden at bemærke det. En kommentar over hemmelighedssektionen med datoen og grunden er nok, og den sparer nogen for en akavet gennemgang senere.

Relaterede artikler