Portée de la réinitialisation VPN sur Android : ce que chaque couche efface réellement
Le cache, le stockage de l'application, la réinitialisation réseau et la réinitialisation d'usine effacent des états Android différents. Associez la couche à l'état que vous soupçonnez avant de supprimer un profil.
Android propose quatre opérations distinctes que les gens appellent une réinitialisation VPN, et elles effacent des choses différentes. Vider le cache d'une application supprime des fichiers temporaires ; vider son stockage supprime le profil lui-même. Une réinitialisation réseau reconstruit la pile de connectivité, et une réinitialisation d'usine remplace la partition des données utilisateur. Choisissez l'opération selon l'état que vous soupçonnez, pas par habitude. Si vous vous trompez, le profil ou le chemin d'enrôlement dont vous aviez besoin a disparu avant que vous n'ayez diagnostiqué quoi que ce soit.
Voici la règle que j'applique à chaque appel : nommez l'état, nommez son propriétaire, puis supprimez uniquement la copie de ce propriétaire. Le reste de cette page concerne la composante Android qui détient quels octets.
Où vit réellement un profil VPN Android
Un client tiers sur un téléphone non géré conserve son profil dans son propre répertoire de données d'application, sous forme de fichier de préférences, de blob JSON ou de petite base SQLite. C'est ce répertoire que supprime l'entrée Effacer le stockage des Paramètres. Le profil n'est pas dans la liste VPN du système : cette liste contient l'enregistrement de connexion que le client a enregistré via VpnService, et comprend le nom de la connexion, le paquet propriétaire et tout indicateur toujours actif défini par l'utilisateur.
VpnService est de la plomberie, pas du stockage. Le client demande le consentement une fois, construit une interface tun et déplace les paquets lui-même, donc la plateforme n'a jamais besoin de comprendre le format du profil. C'est pourquoi un fichier de configuration copié depuis un autre téléphone s'importe souvent comme un profil vide ou échoue à la validation.
Les identifiants suivent un autre chemin. Une clé ou un certificat obtenu via le KeyChain du système reste dans un magasin géré par le système, donc supprimer les données de l'application peut laisser l'identifiant utilisable et ne retirer que l'alias du client vers celui-ci.
Les appareils gérés ajoutent un second propriétaire. Un profil professionnel créé par un EMM exécute sa propre copie du client sous sa propre politique, et un VPN toujours actif peut être épinglé par la politique de l'appareil pour que l'utilisateur ne puisse pas le déconnecter. Sur ces appareils, le profil est généralement provisionné lors de l'enrôlement plutôt que saisi à la main. La récupération est alors une décision de ré-enrôlement, pas de ré-import.
Cache, stockage, réinitialisation réseau, réinitialisation d'usine
Les quatre opérations correspondent à ces frontières. Lisez la ligne de l'état que vous soupçonnez avant de toucher à quoi que ce soit.
| Operation | What it removes | What survives |
|---|---|---|
| Clear cache | Temporary files, including any diagnostic bundle the client wrote there | Profile, credentials, enrollment |
| Clear storage | The app's preferences, databases and saved profile | KeyChain entries, other apps, device policy |
| Network reset | Wi-Fi, mobile and Bluetooth registrations, and on most builds the saved VPN entries | App data, KeyChain, work profile |
| Factory reset | The user data partition, accounts and device-bound keys | Nothing on the device |
Vider le cache est le plus sûr et le moins utile. Cela supprime des fichiers temporaires, qui est aussi l'endroit où un client a peut-être placé le journal qu'un agent de support vient de vous demander. Le guide de dépannage des applications d'Android traite le cache et le stockage comme deux suppressions différentes, et vous devriez faire de même.
Effacer le stockage est la véritable réinitialisation par application. Cela supprime le profil, la passerelle enregistrée et les indicateurs de confiance que le client conservait pour certains réseaux. Cela ne révoque pas les entrées du KeyChain, ne supprime pas un enregistrement VPN système appartenant à une autre application et, sur un profil géré, ne supprime pas la politique qui a poussé le profil au départ.
La réinitialisation réseau des Paramètres s'applique à tout l'appareil, et sa portée exacte change selon le fabricant et la version d'Android. La boîte de confirmation de votre build est la seule déclaration fiable de ce qu'elle oubliera.
Notez d'abord le chemin de retour
Avant toute étape destructrice, notez cinq choses : version du client, nom du profil, adresse de la passerelle, propriétaire du service et l'étape exacte où la connexion échoue.
Ces cinq faits séparent une panne du client d'une panne de politique ou de serveur. Un délai expiré, un rejet de certificat et un refus immédiat sont trois pannes différentes, et chacune désigne un propriétaire différent. Effacez d'abord le stockage et vous perdez les preuves côté client qui les auraient distinguées. Conservez une copie assainie du journal tant qu'il existe encore.
Confirmez ensuite comment la connexion serait recréée. Un nom d'affichage et un nom d'hôte ne suffisent pas lorsque le profil dépendait d'un certificat client, d'une configuration gérée ou d'un enrôlement MFA lié à cet appareil.
Le verrouillage d'amorçage que personne ne prévoit
Un mode de défaillance mérite sa propre section. Si le seul endroit où télécharger le profil est un portail interne accessible uniquement via le tunnel que vous êtes sur le point de supprimer, vider le stockage crée une impasse sans issue dans l'application.
Un VPN toujours actif avec l'option bloquer les connexions sans VPN transforme cela en panne totale : le téléphone n'a aucun chemin fonctionnel vers le portail, et le client n'a aucun profil pour monter le tunnel. Les deux états se maintiennent mutuellement en place.
La sortie est procédurale, pas technique. Exportez ou photographiez la configuration pendant que le tunnel fonctionne encore, confirmez que le portail dispose d'une route qui ne dépend pas du VPN, et seulement ensuite effacez quoi que ce soit. Sur un appareil géré, demandez à l'administrateur quel chemin de récupération existe avant de toucher au profil.
Vérifiez le tunnel reconstruit
Une fois le profil revenu, testez dans l'ordre : résolution de noms, une connexion TCP vers un hôte interne connu et le comportement de blocage en cas d'échec sur lequel vous comptez réellement. L'ordre compte car un tunnel peut monter et fuir quand même le DNS.
Une icône de clé dans la barre d'état prouve que l'interface existe, rien de plus.
Si la connexion échoue encore après une réinitialisation ciblée, cessez d'augmenter la taille de l'opération. Conservez les preuves avant et après, notez quelle couche vous avez effacée et transmettez le cas au propriétaire du composant avec ces cinq faits. Une réinitialisation d'usine est une décision distincte au coût bien plus élevé, et ce n'est pas l'étape suivante d'une liste de vérification VPN.