Σας δίνει ένα περίβλημα TLS ιδιωτικό δίκτυο; Συνήθως όχι
Ένα περίβλημα προστατεύει μία ρυθμισμένη σύνδεση μεταξύ των άκρων του. Ένα δρομολογημένο VPN μεταφέρει την κίνηση κάθε εφαρμογής, που είναι διαφορετικό μοντέλο πρόσβασης.
Το TLS προστατεύει ένα κανάλι ανάμεσα σε δύο άκρα και δεν λέει τίποτα για τις υπηρεσίες που βρίσκονται μέσα του. Ένα περίβλημα μετατρέπει αυτό το κανάλι σε έναν ρυθμισμένο προωθητή, για έναν ακροατή, προς έναν προορισμό. Ένα προϊόν που πωλείται ως SSL VPN συνήθως προσθέτει μια διεπαφή, έναν πίνακα δρομολόγησης και ένα μοντέλο πρόσβασης γύρω από το ίδιο αρχικό στοιχείο. Η σύγχυση των δύο είναι ο τρόπος με τον οποίο μια λειτουργική σήραγγα εκλαμβάνεται ως πρόσβαση στο δίκτυο.
Τι συνδέει στην πραγματικότητα ένα περίβλημα υπηρεσίας
Ένα περίβλημα ακούει σε μια τοπική θύρα και προωθεί ό,τι φτάνει σε έναν ρυθμισμένο προορισμό, είτε πρόκειται για κεντρικό υπολογιστή και θύρα είτε για τοπικό πρόγραμμα. Αυτόν τον προορισμό τον επιλέγει όποιος έγραψε το αρχείο ρυθμίσεων, ένας ακροατής κάθε φορά. Η εγκατάσταση του πακέτου δεν δημιουργεί δρομολόγια, εικονική διεπαφή ή προσβασιμότητα για οτιδήποτε δεν αναφέρεται ρητά. Διαβάστε τις ρυθμίσεις πριν από την περιγραφή του πακέτου, γιατί η περιγραφή καλύπτει μια κατηγορία χρήσης και το αρχείο καλύπτει τη δική σας.
Έτσι, το χρήσιμο ερώτημα για ένα περίβλημα δεν είναι αν κρυπτογραφεί, αλλά τι βρίσκεται σε κάθε άκρο της αλυσίδας που χτίζει.
application -> local listener -> TLS connection -> remote listener -> configured backend
Διαβάστε αυτή την αλυσίδα από τις ρυθμίσεις και όχι από το εμπορικό όνομα. Κάθε βέλος είναι ένα ξεχωριστό δικτυακό άλμα με τη δική του διεύθυνση και τους δικούς του κανόνες πρόσβασης.
Βρείτε πού τελειώνει το κανάλι TLS
Αν το περίβλημα τερματίζει το TLS, ό,τι προωθεί παραπέρα είναι μια νέα σύνδεση με νέες ιδιότητες. Η ροή μπορεί να είναι απλό κείμενο σε ιδιωτικό τμήμα ή να μεταφέρει μέσα της άλλο προστατευμένο πρωτόκολλο. Το να υποθέσει κανείς οποιοδήποτε από τα δύο χωρίς να διαβάσει τις ρυθμίσεις του backend είναι ο τρόπος με τον οποίο οι άνθρωποι καταλήγουν ότι το εξωτερικό στρώμα προστατεύει δεδομένα που δεν βλέπει ξανά. Το προωθούμενο άλμα αξίζει τη δική του επιθεώρηση, στη δική του διεύθυνση και θύρα.
Ελέγξτε τον ακροατή και το backend χωριστά, γιατί μια επιτυχημένη χειραψία στην μπροστινή πόρτα δεν λέει τίποτα για την υπηρεσία πίσω της.
ss -ltnp | grep -F 443 openssl s_client -connect svc.example.net:443 -servername svc.example.net </dev/null | openssl x509 -noout -subject -dates
Η πρώτη εντολή δείχνει ποια διεργασία κατέχει τη θύρα και σε ποια διεύθυνση ακούει. Η δεύτερη εκτυπώνει το πιστοποιητικό που λαμβάνει πραγματικά ο πελάτης, και αυτός είναι ο έλεγχος ταυτότητας που δεν μπορεί να αντικαταστήσει ένας αριθμός θύρας.
Τι προσθέτει ένα δρομολογημένο VPN που δεν προσθέτει ένα περίβλημα
Ένα δρομολογημένο VPN εγκαθιστά μια διεπαφή, αναλαμβάνει την κυριότητα επιλεγμένων προθεμάτων και ενσωματώνεται με τη δρομολόγηση και την πολιτική πρόσβασης του κεντρικού υπολογιστή. Κάθε εφαρμογή στο μηχάνημα ωφελείται χωρίς να ξέρει ότι η σήραγγα υπάρχει. Ένα περίβλημα δίνει αυτή την εμβέλεια σε έναν ρυθμισμένο ακροατή και σταματά εκεί.
Η είσοδος είναι πάλι ξεχωριστή. Ένα VPN που ταυτοποιεί έναν πελάτη χρειάζεται ακόμη εξουσιοδότηση που λέει σε ποιους πόρους μπορεί να φτάσει, και ένα περίβλημα που ταυτοποιεί έναν ομότιμο χρειάζεται ακόμη ένα backend που επιβάλλει τα δικά του δικαιώματα.
Υπάρχει ένας νόμιμος συνδυασμός: ένα πρωτόκολλο VPN που μεταφέρεται μέσα σε περίβλημα TLS πάνω σε μια σκόπιμα υποστηριζόμενη διάταξη TCP. Αυτό στοιβάζει δύο στρώματα και δεν κάνει το περίβλημα και το VPN το ίδιο είδος αντικειμένου.
Συγκρίνετε το όριο που αποτυγχάνει
Γράψτε τη διεύθυνση του μπροστινού άκρου, τον ακροατή, την ταυτότητα του ομότιμου, τον στόχο του backend και τη λειτουργία της εφαρμογής πριν αλλάξετε οτιδήποτε. Στη συνέχεια συγκρίνετε όμοια με όμοια: μια επιτυχία μέσω διαφορετικού ονόματος υπολογιστή ή θύρας δεν αποδεικνύει ότι οι συνθήκες του τείχους προστασίας και του πιστοποιητικού ήταν ίδιες.
Ένα απορριφθέν αίτημα προς το backend δεν πρέπει ποτέ να διορθώνεται απενεργοποιώντας την επαλήθευση ταυτότητας του μπροστινού άκρου. Αυτό ανταλλάσσει μια διαγνώσιμη αποτυχία εξουσιοδότησης με μια μη διαγνώσιμη αποτυχία εμπιστοσύνης.
curl -sv --resolve svc.example.net:443:203.0.113.10 https://svc.example.net/health 2>&1 | head -30
Το καρφίτσωμα του ονόματος σε μια επιλεγμένη διεύθυνση χωρίζει την επίλυση ονομάτων από την προσβασιμότητα, που είναι συνήθως ο ταχύτερος τρόπος να δει κανείς ποιο από τα δύο είναι χαλασμένο.
Η σύγκριση που μετράει ονομάζει το προστατευμένο ζεύγος άκρων, το φορτίο που μεταφέρεται, τις εφαρμογές που το χρησιμοποιούν και την άδεια που επιβάλλεται στον προορισμό. Το TLS συνεισφέρει σε αυτή την περιγραφή χωρίς να την ολοκληρώνει.