Κανάλι ελέγχου και κανάλι δεδομένων VPN: ελέγξτε το σωστό επίπεδο
Μια σήραγγα μπορεί να διαπραγματεύεται και παρόλα αυτά να μη μεταφέρει τίποτα. Ελέγξτε ποιο κανάλι απέτυχε: η ρύθμιση ελέγχου, η προστασία δεδομένων ή η διαδρομή και το DNS πέρα από τα δύο.
Ο πελάτης λέει συνδεδεμένος, ο διακομιστής βλέπει έναν ομότιμο, και η εφαρμογή ακόμη δεν φτάνει πουθενά. Σε εκείνο το σημείο το χρήσιμο ερώτημα δεν είναι ποια κρυπτογράφηση να αλλάξετε, αλλά ποιο κανάλι απέτυχε. Το OpenVPN ονομάζει ρητά δύο λειτουργίες: ένα κανάλι ελέγχου που διαπραγματεύεται και διαχειρίζεται τη συνεδρία, και ένα κανάλι δεδομένων που μεταφέρει την προστατευμένη κίνηση. Το IKEv2 εκφράζει ανάλογη διάκριση μέσω του συσχετισμού IKE και του συσχετισμού CHILD. Εκτελέστε τους παρακάτω ελέγχους με σειρά, γιατί μια διόρθωση της διαδρομής δεδομένων που εφαρμόζεται σε βλάβη της διαδρομής ελέγχου σπαταλά ένα παράθυρο αλλαγής.
Ονομάστε το κανάλι πριν το αποσφαλματώσετε
Η πλευρά ελέγχου διαπραγματεύεται το υλικό ασφαλείας, πιστοποιεί τους ομότιμους και διαχειρίζεται τη σύνδεση. Η πλευρά δεδομένων μεταφέρει την επιλεγμένη κίνηση μόλις υπάρξει η απαραίτητη κατάσταση.
Αποτυγχάνουν διαφορετικά. Μια βλάβη ελέγχου συνήθως σας αφήνει χωρίς καμία χρησιμοποιήσιμη συνεδρία, ή με συνεδρία που διαπραγματεύεται ξανά σε βρόχο. Μια βλάβη δεδομένων αφήνει μια συνεδρία που φαίνεται υγιής ενώ τα πακέτα απορρίπτονται, δρομολογούνται λάθος ή προστατεύονται με παραμέτρους που η απέναντι πλευρά δεν θα δεχτεί. Η γραμμή καταγραφής που διαβάζετε σας λέει σε ποια περίπτωση βρίσκεστε, οπότε διαβάστε την ετικέτα πριν από το κείμενο του σφάλματος.
Ελέγξτε την ανταλλαγή ελέγχου
Επιβεβαιώστε ότι η χειραψία ολοκληρώνεται και ότι και οι δύο πλευρές συμφωνούν για τη μεταφορά, την έκδοση TLS και τη μέθοδο πιστοποίησης. Τα αρχεία καταγραφής του OpenVPN εκτυπώνουν ξεχωριστές γραμμές για το κανάλι ελέγχου και το κανάλι δεδομένων, και στη γραμμή ελέγχου εμφανίζεται αναντιστοιχία πιστοποιητικού, έκδοσης TLS ή tls-crypt.
Αν η ανταλλαγή ελέγχου αποτύχει, κοιτάξτε τη θύρα που είναι προσβάσιμη, την αλυσίδα πιστοποιητικών και τις ημερομηνίες ισχύος της, το ρολόι του συστήματος, την επικάλυψη κρυπτογραφήσεων μεταξύ πελάτη και διακομιστή και οποιοδήποτε κλειδί tls-auth ή tls-crypt. Μια μεγάλη αλυσίδα πιστοποιητικών μπορεί επίσης να αποτύχει στο MTU της διαδρομής πριν ολοκληρωθεί οποιαδήποτε πιστοποίηση, κάτι που μοιάζει με λήξη χρόνου και όχι με κρυπτογραφικό σφάλμα.
Διορθώστε τις βλάβες ελέγχου με ρυθμίσεις ελέγχου. Η αύξηση της κρυπτογράφησης δεδομένων ή η χαλάρωση της πολιτικής πιστοποίησης δεδομένων δεν θα ολοκληρώσει μια χειραψία που δεν πέρασε ποτέ την ανταλλαγή πιστοποιητικών.
Ελέγξτε το κανάλι δεδομένων ξεχωριστά
Μόλις η συνεδρία είναι ενεργή, επιβεβαιώστε την κρυπτογράφηση και τη λειτουργία δεδομένων που διαπραγματεύτηκαν, την παραγωγή κλειδιών και τη συμπεριφορά ανανέωσης κλειδιού. Στο OpenVPN, η γραμμή του καναλιού δεδομένων αναφέρει την κρυπτογράφηση και το μέγεθος κλειδιού που αρχικοποιήθηκαν πραγματικά, και αυτά μπορεί να διαφέρουν από την πρώτη κρυπτογράφηση στο προφίλ.
Στη συνέχεια ελέγξτε τι εγκατέστησε η συνεδρία. Ένα PUSH_REPLY μπορεί να προσθέσει διαδρομές, έναν διακομιστή DNS και μια οδηγία redirect-gateway, και οποιοδήποτε από αυτά μπορεί να στείλει κίνηση κάπου που η εφαρμογή δεν μπορεί να τη χρησιμοποιήσει. Για το IKEv2, το αντίστοιχο ερώτημα είναι αν οι επιλογείς του συσχετισμού CHILD ταιριάζουν με τις διευθύνσεις της πραγματικής ροής.
Τα tls-auth και tls-crypt ανήκουν στο κανάλι ελέγχου. Πιστοποιούν ή κρυπτογραφούν τη χειραψία και δεν επιλέγουν την κρυπτογράφηση δεδομένων της εφαρμογής. Αν προσθέσετε ένα από αυτά περιμένοντας αλλαγή στη διαδρομή δεδομένων, το μόνο που αλλάξατε είναι η χειραψία.
Αντιστοιχίστε τα ονόματα με IKEv2 και OpenVPN
Το IKEv2 έχει έναν συσχετισμό ασφαλείας IKE και έναν ή περισσότερους συσχετισμούς CHILD. Ο συσχετισμός IKE μεταφέρει τις ανταλλαγές ελέγχου· ο συσχετισμός CHILD μεταφέρει την προστατευμένη κίνηση και τους επιλογείς της. Διαπραγματεύονται και ανανεώνουν κλειδιά με ξεχωριστά χρονοδιαγράμματα, οπότε ο ένας μπορεί να είναι υγιής ενώ ο άλλος όχι.
Το ESP δεν έχει μέσα του κανάλι ελέγχου τύπου TLS. Το πρωτόκολλο ελέγχου είναι το IKE, και το ESP είναι το προστατευμένο ωφέλιμο φορτίο. Το να αποκαλείτε το ESP κανάλι δεδομένων είναι μια χαλαρή συντομογραφία που γίνεται μπερδεμένη όταν διαβάζετε σύλληψη πακέτων, γιατί η σύλληψη δείχνει μηνύματα IKE και πακέτα ESP ως διαφορετικά πρωτόκολλα στο καλώδιο.
Κρατήστε την αντιστοίχιση ρητή στις σημειώσεις σας: το κανάλι ελέγχου του OpenVPN και το IKE SA είναι η πλευρά διαχείρισης, το κανάλι δεδομένων του OpenVPN και το CHILD SA είναι η πλευρά κίνησης, και οι υλοποιήσεις δεν είναι εναλλάξιμες ακόμη και όταν η διάκριση φαίνεται παρόμοια.
Σταματήστε να αλλάζετε τη λάθος ρύθμιση
Διαβείτε τη διαδρομή προς μία κατεύθυνση: ανταλλαγή ελέγχου, προστασία δεδομένων, προώθηση και μετά επίλυση ονομάτων. Σταματήστε στο πρώτο στάδιο που αποτυγχάνει και διορθώστε μόνο εκείνο το στάδιο. Μια συνδεδεμένη συνεδρία με ping που λειτουργεί προς την πύλη αλλά χωρίς κίνηση εφαρμογής είναι πρόβλημα προώθησης ή επιλογέων, όχι χειραψίας.
Γράψτε τα στοιχεία για κάθε στάδιο χωριστά στο δελτίο: τη γραμμή καταγραφής ελέγχου, τις διαπραγματευμένες παραμέτρους δεδομένων, τις εγκατεστημένες διαδρομές και ένα πραγματικό αίτημα. Αυτή η δομή εμποδίζει να αποδυναμωθεί ένας λειτουργικός έλεγχος ταυτότητας για να διορθωθεί ένα μεταγενέστερο πρόβλημα δρομολόγησης που δεν προκάλεσε ποτέ, και εμποδίζει να πουληθεί μια αλλαγή κρυπτογράφησης δεδομένων ως διόρθωση σφάλματος πιστοποιητικού.
Η τεκμηρίωση του πρωτοκόλλου OpenVPN είναι η αναφορά για τη διάκριση ελέγχου και δεδομένων· χρησιμοποιήστε την όταν η διεπαφή ενός προμηθευτή χρησιμοποιεί άλλες λέξεις για τις ίδιες δύο λειτουργίες.