Installere en signert VPN-profil på iPhone? Les nyttelastene
En signert profil beviser hvem som pakket den, ikke hva den installerer. Gå gjennom konvolutten, hver nyttelast og hvert sertifikat før du stoler på en VPN eller en rot-CA.
Profiler kommer inn i Innstillinger med et navn, en signerer og en Installer-knapp, og linjen med signereren er den delen folk flest les. Den linjen svarer på ett spørsmål: hvem som pakket disse innstillingene, etter reglene for signaturverifisering. Den sier ikke at VPN-nyttelasten peker mot gatewayen til arbeidsgiveren din, eller at et innebygd rotsertifikat hører hjemme i TLS-tillitslageret ditt. Gjennomgangen nedenfor åpner pakken i den rekkefølgen enheten bruker den.
Start med konvolutten: hvem signerte denne profilen
På iOS vises profilen under Innstillinger, Generelt, VPN og Enhetsadministrasjon, med signereren over Installer-knappen. Les det navnet før du trykker på noe, og spør om det er organisasjonen du forventet å få innstillinger fra. En gyldig signatur fra en part du ikke kjenner er fortsatt en gyldig signatur, og den autoriserer deres konfigurasjon, ikke din. Den samme skjermen forteller også om profilen i det hele tatt er signert.
Har du filen på en Mac, undersøk den før den når telefonen. Security-verktøyet dekoder CMS-konvolutten og skriver ut plisten enheten leser, det samme innholdet uten en Installer-knapp i veien. Apples konfigurasjonshåndheving dokumentasjon beskriver signering som opphavsvalidering, nettopp det omfanget som beskrives her.
security cms -D -i corp-vpn.mobileconfig -o corp-vpn.plist
plutil -p corp-vpn.plist
Stopp her hvis signereren ikke er den du forventet, eller hvis filen er usignert og kom gjennom en kanal som ikke kan gå god for den. Ingenting senere i denne gjennomgangen gjør en ubetrodd konvolutt til å stole på.
Åpne hver nyttelast og navngi hva den installerer
En profil er en beholder, og den interessante delen er PayloadContent-matrisen inne i den. Hver oppføring bærer en PayloadType som sier hva enheten vil installere: en administrert VPN-konfigurasjon, en PKCS#12-identitet, et rotsertifikat eller en administrasjonsregistrering. Skriv ut typene før du leser noen av innstillingene.
plutil -extract PayloadContent xml1 -o - corp-vpn.plist |
grep -E 'PayloadType|PayloadDisplayName'
En VPN-nyttelast navngir en tilkobling: serveradresse, autentiseringsmetode og muligens en per-app- eller on-demand-regel. En identitetsnyttelast leverer klientlegitimasjonen som den tilkoblingen presenterer. En rotsertifikatnyttelast legger til et tillitsanker, og en administrasjonsnyttelast gir en server varig kontroll. Det er fire forskjellige forpliktelser, og signaturen dekker pakken i stedet for å gå god for hver av dem separat. Les dem i den rekkefølgen, fordi VPN-en er ubrukelig uten identiteten og identiteten sier lite uten å vite hvem som utstedte den.
Passordbeskyttelse på filen er nok en egen egenskap. En kryptert pakke skjuler innholdet for noen uten passordet; den avgjør ikke om du bør autorisere det som er inni. Behandle passordet som en leveringsmekanisme, ikke som en gjennomgang.
Spor sertifikatene til tilkoblingen som bruker dem
List sertifikatene i pakken og koble hvert til en oppgave. Klientcertifikatet identifiserer denne enheten mot gatewayen, CA-en som utstedte det hører hjemme i tillitskjeden for den tilkoblingen, og en rot installert for en proxy eller en intern tjeneste er ikke automatisk et anker for hvert HTTPS-nettsted. På iOS forblir en rot installert for hånd ubetrodd for TLS til du slår den på under Innstillinger, Om, Innstillinger for sertifikattillit, mens en rot levert via administrasjon er betrodd uten det steget. Den forskjellen er nettopp grunnen til at formålet med nyttelasten betyr noe.
openssl pkcs7 -inform DER -in corp-vpn.mobileconfig -print_certs -noout
security find-certificate -a -c "Corp Root" -p | openssl x509 -noout -subject -dates
En leverandør som frakter trafikken din er ikke av den grunn TLS-endepunktet til hvert nettsted du besøker. Avlytting krever trafikkveien og et tillitsanker som programmet godtar, og en profil med ett sertifikat beviser ingen av delene. Spør hvilken tilkobling som bruker sertifikatet og hvilke programmer som vil godta det, i stedet for å anta at installasjon av profilen dekrypterer alt.
Etter installasjon: bekreft, og vit hva fjerning gjør
Når profilen er installert, bekreft den fra enheten i stedet for fra filen du lastet ned. Innstillingsskjermen viser den installerte profilen, signereren og nyttelastene, og VPN-skjermen viser om tilkoblingen er konfigurert som tenkt. Å slette den nedlastede filen fjerner ingenting; den installerte konfigurasjonen er et eget objekt.
profiles show -type configuration
scutil --nc list
Hvis profilen inneholder en administrasjonsregistrering, les konsekvensene av fjerning før du installerer den, ikke etterpå. Å fjerne den registreringen tar med seg de tilknyttede konfigurasjonene og kan fjerne administrerte apper, avhengig av hvordan enheten ble registrert. Det er ikke et reparasjonstrinn å prøve når et sertifikat ser galt ut. Spør administratoren hvilken nyttelast som eier problemet før du fjerner noe.
Gjennomgangen ender med fire separate svar: hvem som signerte pakken, hvilke nyttelaster den installerer, hvilken identitet og tillit hver tilkobling bruker, og hva fjerning ville ta med seg. Hold dem fra hverandre, og en signert profil blir en vurdert beslutning i stedet for et grønt hakemerke.