Nogen kalder en Mac-forbindelse »Kontor-VPN«, navnet overlever to servermigreringer, og alle bliver ved med at kalde den kontor-VPN længe efter, at protokollen er skiftet. Navnet er et kælenavn, der er gemt ved siden af konfigurationen; det er ikke bevis for, hvad Mac’en forhandler om. At læse den erklærede type kræver ét felt, og at skille den gemte type fra en levende session kræver endnu et skridt. Her er den rækkefølge, der undgår gætværk.

Navnet er et kælenavn, nyttelasten erklærer typen

En macOS VPN-tjeneste er en systemkonfigurationspost med et vist navn, en ejende klient og et sæt typede indstillinger. Det viste navn er fri tekst, som kan redigeres af den, der oprettede posten, og det er den del, brugerne ser i menulinjen. Indstillingerne bærer fakta: hvilken forbindelsestype, hvilken gateway, hvilken godkendelsesordning. Intet holder de to i takt, og derfor kan en profil med navnet »L2TP-kontor« være en IKEv2-tjeneste.

For en personligt oprettet forbindelse viser det ejende program eller systemets eget VPN-panel disse indstillinger. På en administreret Mac tilhører profilen administratoren, og det rigtige træk er at anmode om et resumé uden hemmeligheder i stedet for at redigere en administreret nyttelast. De to tilfælde ser ens ud i menulinjen og opfører sig helt forskelligt under overfladen. Den ene er din at undersøge og ændre; den anden er udrullet og bliver gendannet ved næste tjek.

Den forskel betyder noget, fordi administrerede og personlige konfigurationer styres forskelligt. En profil, der er installeret af styringen, bliver erstattet eller anvendt igen, så en lokal ændring enten fejler eller stille ruller tilbage. Spørg ejeren om typen, gatewayens identitet og godkendelsesmetoden i stedet for at reverse-engineere en fil, du ikke kontrollerer.

Læs VPNType før alt andet i nyttelasten

Apples skema for administreret VPN-nyttelast erklærer forbindelsestypen i nøglen VPNType, inde i en ordbog, hvis PayloadType er com.apple.vpn.managed. Værdien er et kort token som IKEv2, IPsec, L2TP eller VPN, og alt andet i nyttelasten fortolkes efter det token.

<key>PayloadType</key>
<string>com.apple.vpn.managed</string>
<key>VPNType</key>
<string>IKEv2</string>
<key>IKEv2</key>
<dict>
  <key>RemoteAddress</key>
  <string>vpn.head-office.example</string>
  <key>RemoteIdentifier</key>
  <string>ikev2.head-office.example</string>
</dict>

Dette fragment er illustrativt og ikke installerbart: det er én post i et nyttelast-array, strippet for de profiledata og legitimationsoplysninger, som en rigtig udrulning kræver. Læs det for formen, ikke for indholdet. Bemærk også, at RemoteAddress og RemoteIdentifier er forskellige felter med forskellige opgaver, selv når en udrulning giver dem den samme streng.

En ældre værdi som PPTP kan stadig optræde i en gammel fil uden at være et valg, som det nuværende macOS tilbyder til en ny konfiguration. At finde et token i en gemt profil beviser, hvad der blev skrevet, ikke hvad operativsystemet stadig accepterer.

Brugerdefinerede typer kræver VPNSubType og det ejende program

Når VPNType er VPN, skal nyttelasten også indeholde VPNSubType, som identificerer det plugin eller den Network Extension-udbyder, der implementerer forbindelsen. Det identifikator er det, der dirigerer forbindelsen til en bestemt klient, så en forkert undertype giver en profil, der installeres og derefter nægter at starte.

For udbydere baseret på app-udvidelser tilhører identifikatoren det omsluttende program og ikke et gættet udvidelsesnavn, og det er den detalje, folk normalt får galt, når de redigerer en profil i hånden. Selv en korrekt undertype beskriver klienten, ikke wireprotokollen, godkendelsesmetoden eller den fjernadgangspolitik, som klienten vil bruge.

Så en brugerdefineret nyttelast fortæller, hvilken software der ejer forbindelsen, og lidt andet. For at lære, hvad den forhandler om, skal du læse den pågældende udbyders egen dokumentation og dens konfigurerede indstillinger. At kopiere en undertype fra en anden organisations profil er ikke en konfigurationsteknik; det er et gæt, der tilfældigvis kan parses.

List, hvad Mac’en faktisk har konfigureret

Før du læser nogen fil, så spørg systemet, hvilke tjenester der findes, og hvilken tilstand de er i. Kommandolinjevisningen er hurtigere end at klikke gennem paneler, og den udskriver typen ved hver post.

scutil --nc list
scutil --nc show "Office VPN"

Den første kommando viser konfigurerede VPN-tjenester med deres aktuelle status, og den anden udskriver den valgte tjenestes indstillinger, herunder typen og den serveradresse, den kontakter. Sammenlign den adresse med den gateway, du fik at vide, du skulle forvente, fordi en forældet post, der peger på en pensioneret vært, er et almindeligt arveproblem.

Disse kommandoer viser konfiguration og status; de beviser ikke, at en tunnel bærer trafik. Hvis tjenesten er afbrudt, beskriver output en hensigt snarere end en fungerende session. En tilsluttet tjeneste uden trafik er igen et andet problem, normalt routing eller DNS snarere end protokoltypen. Hold de tre observationer adskilt, ellers falder diagnosen tilbage til gætteri.

Hold gemte indstillinger adskilt fra en levende session

En gemt profil er en hensigtserklæring. Den viser ikke, at gatewayen stadig tilbyder den tjeneste, at denne profil er den aktive, eller at en session blev forhandlet med succes. Det er tre separate spørgsmål, og hvert har sit eget bevis.

Brug ejerens statusvisning eller diagnostiske værktøjer til at identificere den aktive forbindelse og den identitet, som gatewayen fremviste. En portscanning eller et certifikat set på et uvedkommende websted besvarer ingen af spørgsmålene, og et certifikats common name er ikke det samme som den forventede fjernidentifikator.

Når den gemte type ikke længere svarer til det, gatewayen understøtter, skal du hente en erstatningsprofil hos ejeren. At ændre typestrengen oversætter ikke legitimationsoplysninger mellem protokoller, og det gør ikke en godkendelsesordning til en anden. Del også resuméet gennem den godkendte supportkanal, da eksporterede konfigurationer kan bære legitimationsoplysninger og private nøgler, som en supportanmodning aldrig havde brug for.

Relaterede artikler