Κάθε πελάτης του Azure point-to-site λαμβάνει μια διεύθυνση από τη δεξαμενή όταν πιστοποιείται και τη διατηρεί μόνο για όσο διαρκεί αυτή η σύνδεση. Δεν υπάρχει πίνακας δεσμεύσεων, ούτε αντιστοίχιση ανά χρήστη, ούτε ρύθμιση πύλης που να σημαίνει «δώσε πάντα σε αυτό το άτομο τη 172.16.0.10». Αυτός ο ένας μηχανισμός εξηγεί και τα δύο συμπτώματα που συναντούν αργότερα οι άνθρωποι: έναν κανόνα NSG που παύει να ταιριάζει με χρήστη με τον οποίο ταίριαζε, και μια λίστα επιτρεπόμενων που αφήνει σιωπηλά να περάσει μηχάνημα που κανείς δεν πρόσθεσε επίτηδες. Η αντικατάσταση του κανόνα με έναν εξυπνότερο κανόνα IP δεν διορθώνει κανένα από τα δύο, γιατί αυτό που ονομάζει ο κανόνας επαναχορηγείται με βάση πρόγραμμα που δεν ελέγχετε.

Η δεξαμενή είναι χωρητικότητα, όχι ταυτότητα. Υπάρχει ώστε οι ταυτόχρονες σήραγγες να παίρνουν μοναδικές διευθύνσεις, και τις ανακυκλώνει τη στιγμή που λήγει μια μίσθωση. Μόλις αυτό ξεκαθαρίσει, το χρήσιμο ερώτημα παύει να είναι «πώς καρφιτσώνω αυτόν τον πελάτη» και γίνεται «απέναντι σε τι μπορώ να γράψω κανόνα που η πύλη δεν θα ανακυκλώσει».

Τι κάνει πραγματικά η πύλη όταν συνδέεται ένας πελάτης

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

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

Οποιαδήποτε αλλαγή στη ρύθμιση point-to-site επαναφέρει επίσης τον χώρο μισθώσεων. Διαφορετικός τύπος πιστοποίησης, δεξαμενή με άλλο μέγεθος, νέο εύρος δεξαμενής ή πύλη που κατεδαφίζεται και ξαναχτίζεται, όλα στέλνουν τους πελάτες πίσω σε μια δεξαμενή που δεν αντιστοιχεί πια στις παλιές διευθύνσεις τους. Τίποτα από αυτή την αλλαγή δεν αγγίζει το NSG σας, γι' αυτό η βλάβη φαίνεται αυθόρμητη.

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

Ένα NSG που βασίζεται στην IP του πελάτη είναι στην πραγματικότητα κανόνας για τη σειρά σύνδεσης

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

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

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

Η μίσθωση του πελάτη και η διεύθυνση της πύλης είναι διαφορετικά αντικείμενα

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

Αυτή η σταθερότητα είναι ό,τι χρειάζεται ένας τοπικός ομότιμος στη ρύθμισή του, και δεν λέει τίποτα για την αναγνώριση μεμονωμένου πελάτη. Όταν ένας συνεργάτης ρωτά ποια διεύθυνση θα δει, η απάντηση είναι η δημόσια IP της πύλης στο site-to-site ή ένα κοινόχρηστο εύρος NAT — ποτέ η μίσθωση σήραγγας ενός φορητού.

Οι ομαδικές δεξαμενές σας δίνουν ένα εύρος άξιο για κανόνες

Το Virtual WAN point-to-site υποστηρίζει ομάδες χρηστών, και σε κάθε ομάδα μπορεί να ανατεθεί δική της δεξαμενή διευθύνσεων πελατών. Η ιδιότητα μέλους καθορίζεται από την ταυτότητα, οπότε το εύρος στο οποίο πέφτει ένας πελάτης γίνεται προβλέψιμο: οι λειτουργίες σε ένα εύρος, οι εργολάβοι σε άλλο, και το εύρος είναι κάτι που ένας κανόνας τείχους προστασίας ή NSG μπορεί να ονομάσει χωρίς εικασίες.

Το σύνολο κανόνων που προκύπτει έχει μορφή που μπορείτε να εξετάσετε:

  • μία δεξαμενή ανά κοινό, διαστασιολογημένη για αιχμές ταυτόχρονων συνεδριών και όχι για αριθμό ατόμων·
  • η ιδιότητα μέλους ομάδας διέπεται από την ταυτότητα, όχι από επεξεργασία κανόνων κάθε φορά που κάποιος προσχωρεί·
  • κανόνες NSG ή Azure Firewall γραμμένοι απέναντι σε εύρη δεξαμενής, ποτέ απέναντι σε μεμονωμένες μισθώσεις·
  • ξεχωριστό κόμβο ή πύλη για κοινά που δεν πρέπει ποτέ να μοιράζονται εύρος.
