Profiler dyker upp i Inställningar med ett namn, en signerare och en Installera-knapp, och raden med signeraren är den del de flesta läser. Den raden svarar på en fråga: vem som paketerade de här inställningarna, enligt reglerna för signaturverifiering. Den säger inte att VPN-nyttolasten pekar mot din arbetsgivares gateway, eller att ett inbäddat rotcertifikat hör hemma i ditt TLS-förtroendelager. Genomgången nedan öppnar paketet i den ordning enheten kommer att tillämpa det.

Börja med höljet: vem signerade profilen

På iOS visas profilen under Inställningar, Allmänt, VPN och Enhetshantering, med signeraren ovanför Installera-knappen. Läs namnet innan du trycker på något och fråga dig om det är organisationen du förväntade dig att få inställningar från. En giltig signatur från en part du inte känner igen är fortfarande en giltig signatur, och den godkänner deras konfiguration, inte din. Samma skärm säger också om profilen är signerad över huvud taget.

Om du har filen på en Mac kan du granska den innan den når telefonen. Säkerhetsverktyget avkodar CMS-höljet och skriver ut den plist som enheten kommer att läsa, samma innehåll utan en Installera-knapp i vägen. Apples dokumentation om tillämpning av konfiguration beskriver signering som ursprungsvalidering, vilket är exakt det omfång som beskrivs här.

security cms -D -i corp-vpn.mobileconfig -o corp-vpn.plist
plutil -p corp-vpn.plist

Stanna här om signeraren inte är den du förväntade dig, eller om filen är osignerad och kom via en kanal som inte kan gå i god för den. Inget senare i genomgången gör ett hölje du inte litar på pålitligt.

Öppna varje nyttolast och namnge vad den installerar

En profil är en behållare, och det intressanta är PayloadContent-matrisen inuti den. Varje post har en PayloadType som talar om vad enheten ska installera: en hanterad VPN-konfiguration, en PKCS#12-identitet, ett rotcertifikat eller en hanteringsregistrering. Skriv ut typerna innan du läser några inställningar.

plutil -extract PayloadContent xml1 -o - corp-vpn.plist |
  grep -E 'PayloadType|PayloadDisplayName'

En VPN-nyttolast anger en anslutning: serveradress, autentiseringsmetod och möjligen en regel per app eller vid behov. En identitetsnyttolast tillhandahåller klientuppgiften som anslutningen ska presentera. En rotcertifikatnyttolast lägger till ett förtroendeankare, och en hanteringsnyttolast överlämnar löpande kontroll till en server. Det är fyra olika åtaganden, och signaturen täcker paketet i stället för att gå i god för var och en separat. Läs dem i den ordningen, eftersom VPN:et är värdelöst utan identiteten och identiteten betyder lite utan att veta vem som utfärdade den.

Lösenordsskydd på filen är ännu en separat egenskap. Ett krypterat paket döljer innehållet för den som saknar lösenordet; det avgör inte om du bör godkänna det som finns inuti. Behandla lösenordet som en leveransmekanism, inte som en granskning.

Spåra certifikaten till den anslutning som använder dem

Lista certifikaten i paketet och matcha varje certifikat mot en uppgift. Klientcertifikatet identifierar enheten mot gatewayen, CA:n som utfärdade det hör hemma i förtroendekedjan för den anslutningen, och ett rotcertifikat som installerats för en proxy eller en intern tjänst är inte automatiskt ett ankare för varje HTTPS-webbplats. På iOS förblir ett rotcertifikat som installerats för hand obetrodd för TLS tills du aktiverar det under Inställningar, Om, Inställningar för certifikatförtroende, medan ett rotcertifikat som levererats via hantering är betrott utan det steget. Den skillnaden är precis varför nyttolastens syfte spelar roll.

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 leverantör som transporterar din trafik är inte därför TLS-slutpunkt för varje webbplats du besöker. Avlyssning kräver trafikvägen och ett förtroendeankare som appen accepterar, och en profil med ett certifikat bevisar inget av det. Fråga vilken anslutning som använder certifikatet och vilka appar som kommer att acceptera det, i stället för att anta att installationen av profilen dekrypterar allt.

Efter installationen: verifiera och vet vad borttagning gör

När profilen är installerad, verifiera den från enheten i stället för från filen du laddade ner. Installationsskärmen listar den installerade profilen, dess signerare och dess nyttolaster, och VPN-skärmen visar om anslutningen är konfigurerad som avsett. Att radera den nedladdade filen tar bort ingenting; den installerade konfigurationen är ett separat objekt.

profiles show -type configuration
scutil --nc list

Om profilen innehåller en hanteringsregistrering bör du läsa konsekvenserna av borttagning innan du installerar den, inte efter. Att ta bort den registreringen tar med sig tillhörande konfigurationer och kan ta bort hanterade appar, beroende på hur enheten registrerades. Det är inte ett reparationssteg att prova när ett certifikat ser fel ut. Fråga administratören vilken nyttolast som äger problemet innan du tar bort något.

Genomgången slutar med fyra separata svar: vem som signerade paketet, vilka nyttolaster det installerar, vilken identitet och vilket förtroende varje anslutning använder, och vad en borttagning skulle ta med sig. Håll dem åtskilda så blir en signerad profil ett granskat beslut i stället för en grön bock.

Relaterade artiklar