Πώς το OpenVPN data-ciphers επιλέγει τον κρυπταλγόριθμο του καναλιού δεδομένων
Ο διακομιστής προσφέρει μια λίστα και ο πελάτης επιλέγει την πρώτη αντιστοιχία. Διαβάστε και τις δύο γραμμές του αρχείου καταγραφής, συγκρίνετε τις λίστες και προσθέστε εφεδρικό μόνο εκεί όπου ένας ομότιμος το χρειάζεται.
Το τούνελ σηκώνεται, το αρχείο καταγραφής δείχνει έναν κρυπταλγόριθμο και η επισκόπηση του προφίλ συνεχίζεται. Μετά φτάνει μια αναβάθμιση σε έναν ομότιμο και το ίδιο προφίλ αποτυγχάνει με μήνυμα για κανέναν κοινό κρυπταλγόριθμο, κάτι που στέλνει τους ανθρώπους να ψάχνουν μια οδηγία προς διαγραφή. Το χρήσιμο που πρέπει να κατανοήσετε είναι ότι το data-ciphers περιγράφει μια διαπραγμάτευση, όχι μια ρύθμιση. Η μία πλευρά προσφέρει μια λίστα, η άλλη επιλέγει από αυτήν, και το αποτέλεσμα είναι ένας μόνο αλγόριθμος που υποστηρίζουν και οι δύο. Η ανάγνωση αυτής της ανταλλαγής εξηγεί τις περισσότερες από αυτές τις αποτυχίες πριν αλλάξετε μια γραμμή.
Δύο κανάλια, δύο διαμορφώσεις
Μια OpenVPN συνεδρία έχει κανάλι ελέγχου και κανάλι δεδομένων. Το κανάλι ελέγχου εκτελεί τη χειραψία TLS που πιστοποιεί τους ομότιμους και διαπραγματεύεται κλειδιά. Το κανάλι δεδομένων κρυπτογραφεί τα πακέτα που μεταφέρουν την κίνησή σας.
Το data-ciphers διαμορφώνει το δεύτερο. Το κανάλι ελέγχου έχει τις δικές του επιλογές, και οι έλεγχοι ταυτότητας του προφίλ είναι ένα τρίτο, ξεχωριστό ζήτημα. Η αλλαγή στο ένα δεν διορθώνει το άλλο, γι' αυτό ένα προφίλ μπορεί να φαίνεται σωστό και παρόλα αυτά να αποτυγχάνει σε ένα συγκεκριμένο στάδιο.
Κρατήστε τα τρία σε δικά τους κουτιά όταν διαβάζετε ένα αρχείο διαμόρφωσης.
Διαβάστε τη διαπραγμάτευση από το αρχείο καταγραφής
Το αρχείο καταγραφής του πελάτη ονομάζει και τα δύο αποτελέσματα όταν η σύνδεση πετυχαίνει. Μια γραμμή αναφέρει το κανάλι ελέγχου και τις λεπτομέρειες TLS του, και μια άλλη αναφέρει τον επιλεγμένο κρυπταλγόριθμο του καναλιού δεδομένων.
Διαβάστε και τις δύο, γιατί απαντούν σε διαφορετικές ερωτήσεις. Μια αποτυχία του καναλιού ελέγχου σταματά τη σύνδεση προτού γίνει σημαντικός οποιοσδήποτε κρυπταλγόριθμος δεδομένων. Μια ασυμφωνία του καναλιού δεδομένων εμφανίζεται μετά από επιτυχημένη χειραψία, με μήνυμα για κανέναν κοινό κρυπταλγόριθμο.
Έπειτα συγκρίνετε τις λίστες που προσφέρονται και στις δύο πλευρές. Ένα όνομα που η έκδοση του ενός ομότιμου ή το κρυπτογραφικό του υπόβαθρο δεν παρέχει δεν μπορεί να επιλεγεί, όσο νωρίς κι αν εμφανίζεται στη λίστα του άλλου ομότιμου.
Πώς γίνεται στην πραγματικότητα η επιλογή
Ο διακομιστής σπρώχνει τη λίστα data-ciphers του στον πελάτη κατά τη χειραψία, και ο πελάτης επιλέγει την πρώτη καταχώριση σε αυτή τη λίστα που υποστηρίζει και ο ίδιος. Η σειρά επομένως ανήκει στη διαμόρφωση του διακομιστή, όχι του πελάτη.
Αυτή η λεπτομέρεια εξηγεί μια κατηγορία μπερδεμένων αποτελεσμάτων. Η αναδιάταξη της λίστας του πελάτη δεν αλλάζει τίποτα όσο αποφασίζει η λίστα του διακομιστή. Η προσθήκη ενός κρυπταλγόριθμου που ο πελάτης δεν μπορεί να παράσχει επίσης δεν αλλάζει τίποτα, γιατί ο πελάτης πρέπει να μπορεί να χρησιμοποιήσει την καταχώριση που επιλέγει.
Νεότερες εκδόσεις άλλαξαν την προεπιλεγμένη λίστα και μετονόμασαν την επιλογή που την κρατούσε, οπότε δύο ομότιμοι σε διαφορετικές εκδόσεις μπορούν να διαφωνήσουν χωρίς να επεξεργαστεί κανείς ένα προφίλ. Ελέγξτε την έκδοση σε κάθε πλευρά πριν υποθέσετε τυπογραφικό λάθος.
Μια λίστα δεν είναι κατάταξη ισχύος στην αφηρημένη έννοια. Είναι ένα σύνολο υποψηφίων, και το επιλεγμένο είναι η πρώτη αμοιβαία υποστηριζόμενη καταχώριση στη σειρά του διακομιστή. Γι' αυτό δύο λίστες που φαίνονται διαφορετικές μπορούν να διαπραγματευτούν τον ίδιο κρυπταλγόριθμο. Γι' αυτό επίσης δύο λίστες που φαίνονται ίδιες μπορούν να αποτύχουν.
Οι παλαιότεροι ομότιμοι χρειάζονται μια σκόπιμη εφεδρική λύση
Ένας ομότιμος που δεν μπορεί καθόλου να διαπραγματευτεί, επειδή είναι παλαιότερος από τον μηχανισμό ή τον έχει απενεργοποιήσει, χρειάζεται μια τεκμηριωμένη ρύθμιση συμβατότητας. Η εφεδρική επιλογή υπάρχει ακριβώς για αυτή την περίπτωση και ισχύει για ομότιμους που δεν συμμετέχουν στη διαπραγμάτευση.
Αυτό δεν είναι το ίδιο με το να ενεργοποιήσετε κάθε παλιό κρυπταλγόριθμο για να εξαφανιστεί ένα μήνυμα. Μια ευρεία λίστα αποδυναμώνει τη συνεδρία για κάθε ομότιμο, ακόμη και για εκείνους που θα είχαν διαπραγματευτεί κάτι ισχυρό.
Συντονίστε τις δύο πλευρές αντί να επεξεργάζεστε άσχετα ονόματα αλγορίθμων. Αν μια αναβάθμιση του διακομιστή αφαίρεσε μια παλιά επιλογή, η διόρθωση ανήκει στο σχέδιο εκδόσεων, όχι σε έναν πανικό στον πελάτη.
Διατηρήστε την επαλήθευση άθικτη
Μια ασυμφωνία του καναλιού δεδομένων δεν είναι λόγος να δεχτείτε έναν μη επαληθευμένο διακομιστή. Η επαλήθευση πιστοποιητικού, το αναμενόμενο όνομα διακομιστή και οι ρυθμίσεις προστασίας του καναλιού ελέγχου είναι ξεχωριστές από την επιλογή κρυπταλγόριθμου και θα πρέπει να επιβιώσουν από οποιαδήποτε αλλαγή συμβατότητας.
Καταγράψτε μαζί τον διαπραγματευμένο κρυπταλγόριθμο δεδομένων, την έκδοση του πελάτη και την έκδοση του διακομιστή, ώστε η επόμενη σύγκριση να ξεκινά από γεγονότα και όχι από το αρχείο προφίλ.
Μετά από μια υποστηριζόμενη διόρθωση, δοκιμάστε την αρχική σύνδεση και μια επαναδιαπραγμάτευση, γιατί μια συνεδρία που εγκαθίσταται μία φορά μπορεί ακόμη να αποτύχει όταν ανανεώνονται τα κλειδιά.
Αν το τούνελ εγκατασταθεί και οι ιστότοποι εξακολουθούν να αποτυγχάνουν, ο κρυπταλγόριθμος δεν είναι πλέον ο ύποπτος. Συνεχίστε με τη δρομολόγηση και το DNS. Σειρά εργασίας: διαβάστε και τις δύο γραμμές του αρχείου καταγραφής, συγκρίνετε και τις δύο λίστες, ελέγξτε τις εκδόσεις, προσθέστε εφεδρικό μόνο για έναν ομότιμο που το χρειάζεται, και μετά δοκιμάστε ξανά τη διαδρομή ανανέωσης.