Από το strongSwan στο AWS Site-to-Site: γιατί το Child SA δεν επιλέγει τίποτα
Μια σήραγγα IKE μπορεί να είναι ενεργή ενώ η θυγατρική συσχέτιση αποκλείει τα υποδίκτυά σας. Συγκρίνετε πρώτα το τοπικό και το απομακρυσμένο CIDR στο AWS με τα leftsubnet και rightsubnet.
Η κονσόλα δείχνει up, το strongSwan αναφέρει τεκμηριωμένη συσχέτιση IKE, και τα πακέτα εξακολουθούν να μην φτάνουν. Το επόμενο που πρέπει να συγκρίνετε δεν είναι το προσυναλλασσόμενο κλειδί, αλλά το ζεύγος προθεμάτων που κάθε πλευρά πιστεύει ότι προστατεύει η σήραγγα. Περάστε τους ελέγχους παρακάτω με τη σειρά, γιατί οι δύο πρώτοι αποφασίζουν αν η σήραγγα μπορεί καθόλου να μεταφέρει την κίνησή σας.
Μεταφράστε τα ονόματα του AWS στους όρους του strongSwan
Το AWS περιγράφει τη σύνδεση από την πλευρά του πελάτη: η διεύθυνση της πύλης πελάτη και το τοπικό CIDR ανήκουν σε εσάς, και το απομακρυσμένο CIDR ανήκει στο VPC. Το strongSwan ονομάζει τα δύο άκρα left και right, με το πρόθεμά σας στο leftsubnet και το πρόθεμα του VPC στο rightsubnet. Η αντιστροφή ενός ζεύγους παράγει σήραγγα που διαπραγματεύεται και επιλέγει λάθος κίνηση.
Κατεβάστε τη διαμόρφωση που δημιουργεί το AWS για τη σύνδεση και χρησιμοποιήστε την ως αναφορά για αυτήν ακριβώς τη σύνδεση, μαζί με τις διευθύνσεις και τα προθέματα της σήραγγας. Αν αφήσετε και τα δύο πεδία CIDR κενά κατά τη δημιουργία, η υπηρεσία χρησιμοποιεί την προεπιλογή 0.0.0.0/0 σε κάθε πλευρά. Ένας δρομολογητής διαμορφωμένος με στενό πρόθεμα δεν θα ταιριάξει ποτέ, οπότε είτε συμπληρώστε τα πεδία είτε διευρύνετε σκόπιμα τον επιλογέα.
Μια ασυμφωνία εδώ μοιάζει με αποτυχία δρομολόγησης και δεν είναι.
Καρφώστε τη διεύθυνση που βλέπει πραγματικά το AWS
Ένας δρομολογητής πίσω από NAT μπορεί να στέλνει IKE από διεπαφή που η απέναντι πλευρά δεν έμαθε ποτέ. Η διεύθυνση πύλης που καταγράφεται στο AWS πρέπει να είναι αυτή που βλέπει το AWS στο δίκτυο, και ο δρομολογητής πρέπει να καρφωθεί στην ίδια τοπική διεύθυνση αντί να ακολουθεί την προεπιλεγμένη διαδρομή του.
conn %default
local_addrs = 203.0.113.10
Στο strongSwan το local_addrs επιλέγει τη διεύθυνση προέλευσης για το IKE, και παλαιότερες διαμορφώσεις OpenSwan γράφουν την ίδια ιδέα ως left. Κατευθύνετέ το στη διεπαφή που φέρει τη δημόσια διεύθυνση και έπειτα επαληθεύστε στην ίδια τη συσκευή NAT ότι τα UDP 500 και 4500 φτάνουν σε αυτόν τον κεντρικό υπολογιστή, γιατί ένας κανόνας που έμεινε από προηγούμενο δρομολογητή τα απορρίπτει σιωπηλά. Ένα σωστό ζεύγος επιλογέων με λάθος διεύθυνση προέλευσης εξακολουθεί να αποτυγχάνει, και το αρχείο καταγραφής θα κατηγορήσει την πρόταση. Αυτή η παραπλάνηση είναι ο λόγος που η διεύθυνση προέλευσης αξίζει δικό της έλεγχο.
Επιβεβαιώστε τον κανόνα προώθησης αντί να τον υποθέσετε, γιατί ένας κανόνας που ήταν σωστός για τον προηγούμενο δρομολογητή συχνά μένει.
Χειριστείτε τη φάση 1 και τη φάση 2 ξεχωριστά
Το AWS εκθέτει τις επιλογές IKE και ESP ως ξεχωριστές λίστες. Ένα σύνολο IKE που δέχονται και οι δύο πλευρές δεν λέει τίποτα για την πρόταση ESP, γιατί οι δύο λίστες είναι ανεξάρτητες. Διαβάστε και τις δύο από τη διαμόρφωση που δημιουργήθηκε και συγκρίνετέ τις μία κάθε φορά.
conn aws
ike = aes256-sha1-modp1024
esp = aes256gcm16
Η σύνταξη δεν ταξιδεύει μεταξύ υλοποιήσεων. Ένα ζεύγος που λειτουργεί στο OpenSwan, όπως phase2alg=aes_gcm με ike=aes256-sha1;modp1024, χρειάζεται μετάφραση στη μορφή esp= και ike= του strongSwan, και τα ονόματα των αλγορίθμων διαφέρουν. Επειδή το GCM επαληθεύει αυθεντικότητα καθώς κρυπτογραφεί, δεν χρειάζεται ξεχωριστό μετασχηματισμό ακεραιότητας, σε αντίθεση με ένα σύνολο CBC σε ζεύγος με SHA. Μια γραμμή φάσης 2 που επικολλάται από ένα δαίμονα σε άλλον χωρίς μετάφραση παράγει απόρριψη που διαβάζεται σαν ασυμφωνία επιλογέα.
Ελέγξτε τη θυγατρική συσχέτιση, όχι την ένδειξη της σήραγγας
Αν η σύνδεση φορτώνει αλλά δεν εμφανίζεται θυγατρική συσχέτιση, απορρίφθηκε είτε η πρόταση είτε οι επιλογείς. Αν εμφανιστεί θυγατρική και οι επιλογείς της αποκλείουν τα προθέματά σας, τα πακέτα φιλτράρονται πριν φτάσουν στη σήραγγα. Η ένδειξη της κονσόλας καλύπτει μόνο το επίπεδο IKE, οπότε δεν μπορεί να σας πει ποιο από τα δύο συνέβη.
ipsec statusall
Αναζητήστε τη θυγατρική συσχέτιση ασφαλείας και διαβάστε τους επιλογείς κίνησης που τυπώνονται δίπλα της και έπειτα συγκρίνετέ τους με τα προθέματα από τη διαμόρφωση που δημιουργήθηκε.
Δοκιμάστε από κεντρικό υπολογιστή εντός του τοπικού προθέματος προς κεντρικό υπολογιστή εντός του προθέματος του VPC και ελέγξτε τη διαδρομή επιστροφής καθώς και οποιαδήποτε ομάδα ασφαλείας ή ACL δικτύου στην πλευρά του AWS. Οι σωστοί επιλογείς δεν προστατεύουν ένα πακέτο από το να απορριφθεί αργότερα.
Όταν εξακολουθεί να αποτυγχάνει αφού ταιριάξουν οι επιλογείς
Επιβεβαιώστε ότι η διαδρομή και στις δύο πλευρές δείχνει στη σήραγγα και έπειτα επιβεβαιώστε ότι η συσκευή NAT δεν ξαναγράφει την κίνηση με τρόπο που η πολιτική δεν περιμένει. Μια σήραγγα βασισμένη σε πολιτική ταιριάζει διευθύνσεις πακέτων, οπότε μια μετάφραση που εφαρμόζεται μετά την απόφαση πολιτικής αλλάζει το αποτέλεσμα.
Καταγράψτε ένα πακέτο εισερχόμενο και ένα εξερχόμενο σε κάθε πλευρά πριν αλλάξετε άλλη πρόταση.
Καταγράψτε τους επιλογείς, τις προτάσεις φάσης 1 και φάσης 2 και τη διεύθυνση προέλευσης στο δελτίο. Αυτές οι τέσσερις τιμές εξηγούν τις περισσότερες αποτυχίες site-to-site χωρίς κλήση.