Los perfiles llegan a Ajustes con un nombre, un firmante y un botón Instalar, y la línea del firmante es la parte que lee la mayoría. Esa línea responde a una pregunta: quién empaquetó estos ajustes, según las reglas de verificación de firmas. No dice que la carga de VPN apunte a la puerta de enlace de tu empleador, ni que un certificado raíz incrustado pertenezca a tu almacén de confianza TLS. El recorrido siguiente abre el paquete en el orden en que el dispositivo lo aplicará.

Empieza por el sobre: quién firmó este perfil

En iOS el perfil aparece en Ajustes, General, VPN y Gestión de dispositivos, con el firmante encima del botón Instalar. Lee ese nombre antes de tocar nada y pregúntate si es la organización de la que esperabas recibir ajustes. Una firma válida de una parte que no reconoces sigue siendo una firma válida, y autoriza su configuración, no la tuya. La misma pantalla también indica si el perfil está firmado o no.

Si tienes el archivo en un Mac, inspecciónalo antes de que llegue al teléfono. La herramienta de seguridad descodifica el sobre CMS e imprime el plist que leerá el dispositivo, es decir, el mismo contenido sin un botón Instalar por medio. La documentación de Apple sobre la aplicación forzosa de la configuración describe la firma como validación de origen, que es justo el alcance descrito aquí.

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

Detente aquí si el firmante no es quien esperabas, o si el archivo no está firmado y llegó por un canal que no puede responder por él. Nada de lo que sigue en este recorrido hace fiable un sobre no fiable.

Abre cada carga útil y nombra qué instala

Un perfil es un contenedor, y la parte interesante es PayloadContent la matriz que hay dentro. Cada entrada lleva un PayloadType que dice qué instalará el dispositivo: una configuración VPN gestionada, una identidad PKCS#12, un certificado raíz o una inscripción de gestión. Imprime los tipos antes de leer cualquiera de los ajustes.

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

Una carga de VPN nombra una conexión: dirección del servidor, método de autenticación y, quizá, una regla por aplicación o a demanda. Una carga de identidad aporta la credencial de cliente que presentará esa conexión. Una carga de certificado raíz añade un ancla de confianza, y una carga de gestión entrega el control continuo a un servidor. Son cuatro compromisos distintos, y la firma cubre el paquete en lugar de avalar cada uno por separado. Léelos en ese orden, porque la VPN es inútil sin la identidad y la identidad significa poco sin saber quién la emitió.

La protección del archivo con contraseña es otra propiedad aparte. Un paquete cifrado oculta el contenido a quien no tiene la contraseña; no decide si deberías autorizar lo que hay dentro. Trata la contraseña como un mecanismo de entrega, no como una revisión.

Sigue el rastro de los certificados hasta la conexión que los usa

Enumera los certificados del paquete y asigna cada uno a una tarea. El certificado de cliente identifica este dispositivo ante la puerta de enlace, la CA que lo emitió pertenece a la cadena de confianza de esa conexión, y una raíz instalada para un proxy o un servicio interno no es automáticamente un ancla para cada sitio HTTPS. En iOS, una raíz instalada a mano sigue sin ser de confianza para TLS hasta que la activas en Ajustes, Información, Ajustes de confianza de certificados, mientras que una raíz entregada por la gestión es de confianza sin ese paso. Esa diferencia es exactamente por qué importa el propósito de la carga.

openssl pkcs7 -inform DER -in corp-vpn.mobileconfig -print_certs -noout
security find-certificate -a -c "Corp Root" -p | openssl x509 -noout -subject -dates

Un proveedor que transporta tu tráfico no es, por ese motivo, el extremo TLS de cada sitio que visitas. La interceptación necesita la ruta del tráfico y un ancla de confianza que la aplicación acepte, y un perfil que lleva un certificado no demuestra ninguna de las dos cosas. Pregunta qué conexión usa el certificado y qué aplicaciones lo aceptarán, en lugar de suponer que instalar el perfil lo descifra todo.

Después de instalar: verifica y sabe qué hace la eliminación

Una vez instalado el perfil, confírmalo desde el dispositivo y no desde el archivo que descargaste. La pantalla de ajustes enumera el perfil instalado, su firmante y sus cargas, y la pantalla de VPN muestra si la conexión está configurada como se pretende. Borrar el archivo descargado no elimina nada; la configuración instalada es un objeto aparte.

profiles show -type configuration
scutil --nc list

Si el perfil incluye una inscripción de gestión, lee las consecuencias de la eliminación antes de instalarlo, no después. Eliminar esa inscripción se lleva sus configuraciones asociadas y puede eliminar aplicaciones gestionadas, según cómo se inscribiera el dispositivo. No es un paso de reparación que probar cuando un certificado parece incorrecto. Pregunta al administrador qué carga tiene el problema antes de eliminar nada.

El recorrido termina con cuatro respuestas separadas: quién firmó el paquete, qué cargas instala, qué identidad y confianza usa cada conexión y qué se llevaría la eliminación. Mantenlas separadas y un perfil firmado se convierte en una decisión revisada en lugar de una marca verde.

Artículos relacionados