Το παλιό προφίλ .ovpn αποτυγχάνει στο Ubuntu 24.04: ποιες γραμμές να διαγράψετε
Το Ubuntu 24.04 φέρνει το OpenVPN 2.6 και ένα προφίλ που εξήχθη για την 2.4 πεθαίνει σε επιλογές που αφαιρέθηκαν. Διαγράψτε τα keysize και ncp-disable και μετά διορθώστε το ns-cert-type.
Το προφίλ κατεβαίνει, εισάγεται και μετά σταματά στη γραμμή 12 του αρχείου με μήνυμα Unrecognized option που ονομάζει το keysize. Τίποτα στον λογαριασμό δεν άλλαξε και ο διακομιστής εξακολουθεί να δέχεται άλλους πελάτες. Άλλαξε ο ίδιος ο πελάτης: το Ubuntu 24.04 εγκαθιστά το OpenVPN 2.6, ενώ η εξαγωγή γράφτηκε για την 2.4. Η επιδιόρθωση είναι μια σύντομη σειρά διαγραφών και η σειρά έχει σημασία, γιατί κάθε παρωχημένη επιλογή διακόπτει την ανάλυση πριν καν διαβαστεί η επόμενη.
Διαβάστε τη γραμμή του σφάλματος πριν αγγίξετε το αρχείο
Το OpenVPN ονομάζει το αρχείο και τη γραμμή όπου σταμάτησε η ανάλυση, άρα διορθώνετε μόνο ένα πρόβλημα ανά εκτέλεση. Ξεκινήστε το προφίλ από τερματικό και όχι από μικροεφαρμογή επιφάνειας εργασίας, γιατί η μικροεφαρμογή συνήθως καταπίνει το stderr και ο αριθμός γραμμής είναι η μόνη αξιόπιστη ένδειξη που παίρνετε: sudo openvpn --config /etc/openvpn/client/provider.ovpn. Διορθώστε αυτή τη γραμμή, εκτελέστε ξανά και περιμένετε η επόμενη αποτυχία να ονομάσει άλλη επιλογή.
Ένα σφάλμα ανάλυσης εμφανίζεται πάντα πριν από οποιαδήποτε χειραψία TLS, άρα ένα μήνυμα που αναφέρει πιστοποιητικό έχει ήδη περάσει το στάδιο της σύνταξης. Αυτή η διάκριση σας εμποδίζει να επεξεργαστείτε ένα αρχείο που αποτυγχάνει μόνο στην ταυτοποίηση. Διαβάστε την πρώτη λέξη του μηνύματος και όχι τη μέση του.
Τρεις κατηγορίες αποτυχίας, τρεις διαφορετικές επιδιορθώσεις
Οι παλιές εξαγωγές αποτυγχάνουν με τρεις διακριτούς τρόπους και η συγχώνευσή τους σε ένα πρόβλημα είναι ο λόγος που οι άνθρωποι επανεγκαθιστούν πακέτα που δεν είχαν ποτέ χαλάσει. Η διατύπωση του μηνύματος σας λέει σε ποια κατηγορία βρίσκεστε πριν ανοίξετε το αρχείο.
- Τα σφάλματα ανάλυσης ονομάζουν αρχείο και γραμμή και σταματούν πριν υπάρξει οποιαδήποτε κίνηση.
- Τα σφάλματα διαπραγμάτευσης συνδέονται και μετά αναφέρουν ότι τα δύο άκρα δεν συμφώνησαν σε κοινό κρυπτογράφημα ή σε αποδεκτό κανάλι δεδομένων.
- Τα σφάλματα ταυτοποίησης φτάνουν πιο μακριά και ονομάζουν πιστοποιητικό, χρήστη ή απορριφθέν διαπιστευτήριο.
Η επεξεργασία του προφίλ διορθώνει μόνο την πρώτη κατηγορία. Η διαπραγμάτευση απαιτεί απόφαση και στα δύο άκρα της σήραγγας και ένα απορριφθέν διαπιστευτήριο δεν είναι καθόλου πρόβλημα σύνταξης. Αν το μήνυμά σας αναφέρει κοινό κρυπτογράφημα ή κανάλι δεδομένων, οι διαγραφές παρακάτω δεν θα αλλάξουν τίποτα.
Διαγράψτε τις επιλογές που αφαίρεσε η 2.6, με αυτή τη σειρά
Καθεμία από αυτές τις γραμμές σταματά την ανάλυση από μόνη της, γι' αυτό ο πελάτης τις αναφέρει μία κάθε φορά. Κατεβείτε τη λίστα και εκτελέστε ξανά μετά από κάθε διαγραφή.
Διαγράψτε πρώτα το keysize, γιατί δεν έχει σύγχρονο αντίστοιχο και η παρουσία του συνήθως σηματοδοτεί κρυπτογράφημα που ο τρέχων πελάτης απορρίπτει ούτως ή άλλως. Μετά διαγράψτε το ncp-disable, που έλεγχε τη διαπραγμάτευση κρυπτογραφημάτων, καταργήθηκε στην 2.5 και λείπει στην 2.6. Αντικαταστήστε το ns-cert-type server με το remote-cert-tls server, που εκφράζει την ίδια πρόθεση μέσω υποστηριζόμενου ελέγχου. Το ιστορικό αλλαγών 2.6 απαριθμεί τις υπόλοιπες αφαιρέσεις δίπλα στις αντικαταστάσεις τους, άρα ό,τι απορρίπτει ακόμη ο αναλυτής έχει τεκμηριωμένη απάντηση.
Κρατήστε αντίγραφο του αρχικού προφίλ πριν από την πρώτη επεξεργασία. Οι πάροχοι αναδημιουργούν εξαγωγές και ένα diff με το ανέπαφο αρχείο είναι ο γρηγορότερος τρόπος να ξεχωρίσετε τις δικές σας αλλαγές από τις δικές τους. Αν μια διαγραφή αφήσει τον πελάτη να ξεκινήσει αλλά η σήραγγα εξακολουθεί να αποτυγχάνει, έχετε περάσει στην κατηγορία διαπραγμάτευσης και οι υπόλοιπες γραμμές δεν είναι η αιτία. Βάλτε την έκδοση του πελάτη στο όνομα του αρχείου ώστε ο επόμενος να ξέρει σε ποια έκδοση στοχεύουν οι αλλαγές.
Κρατήστε το BF-CBC σε λειτουργία μόνο ως περιορισμένη εφεδρεία
Ορισμένοι πάροχοι τερματίζουν ακόμη σε BF-CBC, με το οποίο το OpenVPN 2.6 δεν διαπραγματεύεται χωρίς βοήθεια, γιατί το κρυπτογράφημα έχει μπλοκ 64 bit. Η στενή επιδιόρθωση είναι μια λίστα εφεδρείας μαζί με τον παλιό πάροχο του OpenSSL, όχι υποβάθμιση ολόκληρου του πελάτη.
providers legacy default
data-ciphers AES-256-GCM:AES-128-GCM
data-ciphers-fallback BF-CBC
Η πρώτη γραμμή φορτώνει τον παλιό πάροχο ώστε το OpenSSL να μπορεί ακόμη να δημιουργήσει αυτό το κρυπτογράφημα, η δεύτερη διατηρεί σύγχρονη διαπραγμάτευση για ομότιμους που την υποστηρίζουν και η τρίτη ισχύει μόνο όταν ο διακομιστής δεν προσφέρει κάτι καλύτερο. Πρόκειται για σκόπιμη αποδυνάμωση της σήραγγας, γι' αυτό καταγράψτε δίπλα στο αρχείο γιατί υπάρχει. Ζητήστε ταυτόχρονα από τον πάροχο μια αναγεννημένη εξαγωγή, γιατί η εφεδρεία είναι γέφυρα και όχι προορισμός.
Μην καταφεύγετε στο --compat-mode ως καθολική απάντηση. Αλλάζει πολλές συμπεριφορές μαζί, μεταξύ τους τις προεπιλογές διαπραγμάτευσης και επαναδιαπραγμάτευσης, άρα δεν μαθαίνετε ποτέ ποια αλλαγή είχε σημασία. Προτιμήστε τις τρεις ρητές γραμμές παραπάνω, γιατί καθεμία δηλώνει το δικό της αποτέλεσμα.
Επαληθεύστε με το προφίλ που φορτώνει πραγματικά ο πελάτης
Οι εισαγόμενες συνδέσεις συχνά αντιγράφονται σε κατάλογο συστήματος, άρα η επεξεργασία του αρχείου στον φάκελο λήψεων μπορεί να μην αλλάξει απολύτως τίποτα. Βρείτε το αντίγραφο που εκτελείται: sudo grep -rl "remote " /etc/NetworkManager/system-connections /etc/openvpn. Μετά ξεκινήστε τη σήραγγα και διαβάστε τη γραμμή καταγραφής που αναφέρει ποιο κρυπτογράφημα καναλιού δεδομένων επιλέχθηκε πραγματικά. Μια σύνδεση που ολοκληρώνει τη χειραψία στην εφεδρεία σας λέει ότι ο διακομιστής δεν πρόσφερε ποτέ κάτι σύγχρονο.
Δοκιμάστε από δίκτυο που δεν είναι αυτό που περιμένει ο πάροχος, ώστε μια πύλη captive ή ένα φιλτραρισμένο δίκτυο επισκεπτών να μην εμφανιστούν ως βλάβη του προφίλ. Καταγράψτε την έκδοση του πελάτη μαζί με κάθε αίτημα υποστήριξης.
Μόλις η σήραγγα σηκωθεί, στείλτε ένα αίτημα που πρέπει να τη διασχίσει και ένα που δεν πρέπει, και μετά επιβεβαιώστε ότι η απάντηση του μετατροπέα άλλαξε όπως περιμένατε. Αν το προφίλ τώρα αναλύεται αλλά η σύνδεση εξακολουθεί να αποτυγχάνει, έχετε αφήσει πίσω το πρόβλημα σύνταξης και το κείμενο του σφάλματος θα ονομάσει τη νέα κατηγορία. Κρατήστε το επεξεργασμένο αρχείο σε έλεγχο εκδόσεων δίπλα σε σημείωση που ονομάζει την έκδοση OpenVPN στην οποία στοχεύει.