Supprimer un VPN sur macOS ressemble à une seule action et en représente en réalité au moins quatre. Le bouton des Réglages Système supprime un service réseau du magasin de configuration du système. Il ne supprime pas l’application cliente, l’extension réseau que cette application a installée, le justificatif présent dans votre trousseau, ni un profil poussé par la gestion des appareils. Savoir quel objet possède chaque symptôme est ce qui empêche un VPN supprimé de revenir discrètement.

Ce que le bouton Supprimer la configuration supprime vraiment

Chaque VPN que vous ajoutez devient un service réseau, le même type d’objet que le Wi-Fi ou le pont Thunderbolt. macOS les conserve tous dans /Library/Preferences/SystemConfiguration/preferences.plist, chacun avec un identifiant de service, un nom d’affichage et un dictionnaire de configuration qui décrit le type de tunnel, l’adresse du serveur et la manière dont le tunnel démarre.

Lorsque vous ouvrez Réglages Système et VPN, cliquez sur le bouton d’information à côté d’un service, choisissez Supprimer la configuration et confirmez, macOS arrête le tunnel, supprime cet objet de service et réécrit le magasin. Le démontage est complet pour ce que le système possède : le service a disparu de la liste et rien ne le démarre à l’ouverture de session.

Ce que le bouton ne peut pas atteindre, c’est tout ce que possède un autre sous-système. Le paquet de l’application se trouve dans /Applications. Un client NetworkExtension s’exécute comme une extension système enregistrée séparément de sa configuration. Les justificatifs sont des éléments de trousseau soumis aux contrôles d’accès du trousseau qui les détient. Un profil de configuration appartient au système de profils. Supprimez le service et les quatre restent exactement là où ils étaient.

Lister ce que le Mac croit encore installé

Faites l’inventaire avant de supprimer quoi que ce soit. Trois commandes couvrent les trois couches qui produisent la même panne visible :

scutil --nc list
networksetup -listallnetworkservices
profiles -P

scutil --nc list est la vue de référence des configurations VPN, avec l’état de connexion, le nom du service et l’identifiant de service. Il montre souvent des entrées qui n’apparaissent jamais dans la liste des réglages : des services résiduels d’un client désinstallé il y a des mois et des configurations à la demande qui démarrent en silence. networksetup -listallnetworkservices affiche les services réseau sous les noms attendus par les outils en ligne de commande, et c’est ce qu’il vous faut pour supprimer par nom. profiles -P liste les profils de configuration installés ; sur un Mac géré, le VPN n’est peut-être pas un service que vous avez ajouté, mais une charge utile à l’intérieur de l’un de ces profils.

Lisez les listes ensemble au lieu de faire confiance à la première. Un service présent dans scutil mais absent des réglages signifie généralement qu’un client tiers possède le tunnel et le présente dans sa propre fenêtre. Un service visible dans les deux vues mais grisé dans les réglages signifie une politique. Un nom qui réapparaît après suppression signifie que quelque chose le recrée, et ce quelque chose est la vraie cible.

Supprimer le service par son propriétaire

Pour un service que vous avez ajouté vous-même, restez sur le chemin documenté : Réglages Système, VPN, le bouton d’information, Supprimer la configuration. Apple documente ce parcours, et il garde le magasin de configuration cohérent. Modifier à la main preferences.plist pendant que la pile réseau tourne, c’est ainsi que l’on obtient des services en double ou zombies qu’aucune interface ne supprimera.

Depuis un terminal, supprimez le service par son nom avec networksetup -removenetworkservice "Service Name", puis confirmez avec scutil --nc list. La commande agit sur la même liste de services que l’interface, donc un nom qui n’apparaît pas dans networksetup -listallnetworkservices ne sera supprimé par aucun des deux chemins. Quand un client possède le tunnel, utilisez d’abord le chemin de suppression ou de désinstallation de ce client, car il reconstruit le service au prochain lancement.

Si le VPN provient de la gestion des appareils, ce n’est pas vous le propriétaire. Les profils installés par un MDM peuvent être marqués non supprimables, et même un profil supprimable peut être repoussé lors du prochain enregistrement. Confirmez avec profiles -P, puis utilisez le processus de sortie de votre organisation. Supprimer la charge utile localement échoue ou déclenche une réinstallation.

Les résidus qui se reconnectent sans service

Le rapport habituel « il est revenu » n’est pas le service qui revient, mais l’extension qui le possède. Listez les extensions système enregistrées et les extensions d’app de type extension réseau :

systemextensionsctl list
pluginkit -m -p com.apple.networkextension.packet-tunnel

Un client NetworkExtension garde son fournisseur de tunnel installé sous son propre identifiant, séparément de toute configuration. L’extension peut rester active une fois la configuration disparue, et l’agent de barre de menus du client peut créer une nouvelle configuration au prochain démarrage, en réutilisant parfois le nom que vous venez de supprimer. Vérifiez les éléments d’ouverture et l’assistant de l’éditeur ici : /Library/LaunchDaemons avant de conclure que la suppression a échoué.

Les justificatifs sont le deuxième résidu. Un mot de passe ou un certificat client enregistré dans le trousseau de session n’est pas supprimé avec le service, et un secret partagé IPSec vit historiquement dans le trousseau système, ce qui explique que supprimer puis rajouter saute parfois l’invite de mot de passe. Si le Mac quitte votre contrôle, localisez l’élément par nom de service dans Trousseau d’accès et révoquez le compte, le certificat ou la clé de pair que représente le justificatif enregistré. A copied configuration file is a live credential even after local removal.

Vérifier la suppression et lire correctement un profil qui revient

La suppression est terminée quand le service a disparu des deux vues et le reste après un redémarrage. Vérifiez scutil --nc list pour l’identifiant de service, confirmez que la résolution de noms utilise le résolveur attendu avec scutil --dns, puis redémarrez une fois, car les règles à la demande et les agents d’ouverture de session sont les deux choses qui ne se montrent qu’au démarrage à froid.

S’il est toujours là, ne supprimez pas d’autres objets. Déterminez quelle couche l’a recréé : un profil MDM repousse le service, un agent client le reconstruit, ou le service n’a jamais été supprimé parce que le nom ne correspondait pas. Cette réponse décide si vous avez besoin du désinstalleur de l’éditeur, de votre équipe informatique ou d’un nouveau passage par la même boîte de dialogue. Le guide de suppression d’Apple couvre le chemin pris en charge pour les services que vous avez ajoutés ; les résidus sont la partie que vous devez vérifier vous-même : remove a VPN configuration.

Articles similaires