Ένας πελάτης SSH συνδέεται με ένα Διακομιστής Secure Shell , το οποίο σας επιτρέπει να εκτελείτε εντολές τερματικού σαν να κάθεστε μπροστά σε άλλο υπολογιστή. Αλλά ένας πελάτης SSH σάς επιτρέπει επίσης να «διοχετεύσετε» μια θύρα μεταξύ του τοπικού σας συστήματος και ενός απομακρυσμένου διακομιστή SSH.
Υπάρχουν τρεις διαφορετικοί τύποι σήραγγας SSH και όλοι χρησιμοποιούνται για διαφορετικούς σκοπούς. Καθένα περιλαμβάνει τη χρήση ενός διακομιστή SSH για την ανακατεύθυνση της κίνησης από τη μία θύρα δικτύου στην άλλη. Η επισκεψιμότητα αποστέλλεται μέσω της κρυπτογραφημένης σύνδεσης SSH, επομένως δεν μπορεί να παρακολουθείται ή να τροποποιείται κατά τη μεταφορά.
Μπορείτε να το κάνετε με το
ssh
εντολή που περιλαμβάνεται σε Linux, macOS και άλλα
UNIX-όπως
λειτουργικά συστήματα. Στα Windows, που δεν περιλαμβάνει μια ενσωματωμένη εντολή ssh, προτείνουμε το δωρεάν εργαλείο
Στόκος
για σύνδεση σε διακομιστές SSH. Υποστηρίζει επίσης τη σήραγγα SSH.
Προώθηση τοπικής θύρας: Κάντε πρόσβαση σε απομακρυσμένους πόρους στο τοπικό σας σύστημα
Η "Προώθηση τοπικής θύρας" σάς επιτρέπει να έχετε πρόσβαση σε πόρους τοπικού δικτύου που δεν εκτίθενται στο Διαδίκτυο. Για παράδειγμα, ας υποθέσουμε ότι θέλετε να αποκτήσετε πρόσβαση σε έναν διακομιστή βάσης δεδομένων στο γραφείο σας από το σπίτι σας. Για λόγους ασφαλείας, αυτός ο διακομιστής βάσης δεδομένων έχει ρυθμιστεί μόνο για να δέχεται συνδέσεις από το τοπικό δίκτυο γραφείων. Αλλά εάν έχετε πρόσβαση σε έναν διακομιστή SSH στο γραφείο και ότι ο διακομιστής SSH επιτρέπει συνδέσεις εκτός του δικτύου γραφείων, τότε μπορείτε να συνδεθείτε σε αυτόν τον διακομιστή SSH από το σπίτι και να αποκτήσετε πρόσβαση στον διακομιστή βάσης δεδομένων σαν να ήσασταν στο γραφείο. Αυτό συμβαίνει συχνά, καθώς είναι πιο εύκολο να ασφαλίσετε έναν διακομιστή SSH από επιθέσεις παρά να εξασφαλίσετε μια ποικιλία διαφορετικών πόρων δικτύου.
Για να το κάνετε αυτό, δημιουργείτε μια σύνδεση SSH με τον διακομιστή SSH και πείτε στον πελάτη να προωθήσει την κίνηση από μια συγκεκριμένη θύρα από τον τοπικό υπολογιστή σας - για παράδειγμα, τη θύρα 1234 - στη διεύθυνση του διακομιστή της βάσης δεδομένων και της θύρας του στο δίκτυο γραφείων. Έτσι, όταν προσπαθείτε να αποκτήσετε πρόσβαση στο διακομιστή βάσης δεδομένων στη θύρα 1234, ο τρέχων υπολογιστής σας, "localhost", αυτή η κίνηση αυτόματα "διοχετεύεται" μέσω της σύνδεσης SSH και αποστέλλεται στον διακομιστή βάσης δεδομένων. Ο διακομιστής SSH βρίσκεται στη μέση, προωθώντας κίνηση πίσω και πίσω. Μπορείτε να χρησιμοποιήσετε οποιαδήποτε γραμμή εντολών ή γραφικό εργαλείο για να αποκτήσετε πρόσβαση στο διακομιστή βάσης δεδομένων σαν να εκτελείται στον τοπικό υπολογιστή σας.
Για να χρησιμοποιήσετε τοπική προώθηση, συνδεθείτε κανονικά με τον διακομιστή SSH, αλλά και προμηθεύστε το
-ΜΕΓΑΛΟ
διαφωνία. Η σύνταξη είναι:
ssh -L local_port: remote_address: remote_port [email protected]
Για παράδειγμα, ας υποθέσουμε ότι ο διακομιστής βάσης δεδομένων στο γραφείο σας βρίσκεται στη διεύθυνση 192.168.1.111 στο δίκτυο γραφείων. Έχετε πρόσβαση στον διακομιστή SSH του γραφείου στη διεύθυνση
σς.υουρουφικη.κομ
, και ο λογαριασμός χρήστη σας στον διακομιστή SSH είναι
βαρίδι
. Σε αυτήν την περίπτωση, η εντολή σας θα μοιάζει με αυτήν:
ssh -L 8888: 192.168.1.111: 1234 [email protected]
Αφού εκτελέσετε αυτήν την εντολή, θα έχετε πρόσβαση στον διακομιστή βάσης δεδομένων στη θύρα 8888 στο localhost. Επομένως, εάν ο διακομιστής βάσης δεδομένων πρόσφερε πρόσβαση στον Ιστό, θα μπορούσατε να συνδέσετε το http: // localhost: 8888 στο πρόγραμμα περιήγησής σας για πρόσβαση σε αυτό. Εάν είχατε ένα εργαλείο γραμμής εντολών που χρειάζεται τη διεύθυνση δικτύου μιας βάσης δεδομένων, θα το δείγατε στο localhost: 8888. Όλη η κυκλοφορία που αποστέλλεται στη θύρα 8888 στον υπολογιστή σας θα διοχετευτεί στο 192.168.1.111.11234 στο δίκτυο του γραφείου σας.
Είναι λίγο πιο συγκεχυμένο εάν θέλετε να συνδεθείτε σε μια εφαρμογή διακομιστή που εκτελείται στο ίδιο σύστημα με τον ίδιο τον διακομιστή SSH. Για παράδειγμα, ας υποθέσουμε ότι έχετε έναν διακομιστή SSH που εκτελείται στη θύρα 22 στον υπολογιστή γραφείου σας, αλλά έχετε επίσης έναν διακομιστή βάσης δεδομένων που εκτελείται στη θύρα 1234 στο ίδιο σύστημα στην ίδια διεύθυνση. Θέλετε να αποκτήσετε πρόσβαση στο διακομιστή βάσης δεδομένων από το σπίτι, αλλά το σύστημα δέχεται μόνο συνδέσεις SSH στη θύρα 22 και το τείχος προστασίας δεν επιτρέπει άλλες εξωτερικές συνδέσεις.
Σε αυτήν την περίπτωση, θα μπορούσατε να εκτελέσετε μια εντολή όπως η ακόλουθη:
ssh -L 8888: localhost: 1234 [email protected]
Όταν προσπαθείτε να αποκτήσετε πρόσβαση στο διακομιστή βάσης δεδομένων στη θύρα 8888 στον τρέχοντα υπολογιστή σας, η κίνηση θα σταλεί μέσω της σύνδεσης SSH. Όταν φτάνει στο σύστημα που εκτελεί τον διακομιστή SSH, ο διακομιστής SSH θα τον στείλει στη θύρα 1234 στο "localhost", που είναι ο ίδιος υπολογιστής που εκτελεί τον ίδιο τον διακομιστή SSH. Έτσι, το "localhost" στην παραπάνω εντολή σημαίνει "localhost" από την προοπτική του απομακρυσμένου διακομιστή.
Για να το κάνετε αυτό στην εφαρμογή PuTTY στα Windows, επιλέξτε Σύνδεση> SSH> Σήραγγες. Επιλέξτε "Τοπική" επιλογή. Για το "Source Port", εισαγάγετε την τοπική θύρα. Για "Προορισμός", εισαγάγετε τη διεύθυνση προορισμού και τη θύρα με τη μορφή remote_address: remote_port.
Για παράδειγμα, εάν θέλετε να ρυθμίσετε την ίδια σήραγγα SSH όπως παραπάνω, θα εισαγάγατε
θθθθ
ως θύρα προέλευσης και
localhost: 1234
ως προορισμό. Κάντε κλικ στο "Προσθήκη" στη συνέχεια και στη συνέχεια κάντε κλικ στο "Άνοιγμα" για να ανοίξετε τη σύνδεση SSH. Θα πρέπει επίσης να εισαγάγετε τη διεύθυνση και τη θύρα του ίδιου του διακομιστή SSH στην κύρια οθόνη «Συνεδρία» πριν από τη σύνδεση, φυσικά.
Προώθηση απομακρυσμένης θύρας: Κάντε πρόσβαση στους τοπικούς πόρους σε απομακρυσμένο σύστημα
Η "Προώθηση απομακρυσμένης θύρας" είναι το αντίθετο της τοπικής προώθησης και δεν χρησιμοποιείται τόσο συχνά. Σας επιτρέπει να διαθέσετε έναν πόρο στον τοπικό σας υπολογιστή στον διακομιστή SSH. Για παράδειγμα, ας υποθέσουμε ότι χρησιμοποιείτε διακομιστή ιστού στον τοπικό υπολογιστή στον οποίο βρίσκεστε μπροστά. Αλλά ο υπολογιστής σας βρίσκεται πίσω από ένα τείχος προστασίας που δεν επιτρέπει την εισερχόμενη κυκλοφορία στο λογισμικό διακομιστή.
Υποθέτοντας ότι μπορείτε να αποκτήσετε πρόσβαση σε έναν απομακρυσμένο διακομιστή SSH, μπορείτε να συνδεθείτε σε αυτόν τον διακομιστή SSH και να χρησιμοποιήσετε προώθηση απομακρυσμένης θύρας. Ο πελάτης SSH θα ζητήσει από τον διακομιστή να προωθήσει μια συγκεκριμένη θύρα - ας πούμε, θύρα 1234 - στον διακομιστή SSH σε μια συγκεκριμένη διεύθυνση και θύρα στον τρέχοντα υπολογιστή ή το τοπικό σας δίκτυο. Όταν κάποιος αποκτά πρόσβαση στη θύρα 1234 του διακομιστή SSH, αυτή η κίνηση αυτόματα θα «διοχετεύεται» μέσω της σύνδεσης SSH. Όποιος έχει πρόσβαση στον διακομιστή SSH θα μπορεί να έχει πρόσβαση στον διακομιστή ιστού που εκτελείται στον υπολογιστή σας. Αυτός είναι ουσιαστικά ένας τρόπος για τη σήραγγα μέσω τείχους προστασίας.
Για να χρησιμοποιήσετε απομακρυσμένη προώθηση, χρησιμοποιήστε το
ssh
εντολή με το
- Ρ
διαφωνία. Η σύνταξη είναι σε μεγάλο βαθμό η ίδια με την τοπική προώθηση:
ssh -R remote_port: local_address: local_port [email protected]
Ας υποθέσουμε ότι θέλετε να κάνετε μια εφαρμογή διακομιστή να ακούει στη θύρα 1234 στον τοπικό υπολογιστή σας διαθέσιμη στη θύρα 8888 στον απομακρυσμένο διακομιστή SSH. Η διεύθυνση του διακομιστή SSH είναι
σς.υουρουφικη.κομ
και το όνομα χρήστη σας στον διακομιστή SSH είναι
βαρίδι
. Θα εκτελέσετε την ακόλουθη εντολή:
ssh -R 8888: localhost: 1234 [email protected]
Κάποιος θα μπορούσε στη συνέχεια να συνδεθεί με τον διακομιστή SSH στη θύρα 8888 και αυτή η σύνδεση θα διοχετευόταν στην εφαρμογή διακομιστή που εκτελείται στη θύρα 1234 στον τοπικό υπολογιστή από τον οποίο δημιουργήσατε τη σύνδεση.
Για να το κάνετε αυτό στο PuTTY στα Windows, επιλέξτε Σύνδεση> SSH> Σήραγγες. Ορίστε την επιλογή "Απομακρυσμένη". Για το "Source Port", εισαγάγετε την απομακρυσμένη θύρα. Για "Προορισμός", εισαγάγετε τη διεύθυνση προορισμού και τη θύρα στη φόρμα local_address: local_port.
Για παράδειγμα, εάν θέλετε να ρυθμίσετε το παραπάνω παράδειγμα, θα εισαγάγατε
θθθθ
ως θύρα προέλευσης και
localhost: 1234
ως προορισμό. Κάντε κλικ στο "Προσθήκη" στη συνέχεια και στη συνέχεια κάντε κλικ στο "Άνοιγμα" για να ανοίξετε τη σύνδεση SSH. Θα πρέπει επίσης να εισαγάγετε τη διεύθυνση και τη θύρα του ίδιου του διακομιστή SSH στην κύρια οθόνη «Συνεδρία» πριν από τη σύνδεση, φυσικά.
Οι χρήστες μπορούν στη συνέχεια να συνδεθούν στη θύρα 8888 στον διακομιστή SSH και η κυκλοφορία τους θα διοχετευτεί στη θύρα 1234 στο τοπικό σας σύστημα.
Από προεπιλογή, ο απομακρυσμένος διακομιστής SSH θα ακούει μόνο συνδέσεις από τον ίδιο κεντρικό υπολογιστή. Με άλλα λόγια, μόνο τα άτομα στο ίδιο σύστημα με τον ίδιο τον διακομιστή SSH θα μπορούν να συνδεθούν. Αυτό είναι για λόγους ασφαλείας. Θα πρέπει να ενεργοποιήσετε την επιλογή "GatewayPorts" στο sshd_config στον απομακρυσμένο διακομιστή SSH εάν θέλετε να παρακάμψετε αυτήν τη συμπεριφορά.
Προώθηση δυναμικής θύρας: Χρησιμοποιήστε τον διακομιστή SSH ως διακομιστή μεσολάβησης
ΣΧΕΤΙΖΟΜΑΙ ΜΕ: Ποια είναι η διαφορά μεταξύ ενός VPN και ενός διακομιστή μεσολάβησης;
Υπάρχει επίσης "δυναμική προώθηση θυρών", η οποία λειτουργεί παρόμοια με διακομιστή μεσολάβησης ή VPN. Ο πελάτης SSH θα δημιουργήσει ένα Αντιπρόσωπος SOCKS μπορείτε να διαμορφώσετε εφαρμογές για χρήση. Όλη η κίνηση που αποστέλλεται μέσω του διακομιστή μεσολάβησης θα αποστέλλεται μέσω του διακομιστή SSH. Αυτό είναι παρόμοιο με την τοπική προώθηση - παίρνει την τοπική κίνηση που αποστέλλεται σε μια συγκεκριμένη θύρα στον υπολογιστή σας και την αποστέλλει μέσω της σύνδεσης SSH σε μια απομακρυσμένη τοποθεσία.
ΣΧΕΤΙΖΟΜΑΙ ΜΕ: Γιατί η χρήση ενός δημόσιου δικτύου Wi-Fi μπορεί να είναι επικίνδυνη, ακόμη και κατά την πρόσβαση σε κρυπτογραφημένους ιστότοπους
Για παράδειγμα, ας υποθέσουμε ότι χρησιμοποιείτε ένα δημόσιο δίκτυο Wi-Fi. Θέλεις να περιηγηθείτε με ασφάλεια χωρίς να παρακολουθείτε . Εάν έχετε πρόσβαση σε έναν διακομιστή SSH στο σπίτι, θα μπορούσατε να συνδεθείτε σε αυτόν και να χρησιμοποιήσετε τη δυναμική προώθηση θυρών. Ο πελάτης SSH θα δημιουργήσει έναν διακομιστή μεσολάβησης SOCKS στον υπολογιστή σας. Όλη η κίνηση που αποστέλλεται σε αυτόν τον διακομιστή μεσολάβησης θα σταλεί μέσω της σύνδεσης διακομιστή SSH. Κανείς που παρακολουθεί το δημόσιο δίκτυο Wi-Fi δεν θα μπορεί να παρακολουθεί την περιήγησή σας ή να λογοκρίνει τους ιστότοπους στους οποίους έχετε πρόσβαση. Από την οπτική γωνία των ιστότοπων που επισκέπτεστε, θα ήταν σαν να κάθεστε μπροστά στον υπολογιστή σας στο σπίτι. Αυτό σημαίνει επίσης ότι θα μπορούσατε να χρησιμοποιήσετε αυτό το τέχνασμα για πρόσβαση σε ιστότοπους μόνο των ΗΠΑ ενώ βρίσκεστε εκτός των ΗΠΑ - υποθέτοντας ότι έχετε πρόσβαση σε έναν διακομιστή SSH στις ΗΠΑ, φυσικά.
Ως ένα άλλο παράδειγμα, μπορεί να θέλετε να αποκτήσετε πρόσβαση σε μια εφαρμογή διακομιστή πολυμέσων που έχετε στο οικιακό σας δίκτυο. Για λόγους ασφαλείας, ενδέχεται να έχετε μόνο έναν διακομιστή SSH εκτεθειμένο στο Διαδίκτυο. Δεν επιτρέπετε εισερχόμενες συνδέσεις από το Διαδίκτυο στην εφαρμογή διακομιστή πολυμέσων. Θα μπορούσατε να ρυθμίσετε την προώθηση δυναμικής θύρας, να διαμορφώσετε ένα πρόγραμμα περιήγησης ιστού για να χρησιμοποιήσετε τον διακομιστή μεσολάβησης SOCKS και, στη συνέχεια, να αποκτήσετε πρόσβαση σε διακομιστές που εκτελούνται στο οικιακό σας δίκτυο μέσω του προγράμματος περιήγησης ιστού σαν να κάθεστε μπροστά στο σύστημα SSH στο σπίτι σας. Για παράδειγμα, εάν ο διακομιστής πολυμέσων σας βρίσκεται στη θύρα 192.168.1.123 στο οικιακό σας δίκτυο, μπορείτε να συνδέσετε τη διεύθυνση
192.168.1.123
σε οποιαδήποτε εφαρμογή χρησιμοποιώντας το διακομιστή μεσολάβησης SOCKS και θα έχετε πρόσβαση στο διακομιστή πολυμέσων σαν να βρίσκεστε στο οικιακό σας δίκτυο.
Για να χρησιμοποιήσετε δυναμική προώθηση, εκτελέστε την εντολή ssh με το
-ΡΕ
επιχείρημα, όπως έτσι:
ssh -D local_port [email protected]
Για παράδειγμα, ας υποθέσουμε ότι έχετε πρόσβαση σε έναν διακομιστή SSH στο
σς.υουρχομε.κομ
και το όνομα χρήστη σας στον διακομιστή SSH είναι
βαρίδι
. Θέλετε να χρησιμοποιήσετε δυναμική προώθηση για να ανοίξετε έναν διακομιστή μεσολάβησης SOCKS στη θύρα 8888 στον τρέχοντα υπολογιστή. Θα εκτελέσετε την ακόλουθη εντολή:
ssh -D 8888 [email protected]
Στη συνέχεια θα μπορούσατε να διαμορφώσετε ένα πρόγραμμα περιήγησης ιστού ή άλλη εφαρμογή για να χρησιμοποιήσετε την τοπική σας διεύθυνση IP (127.0.01) και τη θύρα 8888. Όλη η κίνηση από αυτήν την εφαρμογή θα ανακατευθυνόταν μέσω της σήραγγας.
Για να το κάνετε αυτό στο PuTTY στα Windows, επιλέξτε Σύνδεση> SSH> Σήραγγες. Ορίστε την επιλογή «Δυναμική». Για το "Source Port", εισαγάγετε την τοπική θύρα.
Για παράδειγμα, εάν θέλετε να δημιουργήσετε έναν διακομιστή μεσολάβησης SOCKS στη θύρα 8888, θα πρέπει να εισαγάγετε
θθθθ
ως θύρα προέλευσης. Κάντε κλικ στο "Προσθήκη" στη συνέχεια και στη συνέχεια κάντε κλικ στο "Άνοιγμα" για να ανοίξετε τη σύνδεση SSH. Θα πρέπει επίσης να εισαγάγετε τη διεύθυνση και τη θύρα του ίδιου του διακομιστή SSH στην κύρια οθόνη «Συνεδρία» πριν από τη σύνδεση, φυσικά.
Στη συνέχεια, θα μπορούσατε να διαμορφώσετε μια εφαρμογή για να αποκτήσετε πρόσβαση στον διακομιστή μεσολάβησης SOCKS στον τοπικό υπολογιστή σας (δηλαδή, τη διεύθυνση IP 127.0.0.1, που δείχνει στον τοπικό υπολογιστή σας) και να καθορίσετε τη σωστή θύρα.
ΣΧΕΤΙΖΟΜΑΙ ΜΕ: Πώς να ρυθμίσετε έναν διακομιστή μεσολάβησης στον Firefox
Για παράδειγμα, μπορείτε διαμορφώστε τον Firefox για χρήση του διακομιστή μεσολάβησης SOCKS . Αυτό είναι ιδιαίτερα χρήσιμο επειδή ο Firefox μπορεί να έχει τις δικές του ρυθμίσεις διακομιστή μεσολάβησης και δεν χρειάζεται να χρησιμοποιεί ρυθμίσεις διακομιστή μεσολάβησης σε ολόκληρο το σύστημα. Ο Firefox θα στείλει την κυκλοφορία του μέσω της σήραγγας SSH, ενώ άλλες εφαρμογές θα χρησιμοποιούν κανονικά τη σύνδεσή σας στο Διαδίκτυο.
Όταν το κάνετε αυτό στον Firefox, επιλέξτε "Μη αυτόματη διαμόρφωση διακομιστή μεσολάβησης", εισαγάγετε "127.0.0.1" στο πλαίσιο κεντρικού υπολογιστή SOCKS και εισαγάγετε τη δυναμική θύρα στο πλαίσιο "Θύρα". Αφήστε τα πλαίσια διακομιστή μεσολάβησης HTTP, διακομιστή μεσολάβησης SSL και διακομιστή μεσολάβησης FTP κενά.
Η σήραγγα θα παραμείνει ενεργή και ανοιχτή για όσο διάστημα έχετε ανοιχτή τη σύνδεση περιόδου λειτουργίας SSH. Όταν τερματίσετε την περίοδο λειτουργίας SSH και αποσυνδεθείτε από έναν διακομιστή, η σήραγγα θα κλείσει επίσης. Απλώς επανασυνδεθείτε με την κατάλληλη εντολή (ή τις κατάλληλες επιλογές στο PuTTY) για να ανοίξετε ξανά τη σήραγγα.