Rule targetSurvives a reconnectWhat it still cannot express
Client tunnel addressNoFollows connection order and admits whoever holds the address next
Whole client poolYesGrants every connected client identical access
Virtual WAN group poolYesOnly as reliable as group membership
Gateway public IPUntil the gateway is recreatedIdentifies the site, not the person

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

Όταν η ανάπτυξη δεν μπορεί να μετακινηθεί στο Virtual WAN

Πολλές πύλες παραμένουν απλές πύλες VPN, και η μετάβαση στο Virtual WAN δεν είναι ασήμαντη αλλαγή. Η πρακτική απάντηση είναι να μετακινήσετε την απόφαση ανά χρήστη από το φίλτρο πακέτων σε κάτι που ξέρει ήδη ποιος είναι ο χρήστης.

Η ταυτότητα σε επίπεδο πόρου είναι η φθηνότερη εκδοχή. Τα Storage, SQL και Key Vault υποστηρίζουν όλα πιστοποίηση Entra ID με αναθέσεις ρόλων ανά χρήστη ή ανά ομάδα, οπότε το VPN χρειάζεται μόνο να αποδείξει δικτυακή προσβασιμότητα. Ένας κεντρικός υπολογιστής άλματος με ονομαστικούς λογαριασμούς κάνει την ίδια δουλειά για διοικητική εργασία, γιατί ο κεντρικός υπολογιστής καταγράφει το άτομο και η σήραγγα απλώς μεταφέρει πακέτα. Η καταχώριση πελατών στο DNS και η έγκριση του ονόματος αντί του αριθμού ανεβάζει τον κανόνα ένα επίπεδο ψηλότερα. Η ταυτότητα σε επίπεδο εφαρμογής — θέμα πιστοποιητικού, αξίωση διακριτικού, ιδιότητα μέλους ομάδας — λειτουργεί όταν αυτό που καλείται να αποφασίσει είναι η εφαρμογή, όχι το δίκτυο.

Για συνεργάτη που επιμένει σε σταθερή διεύθυνση πηγής, η απάντηση είναι site-to-site ή ExpressRoute με καθορισμένο πρόθεμα ομοτίμου. Βάζουν το πρόθεμα ομοτίμου στη λίστα επιτρεπόμενων, η διεύθυνση που εμφανίζεται στη δική τους πλευρά ανήκει στην πύλη και δεν αλλάζει όταν κάποιος επανεκκινήσει ένα φορητό.

Ελέγξτε τη δεξαμενή πριν επεξεργαστείτε άλλη λίστα επιτρεπόμενων

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

Βάλτε τρία πράγματα σε μία σελίδα πριν αγγίξετε κανόνα: τη δεξαμενή point-to-site, τον χώρο διευθύνσεων του εικονικού δικτύου και τα τοπικά εύρη. Δεν πρέπει να επικαλύπτονται, και η δεξαμενή χρειάζεται χώρο για κάθε ταυτόχρονο πελάτη συν ένα περιθώριο για επανασυνδέσεις.

Έπειτα κλείστε τον κύκλο με αυτή τη σειρά:

  • Συνδεθείτε από δύο μηχανήματα και με τις δύο σειρές και συγκρίνετε τις διευθύνσεις· αν μπορούν να ανταλλάσσονται, κανένας κανόνας βασισμένος σε διεύθυνση δεν είναι ασφαλής.
  • Ελέγξτε αν η πύλη είναι Virtual WAN· αν είναι, χρησιμοποιήστε ομαδικές δεξαμενές αντί για κανόνες ανά διεύθυνση.
  • Ρωτήστε τι συμβαίνει όταν ένας κανόνας πετύχει λάθος άτομο· αν η απάντηση είναι περιστατικό πρόσβασης, μετακινήστε τον έλεγχο στην ταυτότητα.
  • Καταγράψτε ποιο εύρος ανήκει σε ποια ομάδα στο ίδιο αποθετήριο με τους ορισμούς NSG.
  • Δοκιμάστε ξανά μετά από οποιαδήποτε αλλαγή δεξαμενής, πιστοποίησης ή πύλης, γιατί αυτές οι αλλαγές ξαναγράφουν την αντιστοίχιση χωρίς να το ανακοινώσουν.

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