Η αφαίρεση ενός VPN στο macOS μοιάζει με μία ενέργεια και στην πραγματικότητα είναι τουλάχιστον τέσσερις. Το κουμπί στις Ρυθμίσεις Συστήματος διαγράφει μια υπηρεσία δικτύου από την αποθήκη ρυθμίσεων του συστήματος. Δεν διαγράφει την εφαρμογή πελάτη, την επέκταση δικτύου που εγκατέστησε αυτή η εφαρμογή, το διαπιστευτήριο στο μπρελόκ κλειδιών σας ή ένα προφίλ που έστειλε η διαχείριση συσκευών. Το να γνωρίζετε ποιο αντικείμενο κατέχει κάθε σύμπτωμα είναι αυτό που εμποδίζει ένα αφαιρεμένο VPN να επιστρέψει ήσυχα.

Τι διαγράφει στην πραγματικότητα το κουμπί Αφαίρεση ρύθμισης

Κάθε VPN που προσθέτετε γίνεται υπηρεσία δικτύου, το ίδιο είδος αντικειμένου με το Wi-Fi ή το Thunderbolt Bridge. Το macOS τα κρατά όλα στο /Library/Preferences/SystemConfiguration/preferences.plist, το καθένα με αναγνωριστικό υπηρεσίας, όνομα εμφάνισης και λεξικό ρυθμίσεων που περιγράφει τον τύπο σήραγγας, τη διεύθυνση διακομιστή και το πώς ξεκινά η σήραγγα.

Όταν ανοίγετε Ρυθμίσεις Συστήματος, VPN, πατάτε το κουμπί πληροφοριών δίπλα σε μια υπηρεσία, επιλέγετε Αφαίρεση ρύθμισης και επιβεβαιώνετε, το macOS σταματά τη σήραγγα, διαγράφει αυτό το αντικείμενο υπηρεσίας και ξαναγράφει την αποθήκη. Η αποσυναρμολόγηση είναι πλήρης για ό,τι κατέχει το σύστημα: η υπηρεσία έχει φύγει από τη λίστα και τίποτα δεν την ξεκινά στη σύνδεση.

Αυτό που δεν μπορεί να φτάσει το κουμπί είναι ό,τι κατέχει ένα άλλο υποσύστημα. Το πακέτο εφαρμογής ζει στο /Applications. Ένας πελάτης NetworkExtension εκτελείται ως επέκταση συστήματος που είναι καταχωρισμένη χωριστά από τις ρυθμίσεις του. Τα διαπιστευτήρια είναι στοιχεία μπρελόκ κλειδιών με τους ελέγχους πρόσβασης όποιου μπρελόκ τα κρατά. Ένα προφίλ ρυθμίσεων ανήκει στο σύστημα προφίλ. Αφαιρέστε την υπηρεσία και τα τέσσερα μένουν ακριβώς εκεί που ήταν.

Καταγράψτε τι εξακολουθεί να θεωρεί εγκατεστημένο το Mac

Κάντε απογραφή πριν διαγράψετε οτιδήποτε. Τρεις εντολές καλύπτουν τα τρία επίπεδα που παράγουν την ίδια ορατή αστοχία:

scutil --nc list
networksetup -listallnetworkservices
profiles -P

Το scutil --nc list είναι η έγκυρη προβολή των ρυθμίσεων VPN, με κατάσταση σύνδεσης, όνομα υπηρεσίας και αναγνωριστικό υπηρεσίας. Συχνά δείχνει καταχωρίσεις που δεν εμφανίζονται ποτέ στη λίστα Ρυθμίσεων: υπηρεσίες που περίσσεψαν από πελάτη που απεγκαταστήσατε πριν από μήνες και ρυθμίσεις κατ' απαίτηση που ξεκινούν σιωπηλά. Το networksetup -listallnetworkservices δείχνει τις υπηρεσίες δικτύου με τα ονόματα που περιμένουν τα εργαλεία γραμμής εντολών, κάτι που χρειάζεστε για αφαίρεση με όνομα. Το profiles -P απαριθμεί τα εγκατεστημένα προφίλ ρυθμίσεων· σε ένα διαχειριζόμενο Mac το VPN μπορεί να μην είναι καθόλου υπηρεσία που προσθέσατε, αλλά ωφέλιμο φορτίο μέσα σε ένα από αυτά τα προφίλ.

Διαβάστε τις λίστες μαζί αντί να εμπιστεύεστε την πρώτη. Μια υπηρεσία στο scutil αλλά όχι στις Ρυθμίσεις συνήθως σημαίνει ότι ένας πελάτης τρίτου μέρους κατέχει τη σήραγγα και την εμφανίζει στο δικό του παράθυρο. Μια υπηρεσία και στις δύο προβολές που στις Ρυθμίσεις είναι γκρι σημαίνει πολιτική. Ένα όνομα που επανεμφανίζεται μετά τη διαγραφή σημαίνει ότι κάτι το ξαναδημιουργεί, και αυτό το κάτι είναι ο πραγματικός στόχος.

Αφαιρέστε την υπηρεσία μέσω του ιδιοκτήτη της

Για μια υπηρεσία που προσθέσατε μόνοι σας, μείνετε στην τεκμηριωμένη διαδρομή: Ρυθμίσεις Συστήματος, VPN, το κουμπί πληροφοριών, Αφαίρεση ρύθμισης. Η Apple τεκμηριώνει αυτή τη ροή και διατηρεί την αποθήκη ρυθμίσεων συνεπή. Η χειροκίνητη επεξεργασία του preferences.plist ενώ εκτελείται η στοίβα δικτύου είναι ο τρόπος να καταλήξετε με διπλότυπες ή ζόμπι υπηρεσίες που καμία διεπαφή δεν θα αφαιρέσει.

