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

Οι δύο προορισμοί που εμπλέκονται δεν είναι εναλλάξιμοι. Η δρομολόγηση πρέπει να το πει ρητά.

Πού πηγαίνει πραγματικά η αναζήτηση του peer

Καταγράψτε τους ενεργούς κανόνες, τον πίνακα που κρατά τη διαδρομή XFRM και τη δημόσια διεύθυνση του peer. Έπειτα δείτε τη διαδρομή που θα ακολουθούσε η εξωτερική σύνδεση με την πραγματική πηγή και σήμανσή της. Ένας γενικός προορισμός δεν σας λέει τίποτα για αυτή τη διαδρομή ελέγχου. Μόνο η πραγματική πηγή και η σήμανση δίνουν χρήσιμη απάντηση.

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

ip rule show
ip route show table 220
ip -4 route get 198.51.100.44 from 10.40.0.2
ip xfrm policy list

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

Επιλογές αποκλεισμού σε μια σύγχρονη πύλη

Η τεκμηρίωση του strongSwan για VPN βασισμένο σε δρομολόγηση παραθέτει δύο πρακτικές απαντήσεις. Η μία σημάνει IKE και ESP ώστε ο κανόνας προς τον πίνακα XFRM να μην τα πιάνει. Η άλλη αφήνει μια διαδρομή peer ή έναν αποκλεισμό που η αναζήτηση μπορεί ακόμη να φτάσει.

Πάρτε αυτή που μπορεί να εκφράσει το σύνολο κανόνων σας χωρίς παρενέργειες. Η σήμανση είναι καθαρή όταν το υπόλοιπο stack χρησιμοποιεί ήδη σημάνσεις. Είναι κίνδυνος όταν η ίδια μάσκα σημαίνει κάτι άλλο σε άλλον κανόνα. Και οι δύο τύποι πακέτων χρειάζονται τη μεταχείριση ούτως ή άλλως.

Η σήμανση μόνο του IKE αφήνει τα πακέτα δεδομένων στην παγιδευμένη διαδρομή. Αυτό παράγει μια σήραγγα που κάνει χειραψία και μετά δεν μεταφέρει τίποτα.

Η σήμανση είναι ένα bit στο fwmark του πακέτου που τίποτα άλλο στην πύλη δεν διεκδικεί: το 0x1 με μάσκα 0x1 είναι η συνήθης επιλογή και πρέπει να οριστεί σε δύο σημεία για να δουλέψει ο αποκλεισμός. Το Charon το χρειάζεται στην υποδοχή IKE, και οι ρυθμίσεις σήμανσης εισερχομένων και εξερχομένων της παιδικής σύνδεσης χρειάζονται την ίδια τιμή ώστε και τα ενθυλακωμένα πακέτα να βγαίνουν σημασμένα. Μια μάσκα 0x1 αντί για 0xffffffff αφήνει τα υπόλοιπα bit ελεύθερα, κάτι που μετράει όταν ένα άλλο υποσύστημα σημαίνει ήδη πακέτα στον ίδιο κεντρικό υπολογιστή. Με και τα δύο ορισμένα, ο κανόνας γράφεται ως αποκλεισμός, ώστε τα σημασμένα πακέτα να παρακάμπτουν τον πίνακα που κρατά τη διαδρομή XFRM και να πέφτουν στον κύριο πίνακα:

ip rule add not fwmark 0x1/0x1 lookup 220 pref 1000
ip -4 route get 198.51.100.44 from 10.40.0.2 mark 0x1

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

Τι προϋποθέτει η αυτόματη εγκατάσταση για την κατασκευή

Αυτόματη εγκατάσταση διαδρομής για διεπαφή XFRM εξαρτάται από την έκδοση του strongSwan και τη διαμόρφωσή της. Το ID της διεπαφής, η εγκατεστημένη πολιτική και η συσχέτιση πρέπει όλα να αναφέρονται στα προβλεπόμενα αντικείμενα. Μια ασυμφωνία εμφανίζεται ως διαδρομή που δείχνει ήσυχα κάπου πραγματικά.

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

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

Παρακολουθήστε την πρώτη ανανέωση

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

ip -4 route get 198.51.100.44
sudo swanctl --list-sas
sudo tcpdump -ni any 'udp port 500 or esp'

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

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

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