Hvad et Mac VPN-eksport indeholder, og hvad det efterlader
Et Mac VPN-eksport indeholder indstillinger og nogle gange en privat nøgle, men ikke nøgleringens adgangskode eller enhedens registrering. Kontroller hver del først.
Klik på Export i en Mac VPN-klient, og du får en fil, der beskriver en forbindelse uden at være en. Serveradresse, port, protokol og ofte certifikaterne ligger indeni. Loginadgangskoden, adgangsfrasen til en privat nøgle og registreringen, der autoriserer netop denne Mac, gør som regel ikke. Derfor kan en profil importeres rent, dukke op på klientens liste og alligevel fejle ved den første godkendelsesanmodning; hullet er en egenskab ved formatet, ikke en beskadiget download.
| Part of the connection | Where it lives on the old Mac | What an export does with it |
|---|---|---|
| Server, port, protocol, routes | Client profile or managed settings | Usually included when the client exports configuration |
| Client certificate and private key | Inside the package, the login keychain, or issued by MDM | Included only if the format packs it; a keychain-held key stays behind |
| Login password, key passphrase | Login keychain | Left out by design |
| Device authorization or enrollment | Server side, bound to the certificate or the device record | Not transferable; the new device has to enroll |
Hvad den eksporterede fil faktisk indeholder
En eksport er en beholder, og filtypen fortæller mindre end indholdet. OpenVPN-profiler er tekst: direktiver plus valgfrie inline-<ca>, <cert> og <key>-blokke. Tunnelblick-opsætninger er komprimerede arkiver af konfigurationer og indstillinger. En administreret .mobileconfig er en plist af nyttelaster. To lister besvarer det meste af spørgsmålet, før du importerer noget.
For en tekstprofil tælles de PEM-blokke, den bærer: grep -c "PRIVATE KEY" your-profile.ovpn. Et resultat, der ikke er nul, betyder, at filen indeholder nøglemateriale og fra da af skal håndteres som en adgangskode. For et arkiv listes det uden at udpakke: tar -tf export.tbz, eller unzip -l export.zip, hvis klienten har lavet en zip. Nøglefiler, certifikatfiler og op- eller ned-skripter på den liste er de dele, som en nyudstedt brugerkonto ikke genskaber.
Det modsatte tilfælde betyder lige så meget. Når profilen peger på en nøgle ved filnavn i stedet for at indlejre den, er eksporten med vilje ufuldstændig, og den manglende halvdel skal komme fra den, der udstedte den. Det er i orden at kopiere filen med, når du ejer certifikatmyndigheden; det er ikke i orden, når filen kom med et enhedsbundet certifikat, der blev genereret på den gamle Mac.
Hvorfor nøgleringens halvdel aldrig rejser med
macOS opbevarer VPN-adgangskoder og nøgleadgangsfraser i login-nøgleringen, og klienter gemmer dem der i stedet for i deres egne indstillingsfiler. Tunnelblick siger det i sin eksport- og importvejledning: opsætningsarkivet bærer konfigurationer og indstillinger og udelader brugernavne, adgangskoder og adgangsfraser, der ligger i nøgleringen. Udeladelsen er bevidst. Nøgleringselementer er beskyttet for hver bruger og hver maskine, så et kopieret element ikke har gyldig adgangskontrol på destinationen, hvilket efterlader enten en ubrugelig fil eller en hemmelighed i klartekst.
Du kan bekræfte, hvor legitimationsoplysningen bor, før du planlægger flytningen. security find-internet-password -s vpn.example.com udskriver attributter for et matchende element og afslutter med en ikke-nul-kode, når der ikke er noget; den samme kommando med -g ville bede om at afsløre adgangskoden, og derfor er forespørgslen uden den den sikrere kontrol. Et hit der betyder, at profilen ikke bærer adgangskoden og ikke kan tvinges til det. Det betyder også, at adgangskoden vil blive spurgt om igen på den nye Mac, og en «Tillad altid»-tilladelse på den gamle tæller ikke der.
Ikke enhver hemmelighed er dog et nøgleringselement. Tunnelblicks egen pakkedokumentation bemærker, at en pakke kan indeholde nøgle-, certifikat- og scriptfiler. Så at eksporten udelader nøgleringselementer er ikke det samme udsagn som, at eksporten er sikker at sende med e-mail; behandl arkivet som følsomt, indtil du har listet, hvad der er i det.
Indbyggede og administrerede VPN'er har ingen eksportvej
Forbindelser, der konfigureres via Systemindstillinger, tilbyder ingen understøttet eksport. scutil --nc list viser de tjenester, systemet kender, og scutil --nc show "Work VPN" udskriver én tjenestes konfiguration, nok til at læse dens server og protokol. Ingen af dem er et migreringsværktøj. De tjenesteidentifikatorer, der gemmes i /Library/Preferences/SystemConfiguration/preferences.plist, er referencer ind i den fil, så at kopiere filen og omskrive identifikatorer er ikke en understøttet overførsel og kan forstyrre ubeslægtede netværkstjenester på destinationen.
Den understøttede vej er den, Apple dokumenterer: installer en VPN-indstillingsfil, som en administrator har leveret, eller indtast de indstillinger, operatøren giver dig. Når forbindelsen er administreret, bed om en frisk fil eller en frisk registrering i stedet for at genopbygge den ud fra et skærmbillede af den gamle dialog. For en profil, der skubbes af MDM, kan certifikatets nyttelast bære identiteten, mens den private nøgle genereres på enheden, og i så fald kan selv en fejlfri kopi af den gamle profil ikke godkende den nye Mac.
Kontroller gendannelsen i stedet for at stole på listen
En profil på listen og en fungerende tunnel er to forskellige tilstande, og kun den ene er værd at rapportere. Efter import og forbindelse kontrolleres det, at tunnelinterfacet findes, og derefter kontrolleres det, hvad tunnelen gør.
ifconfig | grep -A3 utun viser tunnelinterfacet og dets adresser. scutil --dns | grep nameserver viser, hvilke resolvere der er aktive efter forbindelsen, og det er her, split-DNS-profiler normalt afviger. Nå derefter den ressource, der faktisk betyder noget: curl -sS -o /dev/null -w "%{http_code}" https://intranet.example.com. Hvis alle tre består, er indstillinger, DNS og ruter ankommet; et grønt ikon i klienten betyder intet af det i sig selv.
To fejl optræder ofte efter en import, og begge får filen skylden. At offentlige navne opløses, mens interne ikke gør, betyder normalt, at profilens DNS-servere blev droppet, eller at split-DNS ikke blev bevaret. En tunnel, der kommer op og ikke sender trafik, betyder normalt, at ruter eller server-side autorisation ikke fulgte profilen. At importere det samme arkiv igen frembringer begge.
Før du pensionerer den gamle Mac
At slette eksporten er ikke tilbagekaldelse. Hvis den gamle enhed godkendte med et certifikat, stoler serveren stadig på det certifikat, indtil det tilbagekaldes eller genudstedes. Hvis den godkendte med en delt konto, kan sessioner på den konto stadig være aktive. Tag server-side-skridtet, mens hardwaren stadig er foran dig.
Opbevar den nye profil sammen med dine andre legitimationsoplysninger, når den indeholder en nøgle, og skriv adgangskoden ind i klienten, så den ender i den nye nøglering i stedet for i en fil. Sidste kontrol: forbind fra erstatningen, mens den gamle Mac er slukket. En overdragelse, der kun virker, mens kildemaskinen er online, har aldrig været komplet.