Από τερματικό, αφαιρέστε την υπηρεσία με όνομα χρησιμοποιώντας το networksetup -removenetworkservice "Service Name" και μετά επιβεβαιώστε με το scutil --nc list. Η εντολή δρα στην ίδια λίστα υπηρεσιών με τη διεπαφή, οπότε ένα όνομα που δεν εμφανίζεται στο networksetup -listallnetworkservices δεν θα αφαιρεθεί από καμία από τις δύο διαδρομές. Όταν ένας πελάτης κατέχει τη σήραγγα, χρησιμοποιήστε πρώτα τη διαδρομή αφαίρεσης ή απεγκατάστασης αυτού του πελάτη, επειδή ο πελάτης ξαναχτίζει την υπηρεσία την επόμενη φορά που εκκινεί.

Αν το VPN προήλθε από διαχείριση συσκευών, δεν είστε ο ιδιοκτήτης. Τα προφίλ που εγκαθιστά το MDM μπορούν να σημανθούν ως μη αφαιρέσιμα, και ακόμη και ένα αφαιρέσιμο μπορεί να σταλεί ξανά στον επόμενο έλεγχο. Επιβεβαιώστε με το profiles -P και μετά χρησιμοποιήστε τη διαδικασία αποχώρησης του οργανισμού σας. Η τοπική διαγραφή του ωφέλιμου φορτίου είτε αποτυγχάνει είτε προκαλεί επανεγκατάσταση.

Τα υπολείμματα που επανασυνδέονται χωρίς υπηρεσία

Η συνηθισμένη αναφορά «επέστρεψε» δεν αφορά την υπηρεσία που επιστρέφει αλλά την επέκταση που την κατέχει. Καταγράψτε τις καταχωρισμένες επεκτάσεις συστήματος και τις επεκτάσεις εφαρμογών επέκτασης δικτύου:

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

Ένας πελάτης NetworkExtension κρατά τον πάροχο σήραγγας εγκατεστημένο με το δικό του αναγνωριστικό, χωριστά από οποιαδήποτε ρύθμιση. Η επέκταση μπορεί να παραμείνει ενεργή αφού φύγει η ρύθμιση, και ο πράκτορας της γραμμής μενού του πελάτη μπορεί να δημιουργήσει νέα ρύθμιση την επόμενη φορά που ξεκινά, μερικές φορές επαναχρησιμοποιώντας το όνομα που μόλις διαγράψατε. Ελέγξτε τα στοιχεία σύνδεσης και τον βοηθό του κατασκευαστή στο /Library/LaunchDaemons πριν συμπεράνετε ότι η αφαίρεση απέτυχε.

Τα διαπιστευτήρια είναι το δεύτερο υπόλειμμα. Ένας αποθηκευμένος κωδικός πρόσβασης ή πιστοποιητικό πελάτη στο μπρελόκ κλειδιών σύνδεσης δεν διαγράφεται μαζί με την υπηρεσία, και ένα κοινόχρηστο μυστικό IPSec ζει ιστορικά στο μπρελόκ κλειδιών Συστήματος, γι' αυτό η αφαίρεση και η εκ νέου προσθήκη μερικές φορές παραλείπουν το αίτημα κωδικού. Αν το Mac φεύγει από τον έλεγχό σας, εντοπίστε το στοιχείο με όνομα υπηρεσίας στο Πρόσβαση Μπρελόκ Κλειδιών και ανακαλέστε τον λογαριασμό, το πιστοποιητικό ή το κλειδί ομότιμου που αντιπροσωπεύει το αποθηκευμένο διαπιστευτήριο. Ένα αντιγραμμένο αρχείο ρυθμίσεων είναι ζωντανό διαπιστευτήριο ακόμη και μετά την τοπική αφαίρεση.

Επαληθεύστε την αφαίρεση και διαβάστε σωστά ένα προφίλ που επιστρέφει

Η αφαίρεση ολοκληρώνεται όταν η υπηρεσία λείπει από τις δύο προβολές και παραμένει απούσα μετά από επανεκκίνηση. Ελέγξτε το scutil --nc list για το αναγνωριστικό υπηρεσίας, επιβεβαιώστε ότι η επίλυση ονομάτων χρησιμοποιεί τον επιλυτή που περιμένετε με το scutil --dns και μετά επανεκκινήστε μία φορά, γιατί οι κανόνες κατ' απαίτηση και οι πράκτορες σύνδεσης είναι τα δύο πράγματα που δείχνονται μόνο σε καθαρή εκκίνηση.

Αν είναι ακόμη εκεί, μη διαγράψετε άλλα αντικείμενα. Βρείτε ποιο επίπεδο το ξαναδημιούργησε: ένα προφίλ MDM ξαναστέλνει την υπηρεσία, ένας πράκτορας πελάτη την ξαναχτίζει ή η υπηρεσία δεν αφαιρέθηκε ποτέ επειδή το όνομα δεν ταίριαζε. Αυτή η απάντηση καθορίζει αν χρειάζεστε το πρόγραμμα απεγκατάστασης του κατασκευαστή, την ομάδα IT σας ή άλλο ένα πέρασμα από τον ίδιο διάλογο αφαίρεσης. Ο οδηγός αφαίρεσης της Apple καλύπτει την υποστηριζόμενη διαδρομή για υπηρεσίες που προσθέσατε· τα υπολείμματα είναι το μέρος που πρέπει να ελέγξετε μόνοι σας: αφαίρεση ρύθμισης VPN.

Σχετικά άρθρα