Ποια διεύθυνση μπαίνει στο DNS για διακομιστή συνδεδεμένο μέσω VPN;
Ένας φιλοξενούμενος διακομιστής κρατά τρεις διευθύνσεις και δεν είναι εναλλάξιμες. Επιλέξτε την τιμή που χρειάζεται κάθε υπηρεσία και έπειτα επιβεβαιώστε την από έξω από το μηχάνημα.
Ένας φιλοξενούμενος διακομιστής με εγκατεστημένο VPN καταλήγει να κρατά τρεις διευθύνσεις, και μόνο μία από αυτές ανήκει σε κάθε θέση που πρόκειται να ρυθμίσετε. Η αντιγραφή του αριθμού από έναν πίνακα του παρόχου στο DNS, σε έναν ακροατή ή σε μια λίστα επιτρεπόμενων είναι ο τρόπος με τον οποίο ένα λειτουργικό τούνελ γίνεται υπηρεσία που κανείς δεν μπορεί να προσεγγίσει. Αυτός ο οδηγός τακτοποιεί την εργασία ώστε κάθε διεύθυνση να επιλέγεται για έναν δηλωμένο σκοπό. Απαριθμεί επίσης τις εντολές που επιβεβαιώνουν τι πραγματικά δημοσιεύσατε.
Χαρτογραφήστε τις τρεις διευθύνσεις πριν δημοσιεύσετε οτιδήποτε
Ονομάστε τις με βάση τη λειτουργία. Η διεύθυνση underlay είναι αυτή που χρησιμοποιεί το μηχάνημα για να φτάσει στο τελικό σημείο του VPN μέσω του διαδικτύου, και συχνά είναι ιδιωτική πίσω από το NAT του παρόχου. Η διεύθυνση του τούνελ ζει μέσα στο VPN και την εκχωρεί ο διακομιστής ή ο πελάτης ανάλογα με το προϊόν. Η δημόσια έξοδος είναι η διεύθυνση που καταγράφει ένας απομακρυσμένος ιστότοπος μετά τη μετάφραση, και δεν χρειάζεται να υπάρχει σε καμία διεπαφή που μπορείτε να ρωτήσετε.
Ένας πίνακας που δείχνει μία δημόσια διεύθυνση για ένα μηχάνημα σας λέει πολύ λίγα για τους άλλους δύο ρόλους. Η προσβασιμότητα του underlay είναι απαίτηση, όχι αγορά: ένα φορητό υπολογιστή πίσω από οικιακό δρομολογητή μπορεί να φτάσει σε φιλοξενούμενο τελικό σημείο VPN χωρίς να κατέχει δημόσια διεύθυνση IPv4. Αυτό που δεν μπορείτε να κάνετε είναι να επινοήσετε μια εισερχόμενη διαδρομή γράφοντας ένα όνομα που επιλύεται σε μια διεύθυνση που κανείς δεν προωθεί.
Επιλέξτε τη διεύθυνση με βάση την υπηρεσία, όχι την ετικέτα
Σημειώστε τι πρέπει να κάνει ο διακομιστής πριν επιλέξετε έναν αριθμό. Οι εξερχόμενες κλήσεις API χρειάζονται σταθερή έξοδο όταν η άλλη πλευρά τηρεί λίστα επιτρεπόμενων. Η ιδιωτική πρόσβαση χρειάζεται μια διεύθυνση τούνελ προς την οποία οι πελάτες μπορούν να δρομολογήσουν και έναν ακροατή δεσμευμένο σε αυτή. Η δημόσια φιλοξενία χρειάζεται μια εισερχόμενη αντιστοίχιση που ο πάροχος πραγματικά προσφέρει, και η διεύθυνση εξόδου μόνη της δεν την παρέχει.
Ένα μηχάνημα μπορεί να εξυπηρετήσει και τους τρεις σκοπούς και να χρησιμοποιεί ακόμη τρεις διαφορετικές διευθύνσεις. Αυτό που σπάει είναι η παραδοχή ότι μία τιμή τις καλύπτει όλες:
| Requirement | Value that belongs there | What you see when the roles are swapped |
|---|---|---|
| Outbound allowlisting | Public exit | Requests reach the service but are rejected |
| Private client access | Tunnel address | Client connects, nothing answers |
| Inbound web service | Provider mapping | Name resolves, connection times out |
Η εισερχόμενη γραμμή είναι αυτή για την οποία διαφωνούν οι άνθρωποι. Μια εγγραφή που δείχνει στη διεύθυνση εξόδου δεν δημιουργεί ακροατή, άνοιγμα τείχους προστασίας ή αντιστοίχιση θύρας, και η αναμονή δεν το αλλάζει. Όταν ο πάροχος πουλά μια αποκλειστική διεύθυνση μαζί με έναν εισερχόμενο κανόνα, αυτό το πακέτο είναι η δυνατότητα που αγοράσατε· η διεύθυνση από μόνη της δεν είναι δικαίωμα.
Εντολές που δείχνουν ποια διεύθυνση είναι ποια
Διαβάστε το μηχάνημα, όχι τον πίνακα. Τα ονόματα των διεπαφών διαφέρουν μεταξύ συστημάτων, οπότε αντιστοιχίστε τις διευθύνσεις με τις συσκευές αντί να εμπιστεύεστε μια ετικέτα.
Η πρώτη γραμμή απαριθμεί κάθε διεύθυνση IPv4 και τη συσκευή της, και η δεύτερη ρωτά τον πυρήνα ποια συσκευή θα χρησιμοποιούσε για έναν γνωστό εξωτερικό προορισμό:
ip -brief -4 addr show
ip -4 route get 198.51.100.10
curl -4 -s https://ifconfig.me
ss -lntp | grep -E ':(443|1194)'Αν η αναζήτηση διαδρομής απαντήσει με συσκευή τούνελ για δημόσια κίνηση, το πλήρες τούνελ σας ισχύει. Ο έλεγχος του ακροατή έχει την ίδια σημασία, γιατί μια διεργασία δεσμευμένη μόνο στη 127.0.0.1 δεν θα απαντήσει ποτέ στη διεύθυνση του τούνελ, όποιο όνομα κι αν δημοσιεύσετε.
Δημοσιεύστε τη και έπειτα επαληθεύστε από έξω
Δημοσιεύστε την τιμή που χρειάζεται η υπηρεσία και τίποτε άλλο: μια εγγραφή A ή AAAA για φιλοξενία, μια καταχώριση στη λίστα επιτρεπόμενων για εξερχόμενες κλήσεις, ένα προφίλ πελάτη για ιδιωτική πρόσβαση. Έπειτα δοκιμάστε από τη θέση που μετράει, και αυτή δεν είναι ποτέ το μηχάνημα που μόλις επεξεργαστήκατε.
Δύο έλεγχοι καλύπτουν τα περισσότερα, και οι δύο είναι αρκετά φθηνοί για να μείνουν σε ένα σενάριο:
dig +short vpn.example.net A
curl -4 -sS -o /dev/null -w '%{http_code}\n' https://vpn.example.net/healthΜια απάντηση DNS που αποδεικνύει ότι η εγγραφή σας υπάρχει δεν είναι απόδειξη ότι φτάνει ένα αίτημα, και ένα επιτυχημένο αίτημα αποδεικνύει μόνο ότι μια διαδρομή λειτουργεί από ένα δίκτυο. Επαναλάβετε τον έλεγχο από κινητή σύνδεση όταν εμπλέκεται λίστα επιτρεπόμενων, γιατί η έξοδος που παρατηρείτε μπορεί να εξαρτάται από την οικογένεια διευθύνσεων και τη διαδρομή που ακολουθήθηκε. Σημειώστε ποια οικογένεια επαληθεύσατε· μια λειτουργική διαδρομή IPv4 δεν λέει απολύτως τίποτα για το IPv6.
Αν η υπηρεσία είναι εισερχόμενη, η διεύθυνση εξόδου δεν αρκεί
Η εισερχόμενη πρόσβαση χρειάζεται τέσσερα πράγματα σε μία γραμμή: ένα όνομα ή μια διεύθυνση που μπορεί να φτάσει ένας πελάτης, μια διαδρομή που παραδίδει το πακέτο στο μηχάνημα, έναν ακροατή που το δέχεται και μια πολιτική που δεν το απορρίπτει. Ένα VPN αλλάζει το δεύτερο στοιχείο και μερικές φορές το πρώτο, και δεν κάνει τίποτα για το τρίτο και το τέταρτο. Όταν το τούνελ είναι η διαδρομή παράδοσης, οι πελάτες συνδέονται στη διεύθυνση του τούνελ, όχι στην έξοδο.
Καταγράψτε από ποια διεύθυνση εξαρτάται κάθε υπηρεσία και επανεξετάστε αυτή την καταγραφή κάθε φορά που ο πάροχος αλλάζει το μοντέλο δρομολόγησης. Ένας διακομιστής που απαντά ιδιωτικά και αποτυγχάνει δημόσια συνήθως δεν είναι χαλασμένος· απαντά με λάθος ταυτότητα, και η διόρθωση είναι απόφαση αντιστοίχισης και όχι αλλαγή τείχους προστασίας.