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

Επιβεβαιώστε τη διεπαφή που χρειάζεται το πρωτόκολλο

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

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

sudo ip tuntap add dev tun9 mode tun
sudo ip tuntap del dev tun9 mode tun
sudo ip link add wgtest type wireguard && sudo ip link del wgtest

Μια άρνηση στο πρώτο ζεύγος σημαίνει ότι το TUN δεν είναι διαθέσιμο και η προεπιλεγμένη λειτουργία του OpenVPN δεν μπορεί να ξεκινήσει, ενώ μια άρνηση στην τελευταία γραμμή σημαίνει ότι λείπει η διεπαφή πυρήνα του WireGuard. Η τεκμηρίωση του πυρήνα για TUN/TAP περιγράφει τη συσκευή που δοκιμάζει ο πρώτος έλεγχος. Καμία από τις δύο αποτυχίες δεν διορθώνεται με επανεγκατάσταση του πακέτου VPN.

Θυμηθείτε ότι η εισερχόμενη διαδρομή έχει δύο ιδιοκτήτες

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

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

Σχεδιάστε την επιστροφή, όχι μόνο την έξοδο

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

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

sysctl -n net.ipv4.ip_forward
sudo nft list ruleset | head -n 40
ip -4 route show default

Αποφασίστε ρητά για το IPv6

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

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

Αποδείξτε το από εξωτερικό πελάτη

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

sudo wg show wg0 latest-handshakes
ip -4 route get 203.0.113.44
sudo journalctl -u wg-quick@wg0 -n 15 --no-pager

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

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