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

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

Μια ανοιχτή θύρα περιγράφει μόνο ένα επίπεδο

Το να δεχτείς μια σύνδεση TCP σημαίνει ότι μια διεργασία κατέχει το socket και η διαδρομή επιτρέπει τη χειραψία. Δεν λέει τίποτα για το αν αυτή η διεργασία είναι διακομιστής SSTP, αν κατέχει πιστοποιητικό έγκυρο για το όνομα στο προφίλ σας ή αν θα εξουσιοδοτήσει τον λογαριασμό σας. Ένας διακομιστής ιστού στην ίδια διεύθυνση απαντά τέλεια στη χειραψία και έπειτα απαντά στο αίτημα SSTP με σφάλμα HTTP. Όλα πάνω από αυτή τη χειραψία μένουν αδοκίμαστα.

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

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

Διαχωρίστε τα τέσσερα στάδια με στοιχεία

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

nc -vz vpn.example.net 443
openssl s_client -connect vpn.example.net:443 -servername vpn.example.net -brief
curl -sS -o /dev/null -w '%{http_code}\n' https://vpn.example.net/

Η τρίτη εντολή αξίζει προσεκτική ανάγνωση. Ένα 200 από μια συνηθισμένη ιστοσελίδα σας λέει ότι υπάρχει μια υπηρεσία ιστού· δεν σας λέει ότι το αίτημα SSTP θα γίνει κατανοητό. Ένα 404 από την ίδια διεύθυνση είναι εξίσου μη πληροφοριακό για το VPN. Μόνο το αρχείο καταγραφής του πελάτη σας λέει σε ποιο από τα τέσσερα στάδια έφτασε.

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

Διαβάστε τη μερική επιτυχία προς τη σωστή κατεύθυνση

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

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

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

Έπειτα δοκιμάστε την εφαρμογή, όχι μόνο τη συνεδρία

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

Κρατήστε κάθε συμπέρασμα δεμένο με το στάδιο που το παρήγαγε. Το να αποκαλέσετε μια ανοιχτή θύρα λειτουργικό VPN είναι ο τρόπος με τον οποίο ένας πεντάλεπτος έλεγχος πιστοποιητικού γίνεται μια μέρα επανεγκατάστασης λογισμικού.

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