Noen kaller en Mac-tilkobling «Kontor-VPN», navnet overlever to servermigreringer, og alle fortsetter å kalle den kontor-VPN lenge etter at protokollen er endret. Navnet er et kallenavn som er lagret ved siden av konfigurasjonen; det er ikke bevis for hva Macen forhandler om. Å lese den erklærte typen krever ett felt, og å skille den lagrede typen fra en levende sesjon krever ett steg til. Her er rekkefølgen som unngår gjetting.

Navnet er et kallenavn, nyttelasten erklærer typen

En macOS VPN-tjeneste er en systemkonfigurasjonspost med et vist navn, en eierklient og et sett typede innstillinger. Det viste navnet er fri tekst, redigerbar av den som opprettet posten, og det er den delen brukerne ser i menylinjen. Innstillingene bærer fakta: hvilken tilkoblingstype, hvilken gateway, hvilken autentiseringsordning. Ingenting holder de to i takt, og derfor kan en profil kalt «L2TP-kontor» være en IKEv2-tjeneste.

For en personlig opprettet tilkobling viser eierprogrammet eller systemets eget VPN-panel disse innstillingene. På en administrert Mac tilhører profilen administratoren, og det riktige trekket er å be om et ikke-hemmelig sammendrag i stedet for å redigere en administrert nyttelast. De to tilfellene ser like ut i menylinjen og oppfører seg helt forskjellig under overflaten. Den ene er din å undersøke og endre; den andre er utrullet og vil bli gjenopprettet ved neste sjekk.

Den forskjellen betyr noe fordi administrerte og personlige konfigurasjoner styres ulikt. En profil som er installert av styringen, blir erstattet eller brukt på nytt, så en lokal endring enten feiler eller rulles stille tilbake. Spør eieren om typen, gatewayens identitet og autentiseringsmetoden i stedet for å reverse-engineere en fil du ikke kontrollerer.

Les VPNType før alt annet i nyttelasten

Apples skjema for administrert VPN-nyttelast erklærer tilkoblingstypen i nøkkelen VPNType, inne i en ordbok der PayloadType er com.apple.vpn.managed. Verdien er et kort token som IKEv2, IPsec, L2TP eller VPN, og alt annet i nyttelasten tolkes etter det tokenet.

<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 fragmentet er illustrativt og ikke installerbart: det er én post i en nyttelastmatrise, strippet for profiledataene og legitimasjonen en reell utrulling trenger. Les det for formen, ikke for innholdet. Legg også merke til at RemoteAddress og RemoteIdentifier er forskjellige felt med forskjellige oppgaver, selv når en utrulling gir dem samme streng.

En eldre verdi som PPTP kan fortsatt forekomme i en gammel fil uten å være et valg dagens macOS tilbyr for en ny konfigurasjon. Å finne et token i en lagret profil beviser hva som ble skrevet, ikke hva operativsystemet fortsatt godtar.

Egendefinerte typer trenger VPNSubType og eierprogrammet

Når VPNType er VPN, må nyttelasten også inneholde VPNSubType, som identifiserer programtillegget eller Network Extension-leverandøren som implementerer tilkoblingen. Det er denne identifikatoren som ruter tilkoblingen til en bestemt klient, så en feil undertype gir en profil som installeres og deretter nekter å starte.

For leverandører basert på apputvidelse tilhører identifikatoren appen som omslutter den, og ikke et gjettet utvidelsesnavn, og det er detaljen folk vanligvis gjør feil når de redigerer en profil for hånd. Selv en korrekt undertype beskriver klienten, ikke wire-protokollen, autentiseringsmetoden eller ekstern tilgangspolicyen som klienten vil bruke.

Så en egendefinert nyttelast forteller hvilken programvare som eier tilkoblingen, og lite annet. For å lære hva den forhandler om, les leverandørens egen dokumentasjon og de konfigurerte innstillingene. Å kopiere en undertype fra en annen organisasjons profil er ikke en konfigurasjonsteknikk; det er en gjetning som tilfeldigvis kan parses.

List opp hva Macen faktisk har konfigurert

Før du leser noen fil, spør systemet hvilke tjenester som finnes og hvilken tilstand de er i. Kommandolinjevisningen er raskere enn å klikke gjennom paneler, og den skriver ut typen ved hver post.

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

Den første kommandoen viser konfigurerte VPN-tjenester med gjeldende status, og den andre skriver ut innstillingene til den valgte tjenesten, inkludert typen og serveradressen den vil kontakte. Sammenlign den adressen med gatewayen du fikk beskjed om å forvente, fordi en utdatert post som peker på en pensjonert vert, er et vanlig arveproblem.

Disse kommandoene viser konfigurasjon og status; de beviser ikke at en tunnel bærer trafikk. Hvis tjenesten er frakoblet, beskriver utdata en intensjon og ikke en fungerende sesjon. En tilkoblet tjeneste uten trafikk er igjen et annet problem, vanligvis ruting eller DNS og ikke protokolltypen. Hold de tre observasjonene adskilt, ellers faller diagnosen tilbake til gjetting.

Hold lagrede innstillinger adskilt fra en levende sesjon

En lagret profil er en intensjonserklæring. Den viser ikke at gatewayen fortsatt tilbyr den tjenesten, at denne profilen er den aktive, eller at en sesjon ble forhandlet vellykket. Det er tre separate spørsmål, og hvert har sitt eget bevis.

Bruk eierens statusvisning eller diagnostiske verktøy for å identifisere den aktive tilkoblingen og identiteten gatewayen presenterte. En portskanning eller et sertifikat sett på et urelatert nettsted besvarer ingen av de to spørsmålene, og et sertifikats common name er ikke det samme som den forventede eksterne identifikatoren.

Når den lagrede typen ikke lenger passer til det gatewayen støtter, skaff en erstatningsprofil fra eieren. Å endre typestrengen oversetter ikke legitimasjon mellom protokoller, og det gjør ikke én autentiseringsordning til en annen. Del sammendraget også gjennom den godkjente støttekanalen, siden eksporterte konfigurasjoner kan bære legitimasjon og private nøkler som en støtteforespørsel aldri trengte.

Relaterte artikler