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

Ονομάστε τον παραλήπτη πριν πληκτρολογήσετε οτιδήποτε

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

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

Ελέγξτε την ταυτότητα του κεντρικού υπολογιστή, την εγγραφή και τη διαπραγμάτευση

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

ssh-keygen -F ssh.internal.example.net -f ~/.ssh/known_hosts
ssh -o StrictHostKeyChecking=yes ssh.internal.example.net

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

ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub
sudo sshd -T | grep -E 'hostkey|kexalgorithms|cipher'

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

Διαβάστε τις μεθόδους που δέχεται πραγματικά ο διακομιστής

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

sudo sshd -T | grep -E 'passwordauthentication|pubkeyauthentication|permitrootlogin'

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

Αντιμετωπίστε μια προειδοποίηση κλειδιού κεντρικού υπολογιστή ως βήμα περιστατικού

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

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

Τι δεν καλύπτει αυτός ο οδηγός

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

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

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