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

Το αρχείο περιγράφει μια στιγμή, όχι ένα συμβόλαιο

Ένα αρχείο διαμόρφωσης είναι ένα σύνολο δηλώσεων: αυτό το όνομα κεντρικού υπολογιστή ακούει σε αυτή τη θύρα με αυτό το πρωτόκολλο, παρουσιάζει πιστοποιητικό που ταιριάζει με αυτό το όνομα και δέχεται αυτά τα διαπιστευτήρια. Όταν οποιοδήποτε από αυτά πάψει να ισχύει, το αρχείο είναι παρωχημένο και η διόρθωση ανήκει στην πλευρά του διαχειριστή, όχι στις ρυθμίσεις σας.

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

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

Διάβασε το στάδιο αποτυχίας πριν αγγίξεις μια ρύθμιση

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

What happensThe assertion that brokeSupported response
Name never resolvesThe host still exists under that nameGet a current endpoint from the operator
TCP connect times outThe listener is on that port and reachableCheck the current published port, then the local network
TLS or key exchange failsThe peer presents the expected identityCompare the certificate, not the cipher list
Authentication rejectedThe account is still validGet credentials reissued or stop using the service
dig +short vpn.example.net
curl -sS -o /dev/null -w 'connect=%{time_connect} tls=%{time_appconnect}\n' --max-time 8 https://vpn.example.net:443/
openssl s_client -connect vpn.example.net:443 -servername vpn.example.net -brief </dev/null

Η μεσαία γραμμή χωρίζει μια μπλοκαρισμένη διαδρομή από μια χαλασμένη χειραψία, και η τρίτη δείχνει τον εκδότη και τις ημερομηνίες ισχύος του πιστοποιητικού που παρουσιάζεται πραγματικά. Αν αυτός ο εκδότης δεν είναι αυτός που καρφίτσωσε το προφίλ, το πιστοποιητικό άλλαξε και καμία επιλογή στην πλευρά του πελάτη δεν θα κάνει ξανά σωστή την παλιά καρφίτσα.

Οι αλλαγές πιστοποιητικού και ταυτότητας είναι οι αθόρυβες

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

Ψάξε τις επιλογές ταυτότητας πριν καταλήξεις σε κάτι:

grep -nE '^(remote|proto|auth|verify-x509-name|tls-crypt|key-direction|ca) ' profile.ovpn
openssl x509 -in profile-ca.crt -noout -subject -dates

Αν το προφίλ φέρει ενσωματωμένο CA και ο διαχειριστής έχει περάσει σε νέα αρχή, το παλιό αρχείο δεν μπορεί να επικυρώσει τον νέο διακομιστή. Η αντικατάσταση του μπλοκ CA με το δημοσιευμένο του διαχειριστή είναι νόμιμη διόρθωση. Η διαγραφή της οδηγίας επαλήθευσης δεν είναι, και είναι τα ίδια πλήκτρα με πολύ διαφορετικό αποτέλεσμα.

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

Μόνο ο διαχειριστής μπορεί να δημοσιεύσει έγκυρη αντικατάσταση

Όταν ένας κόμβος εξαφανιστεί, η αντικατάσταση πρέπει να έρθει από την ίδια πηγή που δημοσίευσε το αρχικό. Ένα προφίλ που φτάνει με άμεσο μήνυμα επειδή «χρησιμοποιεί το ίδιο όνομα διακομιστή» είναι ανεπαλήθευτη διαμόρφωση από άγνωστο μέρος, και η εισαγωγή του δίνει σε αυτό το μέρος έλεγχο της δρομολόγησής σας.

Ο έλεγχος είναι φθηνός. Κατέβασε το τρέχον αρχείο από τη δημοσιευμένη τοποθεσία, σύγκρινε το τελικό σημείο και το πρωτόκολλο με τη λίστα και επιβεβαίωσε το αποτύπωμα του υλικού CA αντί να εμπιστευτείς το όνομα του αρχείου:

curl -sS -o current.ovpn https://example.org/nodes/current.ovpn
sha256sum current.ovpn profile.ovpn
grep -nE '^(remote|proto) ' current.ovpn

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

Απόσυρε την παλιά καταχώριση και κατέγραψε τι συνέβη

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

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

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

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