Το openfortivpn ξαναγράφει συνέχεια το DNS; Βρείτε τον πραγματικό ιδιοκτήτη
Δύο διακόπτες φιμώνουν τους εγγραφείς DNS του πελάτη και του pppd, αλλά κανένας δεν ονομάζει αντικαταστάτη. Ακολουθήστε την παράδοση, επιλέξτε ιδιοκτήτη και επαληθεύστε την επίλυση ανά ζεύξη.
Ακολουθήστε τη σύνδεση από τη στιγμή που ανεβαίνει: ο πελάτης πιστοποιείται, ο pppd διαπραγματεύεται και μετά κάτι γράφει ρυθμίσεις DNS στο λειτουργικό σύστημα. Αν το μόνο που ξέρετε είναι ότι το VPN άλλαξε τον resolver σας, δεν ξέρετε ακόμη ποιο από αυτά τα στάδια το έκανε. Δύο από αυτά μπορούν, και σε έναν πελάτη με την τεκμηριωμένη ενσωμάτωση pppd τρέχουν αρκετά κοντά ώστε να μοιάζουν με έναν μόνο δρώντα. Το να ονομάσετε τον εγγραφέα είναι το πρώτο βήμα· το να διαλέξετε τον αντικαταστάτη του είναι το δεύτερο, και είναι ξεχωριστή απόφαση με δικούς της τρόπους αποτυχίας.
Η ακολουθία παρακάτω ακολουθεί τον πελάτη προς τα έξω: τι άλλαξε η σύνδεση, ποιος διακόπτης φιμώνει ποιον εγγραφέα, ποιος υποτίθεται ότι αναλαμβάνει και πώς επιβεβαιώνετε ότι το αποτέλεσμα επιβιώνει από μια επανασύνδεση. Κάθε στάδιο αφήνει διαφορετικό ίχνος, και το ίχνος είναι αυτό που σας λέει αν η παράδοση συνέβη πραγματικά.
Ξεκινήστε από το τι άλλαξε πραγματικά η σύνδεση
Συνδεθείτε μία φορά με τη συνηθισμένη σας εντολή και συγκρίνετε την επίλυση πριν και μετά. Σε έναν κεντρικό υπολογιστή Linux με systemd-resolved, το resolvectl status εκτυπώνει τους διακομιστές DNS και τους τομείς αναζήτησης ανά ζεύξη, και μια νέα ζεύξη tun ή ppp που φέρει τους δικούς της διακομιστές είναι το αποτύπωμα μιας ενημέρωσης από την πλευρά του πελάτη. Στο macOS, το scutil --dns δείχνει τη διαμόρφωση του resolver με τη σειρά που τη συμβουλεύονται οι εφαρμογές.
Συγκρίνετε το με το αρχείο που περιμένατε να αλλάξει. Μια καταχώριση δεσμευμένη στη σύνδεση στην προβολή ανά ζεύξη και ένα ξαναγραμμένο /etc/resolv.conf είναι δύο διαφορετικά αποτελέσματα, και το δεύτερο μπορεί να είναι ένας συμβολικός δεσμός που τον διαχειρίζεται εντελώς κάτι άλλο. Καταγράψτε τη διεύθυνση του resolver, τους τομείς αναζήτησης και το όνομα της διεπαφής την ίδια στιγμή· μια αλλαγή σε οποιοδήποτε από αυτά δείχνει διαφορετικό εγγραφέα. Χωρίς αυτή τη βάση, κάθε μεταγενέστερη διόρθωση είναι εικασία για το ποιο από τρία συστατικά μετακινήθηκε.
Οι δύο διακόπτες και ο εγγραφέας που φιμώνει ο καθένας
Το openfortivpn τεκμηριώνει ένα απόσπασμα επιλογών που απενεργοποιεί και τους δύο εγγραφείς που μπορεί να ελέγξει, και κάθε διακόπτης έχει ένα πλήρως γραμμένο ισοδύναμο που το εγχειρίδιο το αντιμετωπίζει ως την ίδια ρύθμιση.
openfortivpn gw.example.com:443 --no-dns --pppd-no-peerdns
# written out in long form
openfortivpn gw.example.com:443 --set-dns=0 --pppd-use-peerdns=0
Το --no-dns εμποδίζει τον πελάτη να εφαρμόσει τους διακομιστές DNS που έμαθε από την πύλη, ενώ το --pppd-no-peerdns εμποδίζει τον pppd να σπρώξει το DNS του ομολόγου στο σύστημα. Το εγχειρίδιο του upstream προειδοποιεί ότι οι ενημερώσεις DNS μέσω PPP μπορούν να συναγωνιστούν τις δικές του ενημερώσεις DNS του πελάτη, γι' αυτό και οι δύο διακόπτες ανήκουν στο απόσπασμα αντί να θεωρείται κανένας από τους δύο επαρκής.
Κανένας διακόπτης δεν ονομάζει εφεδρικό resolver, και κανένας δεν εμποδίζει έναν διαχειριστή δικτύου, έναν πελάτη DHCP ή μια ξεχωριστή ενσωμάτωση VPN να γράψει επίλυση μετά. Το φίμωμα δύο εγγραφέων αφήνει το πεδίο ανοιχτό παρά κατεχόμενο. Αν ένα τρίτο συστατικό διαχειρίζεται ήδη το DNS, το απόσπασμα δεν αλλάζει τίποτα που μπορείτε να παρατηρήσετε· αν τίποτα δεν το διαχειρίζεται, μόλις αφαιρέσατε τη μόνη πηγή επίλυσης ιδιωτικών ονομάτων. Αυτή είναι μια έγκυρη διάταξη μόνο όταν ο εφεδρικός ιδιοκτήτης επιλέχθηκε πρώτος και δοκιμάστηκε μόνος του.
Επιλέξτε τον ιδιοκτήτη πριν απενεργοποιήσετε οτιδήποτε
Αποφασίστε πρώτα ποιος απαντά σε ερωτήματα για ονόματα εργασίας, γιατί αυτή η επιλογή περιορίζει όλα τα επόμενα. Το να κρατήσετε τον υπάρχοντα resolver σημαίνει ότι η ιδιωτική ζώνη πρέπει ήδη να είναι προσβάσιμη από όπου κι αν βρίσκεται ο πελάτης, και ένας ιδιωτικός resolver μέσα στο γραφείο χρειάζεται μια διαδρομή που επιβιώνει όταν ανεβαίνει η σήραγγα. Το να στέλνετε κάθε ερώτημα σε μία εσωτερική υπηρεσία είναι μια τρίτη πολιτική με πιο κοφτερό τρόπο αποτυχίας: όταν αυτή η υπηρεσία δεν είναι προσβάσιμη, τα δημόσια ονόματα αποτυγχάνουν μαζί με τα ιδιωτικά.
Η ιδιοκτησία διαδρομής μένει σκόπιμα ξεχωριστή. Οι επιλογές διαδρομής δεν απαιτούνται επειδή αλλάξατε το DNS, και το να απενεργοποιήσετε την εγκατάσταση διαδρομής χωρίς να εγκαταστήσετε αντικαταστάτη μπορεί να κάνει τον resolver που μόλις επιλέξατε μη προσβάσιμο. Ελέγξτε τον πίνακα δρομολόγησης ειδικά για τη διεύθυνση του resolver, όχι μόνο για το υποδίκτυο της εφαρμογής που δοκιμάσατε κατά τύχη.
Ελέγξτε την επίλυση ανά ζεύξη, όχι ανά αρχείο
Ένα μόνο /etc/resolv.conf δεν είναι απογραφή του τι χρησιμοποιούν πραγματικά οι εφαρμογές σε έναν κεντρικό υπολογιστή με περιορισμένη ή ανά τομέα επίλυση, οπότε διαβάστε την κατάσταση του resolver όπως την εκθέτει η πλατφόρμα.
resolvectl status
resolvectl query vpn.internal.example.com
resolvectl query example.com
ip route get 10.20.0.53
Ρωτήστε ένα ιδιωτικό όνομα και ένα δημόσιο όνομα μόλις ανέβει η σύνδεση, και σημειώστε ποια ζεύξη απάντησε στο καθένα. Όπου η ζεύξη VPN φέρει λίστα αναζήτησης ανά τομέα, ένα ιδιωτικό όνομα μπορεί να επιλυθεί σωστά ενώ ένα δημόσιο όνομα πηγαίνει ακόμη στον τοπικό resolver, και αυτός ο διαχωρισμός είναι ο σχεδιασμός που δουλεύει και όχι βλάβη. Αν το ιδιωτικό ερώτημα αποτύχει, επιθεωρήστε τη διαδρομή προς τον resolver πριν αγγίξετε ξανά το DNS· αν πετύχει ενώ μια εφαρμογή αποτυγχάνει ακόμη, η εφαρμογή ίσως διαβάζει δικό της προσωρινά αποθηκευμένο ή ξεχωριστά ρυθμισμένο resolver.
Επανασυνδεθείτε και επιβεβαιώστε την αποσυνδεδεμένη κατάσταση
Κατεβάστε τη σύνδεση και επαναλάβετε και τα δύο ερωτήματα. Ό,τι εγκατέστησε ο επιλεγμένος ιδιοκτήτης πρέπει να το αφαιρέσει ή να το επαναφέρει αυτός, όχι να το αφήσει πίσω ο πελάτης που φιμώσατε. Μια παρωχημένη καταχώριση ανά ζεύξη που επιβιώνει της σήραγγας συνεχίζει να στέλνει ιδιωτικά ερωτήματα σε μια διεύθυνση που δεν είναι πλέον προσβάσιμη.
Έπειτα επανασυνδεθείτε και διαβάστε ξανά τις ίδιες τρεις τιμές: διεύθυνση resolver, τομείς αναζήτησης, διεπαφή.
Αν ταιριάζουν με την πολιτική που γράψατε, η παράδοση είναι πλήρης και ο πελάτης VPN δεν είναι πια ένας από τους εγγραφείς. Αν μια τιμή οπισθοχωρήσει λίγα δευτερόλεπτα μετά την ανάβαση της ζεύξης, κάτι άλλο εφαρμόζει ακόμη διαμόρφωση, και το επόμενο βήμα είναι να προσδιορίσετε αυτό το συστατικό αντί να προσθέσετε άλλη σημαία. Η τελική κατάσταση που θέλετε είναι χωρίς συμβάντα: ένας ιδιοκτήτης, μία τεκμηριωμένη πολιτική και ένας αποσυνδεδεμένος κεντρικός υπολογιστής που επιλύει ακριβώς όπως πριν υπάρξει η σήραγγα.