Ο φορητός υπολογιστής συνδέεται στο endpoint του AWS Client VPN, φτάνει στο ιδιωτικό υποδίκτυο και όλα φαίνονται υγιή. Ο σταθερός υπολογιστής στο ίδιο LAN δεν φτάνει πουθενά, παρόλο που ο κεντρικός υπολογιστής Linux έχει επίσης διεπαφή γέφυρας και τα δύο μηχανήματα είναι στο ίδιο καλώδιο. Τίποτα δεν είναι λάθος ρυθμισμένο στη σήραγγα· το κομμάτι που λείπει είναι η δρομολόγηση και η γέφυρα είναι ψευδής ένδειξη.

Η επέκταση μιας συνεδρίας Client VPN σε ένα LAN είναι ρόλος πύλης. Δεν είναι τμήμα Ethernet τεντωμένο μέσα σε μια διαχειριζόμενη υπηρεσία.

Ο κεντρικός υπολογιστής λειτουργεί και το LAN όχι

Η διεπαφή σήραγγας στο μηχάνημα Linux έχει διεύθυνση εντός του CIDR του πελάτη Client VPN και το endpoint έχει σπρώξει διαδρομές για τις περιοχές του VPC. Ένα αίτημα από αυτό το μηχάνημα είναι τοπικά παραγόμενη κίνηση: επιλέγει διαδρομή, βγαίνει μέσω της σήραγγας και λαμβάνει απάντηση. Αυτή η διαδρομή δεν αγγίζει ποτέ τον κώδικα προώθησης, τη διεπαφή LAN ή οποιονδήποτε κανόνα τείχους προστασίας που διέπει τη διέλευση.

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

Δεν μπορεί κάθε πελάτης να είναι πύλη

Η AWS δηλώνει ότι η εφαρμογή Client VPN για υπολογιστή δεν υποστηρίζει προώθηση IP και ότι άλλοι πελάτες μπορεί να υποστηρίζουν. Αυτός ο περιορισμός καθορίζει την αρχιτεκτονική πριν πληκτρολογηθεί οποιαδήποτε εντολή. Αν ο μόνος διαθέσιμος πελάτης είναι η επίσημη εφαρμογή, μια πύλη Linux που προωθεί για το LAN δεν είναι διαμόρφωση που μπορείτε να ολοκληρώσετε, και κανένα masquerading δεν θα το αλλάξει.

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

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

Κατευθύνετε το LAN στη σήραγγα και μεταφράστε το

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

LAN: 10.24.11.0/24
Linux LAN gateway: 10.24.11.15
VPN interface: tun0
Target VPC range: 10.2.0.0/16

iptables -t nat -A POSTROUTING -s 10.24.11.0/24 -d 10.2.0.0/16 -o tun0 -j MASQUERADE

Περιορίστε τον κανόνα στη διεπαφή σήραγγας και την περιοχή VPC, όπως παραπάνω, αντί να κάνετε masquerade ό,τι προωθεί ο κεντρικός. Ο στενότερος κανόνας είναι ευκολότερο να τον σκεφτείς και δεν αλλάζει σιωπηλά κίνηση που έπρεπε να κρατήσει την αρχική της διεύθυνση πηγής.

Κάντε τη διαδρομή LAN να φτάνει αυτόματα αν μπορείτε: μια επιλογή DHCP, μια αναγγελία δρομολογητή ή μια στατική διαδρομή που σπρώχνεται από ό,τι διαχειρίζεται το LAN. Μια διαδρομή που υπάρχει μόνο σε ένα μηχάνημα δοκιμής θα κάνει τον σχεδιασμό να φαίνεται χαλασμένος τη στιγμή που κάποιος άλλος θα το δοκιμάσει.

Και η απάντηση χρειάζεται διαδρομή

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

Παρακολουθήστε τους μετρητές, όχι μόνο το ping. Ένας κανόνας masquerade με μηδέν πακέτα σας λέει ότι το αίτημα δεν έφτασε ποτέ στη διεπαφή σήραγγας, κάτι που δείχνει πίσω στη διαδρομή LAN ή στον πίνακα δρομολόγησης του ίδιου του πελάτη. Ένας κανόνας με πακέτα αλλά χωρίς απαντήσεις δείχνει στην πλευρά του VPC, στους κανόνες εξουσιοδότησης ή σε μια ομάδα ασφαλείας που δεν δέχεται τη μεταφρασμένη πηγή. Διαβάστε και τις δύο κατευθύνσεις πριν αλλάξετε οτιδήποτε, γιατί ένας αριθμός που αυξάνεται μόνο στη μία πλευρά είναι μονόδρομη διαδρομή και όχι αργή.

Θυμηθείτε ότι το endpoint είναι διαχειριζόμενη υπηρεσία. Δεν υπάρχει αρχείο διαμόρφωσης διακομιστή για επεξεργασία ούτε οδηγία client-config για προσθήκη, οπότε οδηγίες γραμμένες για αυτοδιαχειριζόμενο διακομιστή OpenVPN με προσαρμοσμένες διαδρομές υποδικτύου πελάτη δεν μεταφέρονται. Στην AWS οι μοχλοί είναι η συσχέτιση υποδικτύου, οι κανόνες εξουσιοδότησης και οι πίνακες δρομολόγησης του VPC.

Η κοινή ταυτότητα είναι το σημείο που πρέπει να απαντήσει η πολιτική

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

Αυτό μπορεί να είναι αποδεκτό ή μπορεί να είναι ο λόγος που ο σχεδιασμός απορρίπτεται. Εξαρτάται από το τι υποθέτουν οι πόροι του VPC για το ποιος καλεί. Μια κοινή ταυτότητα που ταιριάζει στο μοντέλο εξουσιοδότησης είναι εντάξει· μία που μετατρέπει σιωπηλά μια μεμονωμένη πιστοποιημένη συνεδρία σε πρόσβαση σε όλο το LAN είναι εύρημα που περιμένει να γραφτεί.

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

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

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