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

Η σειρά που γλιτώνει την επανεγκατάσταση

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

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

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

Τι υλοποιεί στην πραγματικότητα η εφαρμογή του τηλεφώνου

Μια δημοσιευμένη λίστα πελατών περιγράφει μια εφαρμογή, όχι μια υπηρεσία. Η εφαρμογή OpenVPN Connect για Android περιμένει διακομιστή OpenVPN· δεν παρέχει την πλευρά του διακομιστή. Ούτε γίνεται πελάτης IPsec ή L2TP όταν ένα προφίλ μοιάζει παρόμοιο.

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

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

Η συμφωνία τεσσάρων μερών

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

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

Τα διαπιστευτήρια έχουν χωριστές δουλειές

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

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

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

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

Η προσβασιμότητα είναι ξεχωριστό συμβόλαιο

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

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

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

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