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

Ξεκινήστε εκεί όπου σταματά ο πελάτης

Ο πελάτης περνά από σταθερή ακολουθία: σύνδεση TCP στη θύρα 443, χειραψία TLS, επικύρωση πιστοποιητικού, η ανταλλαγή HTTP του SSTP, διαπραγμάτευση και έλεγχος ταυτότητας PPP, και μετά διαμόρφωση IP. Μια αποτυχία σε κάθε στάδιο αφήνει διαφορετικό αποτύπωμα, και η σύγχυσή τους σας οδηγεί στη λάθος σελίδα ρυθμίσεων.

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

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

Τι ζητά το SSTP από το δίκτυο να μεταφέρει

Το SSTP τρέχει πάνω από TLS στο TCP 443 και μετά στέλνει ένα αίτημα HTTP που ονομάζεται SSTP_DUPLEX_POST, όπως ορίζεται στην προδιαγραφή SSTP, σε διαδρομή της μορφής /sra_{GUID}/. Το αίτημα δηλώνει πρακτικά απεριόριστο μήκος περιεχομένου και κρατά τη ροή ανοιχτή και προς τις δύο κατευθύνσεις για όλη τη διάρκεια της συνεδρίας. Τα πλαίσια PPP ταξιδεύουν μέσα σε αυτή τη ροή.

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

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

Γιατί η επιθεώρηση αλλάζει την ταυτότητα

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

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

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

Προσδιορίστε τον εκδότη πριν αλλάξετε ρυθμίσεις

Ρωτήστε το τελικό σημείο ποιο πιστοποιητικό παρουσιάζει και ποιος το υπέγραψε. Οι παρακάτω εντολές δείχνουν την αλυσίδα και τον εκδότη χωρίς να ξεκινήσουν συνεδρία VPN:

openssl s_client -connect vpn.example.com:443 -servername vpn.example.com -showcerts
curl -vI https://vpn.example.com/

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

Μια δοκιμή περιηγητή στον ίδιο κεντρικό υπολογιστή αποδεικνύει μόνο ότι ο διαμεσολαβητής δέχεται ένα GET. Δεν λέει τίποτα για τη μέθοδο SSTP, το URI του αιτήματος ή τη διάρκεια του σώματος, οπότε μη θεωρείτε μια λειτουργική σελίδα intranet απόδειξη ότι η διαδρομή της σήραγγας υποστηρίζεται.

Επιλέξτε την υποστηριζόμενη διαδρομή

Ρωτήστε τον ιδιοκτήτη του δικτύου μια συγκεκριμένη ερώτηση: επιτρέπει ο διαμεσολαβητής ένα αμφίδρομο POST χωρίς προσωρινή αποθήκευση προς αυτή την πύλη στη θύρα 443; Ένα ναι οδηγεί σε εξαίρεση στον διαμεσολαβητή ή σε τεκμηριωμένη παράκαμψη για τον κεντρικό υπολογιστή VPN. Ένα όχι σημαίνει ότι η επιθεωρούμενη διαδρομή δεν μπορεί να μεταφέρει SSTP, και η υποστηριζόμενη διόρθωση είναι άλλη διαδρομή ή πρωτόκολλο, όχι μια προσαρμογή του πελάτη.

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

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

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