Δημοσίευσε
Εάν χρειάζεται να χρησιμοποιήσετε το SSH στο Linux για τη διαχείριση άλλων υπολογιστών από απόσταση, αυτός ο οδηγός θα σας καθοδηγήσει να κάνετε ακριβώς αυτό.
Στο σημερινό διασυνδεδεμένο τοπίο, η ικανότητα διαχείρισης υπολογιστών από διαφορετικές γεωγραφικές τοποθεσίες έχει μετατραπεί από πολυτέλεια σε ανάγκη. Υπάρχουν διάφοροι τρόποι για να γίνει αυτό, ανάλογα με το λειτουργικό σύστημα που χρησιμοποιείται. Για Συστήματα που βασίζονται σε Linux, ο πιο συνηθισμένος και πιο ασφαλής τρόπος για να διαχειρίζεστε τον υπολογιστή σας από απόσταση είναι να τον χρησιμοποιήσετε SSH (ή Ασφαλές κέλυφος).
Ας δούμε πώς να χρησιμοποιήσετε το SSH στο Linux για να συνδεθείτε με άλλους υπολογιστές.
Απαραίτητα πρώτα βήματα
Για να μπορέσετε να συνδεθείτε επιτυχώς σε άλλον υπολογιστή Linux με SSH, θα πρέπει να πληροίτε τις ακόλουθες προϋποθέσεις:
- Ο υπολογιστής-στόχος πρέπει να παραμείνει ενεργοποιημένος και συνδεδεμένος σε δίκτυο.
- Πρέπει να εγκατασταθεί και να ενεργοποιηθεί το απαραίτητο λογισμικό πελάτη και διακομιστή.
- Θα χρειαστεί να γνωρίζετε τη διεύθυνση IP ή το όνομα κεντρικού υπολογιστή του μηχανήματος προορισμού.
- Πρέπει να υπάρχουν κατάλληλες άδειες για απομακρυσμένη πρόσβαση.
- Οι διαμορφώσεις τείχους προστασίας στον απομακρυσμένο υπολογιστή πρέπει επιτρέψτε την εισερχόμενη σύνδεση.
Εάν έχετε πρόσβαση σε έναν υπολογιστή Linux που λειτουργεί, ας πούμε, από την εταιρεία φιλοξενίας ιστοσελίδων σας, θα έπρεπε να έχουν ήδη φροντίσει για όλα αυτά. Στη συνέχεια, ίσως χρειαστεί να κάνετε κάποια βασική εγκατάσταση λογισμικού στον δικό σας υπολογιστή Linux.
Χρήση SSH σε Linux: Ένας πρακτικός οδηγός
Η δημιουργία μιας λειτουργικής σύνδεσης SSH απαιτεί ενότητες λογισμικού πελάτη και διακομιστή. Το OpenSSH χρησιμεύει ως εναλλακτική λύση ανοιχτού κώδικα κυρίως για πλατφόρμες Linux.
Για να εγκαταστήσετε το κατάλληλο πρόγραμμα-πελάτη OpenSSH, θα χρειαστείτε πρόσβαση τερματικού στον τοπικό σας υπολογιστή. Σημειώστε ότι τα συστήματα Ubuntu δεν διαθέτουν προεγκατεστημένο διακομιστή SSH.
Εγκατάσταση προγράμματος-πελάτη OpenSSH
Πριν εμβαθύνετε στη διαδικασία εγκατάστασης, θα πρέπει να ελέγξετε για να βεβαιωθείτε ότι ο πελάτης SSH δεν είναι ήδη εκεί. Για να το κάνετε αυτό, απλά ανοίξτε ένα παράθυρο τερματικού. Μπορείτε είτε να αναζητήσετε "τερματικό" ή να πατήσετε ctrl + alt + t στο πληκτρολόγιό σας.
Μόλις φτάσετε στο παράθυρο του τερματικού σας, ελέγξτε για την παρουσία του προγράμματος-πελάτη SSH πληκτρολογώντας τα εξής:
$ ssh
Εάν ο υπολογιστής Linux έχει ήδη εγκατεστημένο πρόγραμμα-πελάτη SSH, θα δείτε τις ακόλουθες πληροφορίες να μετακινούνται στην οθόνη.
usage: ssh [-46AaCfGgKkMNnqsTtVvXxYy] [-B bind_interface] [-b bind_address] [-c cipher_spec] [-D [bind_address:]port] [-E log_file] [-e escape_char] [-F configfile] [-I pkcs11] [-i identity_file] [-J [user@]host[:port]] [-L address] [-l login_name] [-m mac_spec] [-O ctl_cmd] [-o option] [-p port] [-Q query_option] [-R address] [-S ctl_path] [-W host: port] [-w local_tun[:remote_tun]] destination [command [argument ...]]
Αν, αντί αυτού, λάβετε ένα παράπονο σχετικά με τη μη εύρεση του αρχείου, θα πρέπει να προχωρήσετε στην εγκατάσταση του προγράμματος-πελάτη OpenSSH. Ευτυχώς, αυτό είναι αρκετά απλό.
Στο Ubuntu και σε άλλες εγκαταστάσεις που βασίζονται στο Debian, απλώς εκτελέστε την ακόλουθη εντολή στο Terminal:
$ sudo apt install openssh-client
Εάν εκτελείτε το Fedora ή άλλη διανομή που χρησιμοποιεί ναι αντί κατάλληλος, απλώς εκτελέστε αυτήν την εντολή:
$ sudo yum -y install openssh-clients
Μπορούν να χρησιμοποιηθούν νεότερα συστήματα Fedora dnf αντι αυτου. Αν σας φαίνεται, η μαγική εντολή είναι:
$ sudo dnf install -y openssh-clients
Ακολουθήστε τις οδηγίες που εμφανίζονται στην οθόνη και θα είστε έτοιμοι να πάτε σύντομα.
Εκκίνηση σύνδεσης SSH
Αφού βεβαιωθείτε ότι το πρόγραμμα-πελάτης SSH είναι εγκατεστημένο στον υπολογιστή σας Linux, ήρθε η ώρα να ξεκινήσετε αυτήν την πρώτη σύνδεση. Ενώ βρίσκεστε ακόμα στο παράθυρο του τερματικού, εκτελέστε την ακόλουθη εντολή:
$ ssh username@host_ip_address
Εάν τα ονόματα χρήστη ταιριάζουν σε τοπικά και απομακρυσμένα μηχανήματα, απλώς εισαγάγετε:
$ ssh host_ip_address
Την πρώτη φορά που θα συνδεθείτε, θα λάβετε ένα μήνυμα που θα σας ρωτήσει εάν θέλετε να συνεχίσετε τη σύνδεση στον άγνωστο υπολογιστή. Σε αυτό το σημείο, πληκτρολογήστε Ναί και συνεχίστε.
Πληκτρολογήστε τον κωδικό πρόσβασής σας, κατανοώντας ότι δεν θα λάβετε σχόλια στην οθόνη κατά την είσοδο. Μόλις τελειώσετε, θα πρέπει να συνδεθείτε στον απομακρυσμένο διακομιστή και να ξεκινήσετε να κάνετε όποια εργασία θέλετε να εκτελέσετε σε αυτόν τον υπολογιστή αρχικά.
Κατανόηση του SSH: Μια επισκόπηση υψηλού επιπέδου
Το Secure Shell ή SSH — που περιστασιακά υποδηλώνεται ως Secure Socket Shell — είναι ένα πρωτόκολλο που επιτρέπει την ασφαλή συνδεσιμότητα σε απομακρυσμένους διακομιστές ή υπολογιστές μέσω μιας διεπαφής που βασίζεται σε κείμενο.
Κατά τον έλεγχο ταυτότητας ενός ασφαλούς καναλιού SSH, ξεκινά μια περίοδος λειτουργίας φλοιού, επιτρέποντας την αλληλεπίδραση της γραμμής εντολών από τον τοπικό σας υπολογιστή.
Αυτό το πρωτόκολλο είναι πολύ γνωστό και αγαπητό από τους διαχειριστές συστημάτων και δικτύου, καθώς και από οποιονδήποτε χρειάζεται ασφαλή απομακρυσμένη διαχείριση μηχανήματος.
Μηχανική Λειτουργικότητας SSH
Η δημιουργία ενός καναλιού SSH απαιτεί τη συνεργασία δύο βασικών στοιχείων: μιας εφαρμογής πελάτη και του αντίστοιχου διακομιστή. Η εφαρμογή πελάτη ξεκινά τη σύνδεση παρέχοντας διαπιστευτήρια απομακρυσμένου κεντρικού υπολογιστή.
Εάν επαληθευτεί, το λογισμικό δημιουργεί ένα κρυπτογραφημένο κανάλι μεταξύ των δύο υπολογιστών. Στο απομακρυσμένο μηχάνημα, ένας δαίμονας SSH σαρώνει συνεχώς μια καθορισμένη θύρα TCP/IP για πιθανά αιτήματα σύνδεσης.
Μετά την παραλαβή, ο δαίμονας μεταφέρει τις δυνατότητες λογισμικού και πρωτοκόλλου του και οι δύο οντότητες ανταλλάσσουν δεδομένα αναγνώρισης. Ακολουθεί κρυπτογραφημένη περίοδος σύνδεσης εάν τα διαπιστευτήρια ταιριάζουν, κυρίως μέσω του πρωτοκόλλου SSH έκδοση 2.
Προηγμένη χρήση SSH: Αποθήκευση του κλειδιού κρυπτογράφησης για την αποφυγή εισαγωγής κωδικού πρόσβασης
Τώρα, ας πούμε ότι θέλετε να αποφύγετε να χρειαστεί Εισάγετε τον κωδικό σας κάθε φορά που συνδέεστε σε έναν απομακρυσμένο διακομιστή. Για μια ασφαλή σύνδεση χωρίς κωδικό πρόσβασης σε άλλον υπολογιστή, είναι απαραίτητο ένα κλειδί SSH (Secure Shell).
Μπορεί να έχετε ήδη ένα τέτοιο κλειδί, αλλά το να δημιουργήσετε ένα νέο δεν είναι ποτέ κακή ιδέα. Προερχόμενο από τον τοπικό σας υπολογιστή, ένα κλειδί SSH χωρίζεται σε δύο διακριτά στοιχεία: ένα εμπιστευτικό, ιδιωτικό κλειδί — που δεν πρέπει ποτέ να αποκαλυφθεί — και το δημόσιο αντίστοιχό του. Αυτό το δημόσιο κλειδί στη συνέχεια διανέμεται σε όλα τα απομακρυσμένα συστήματα στα οποία πρέπει να συνδεθείτε.
Μερικοί άνθρωποι μπορεί να επιλέξουν ένα κλειδί SSH για πολλές εφαρμογές, που κυμαίνονται από απομακρυσμένες συνδέσεις συστήματος έως GitLab. Ένα κλειδί για να τους κυβερνάς όλους, θα πεις. Ωστόσο, η προσέγγισή μου είναι πιο αναλυτική. Χρησιμοποιώ διαφορετικά κλειδιά, το καθένα σχεδιασμένο για ένα συγκεκριμένο υποσύνολο εργασιών.
Για παράδειγμα, χρησιμοποιώ ένα αποκλειστικό κλειδί για τοπικές μηχανές στο οικιακό μου δίκτυο, ένα άλλο αποκλειστικό κλειδί για διακομιστές ιστού υπό τη διαχείρισή μου και ακόμη ένα μοναδικό κλειδί για αλληλεπίδραση με το Git Οικοδεσπότες.
Δημιουργία νέου ζεύγους κλειδιών SSH
Δείτε πώς μπορείτε να δημιουργήσετε ένα νέο κλειδί SSH και στη συνέχεια να το αντιγράψετε στον απομακρυσμένο διακομιστή για τον οποίο θέλετε να το χρησιμοποιήσετε. Πρώτα, δημιουργήστε το κλειδί χρησιμοποιώντας ssh-keygen.
$ ssh-keygen -t ed25519 -f /.ssh/lan
Η σημαία -τ καθορίζει τον τύπο του κλειδιού που θα δημιουργηθεί, διασφαλίζοντας ότι η κρυπτογράφηση είναι υψηλότερη από την προεπιλεγμένη. ο -φά Το flag ορίζει το όνομα του αρχείου και τη θέση του κλειδιού.
Όταν εκδώσετε αυτήν την εντολή, θα σας ζητηθεί να δημιουργήσετε έναν κωδικό πρόσβασης για το κλειδί. Αυτός ο κωδικός πρόσβασης, εάν τον ορίσετε, παραμένει τοπικός και δεν αποστέλλεται μέσω του δικτύου.
Αποστολή του κλειδιού SSH στον απομακρυσμένο διακομιστή
Στη συνέχεια, θα χρειαστεί να στείλετε αυτό το κλειδί ασφαλείας στον απομακρυσμένο διακομιστή. Για να το πετύχετε αυτό, απλώς δώστε αυτή την εντολή:
$ ssh-copy-id -i /.ssh/lan.pub user@host_ip_address
Θα σας ζητηθεί ο κωδικός πρόσβασής σας στον απομακρυσμένο κεντρικό υπολογιστή. Μόλις ολοκληρωθεί η διαδικασία, όμως, το κλειδί σας θα εγκατασταθεί σε αυτόν τον υπολογιστή.
Θα πρέπει να δοκιμάσετε προσπαθώντας να συνδεθείτε στον απομακρυσμένο υπολογιστή. Όταν κάνετε ξανά ssh στον απομακρυσμένο κεντρικό υπολογιστή, θα σας ζητηθεί η φράση πρόσβασης για το κλειδί, εάν ορίσετε μία. Αυτός δεν είναι ο κωδικός πρόσβασής σας, θυμηθείτε. Είναι η ειδική φράση πρόσβασης για αυτό το κλειδί SSH.
Σε πολλές διανομές, συμπεριλαμβανομένου του Linux, αυτή η προτροπή φράσης πρόσβασης θα ανοίξει ως πλαίσιο διαλόγου. Όπως μπορείτε να δείτε από το παρακάτω παράδειγμα, μπορείτε να επιλέξετε ένα πλαίσιο για να θυμάται ο υπολογιστής Linux τη φράση πρόσβασης. Αυτό όμως θα μειώσει την ασφάλεια του κλειδιού.
Αφού εισαγάγετε τη φράση πρόσβασης για το κλειδί SSH, δεν θα χρειαστεί να την πληκτρολογήσετε ξανά μέχρι να αποσυνδεθείτε από τον τοπικό υπολογιστή.
Άλλοι τρόποι χρήσης SSH
Με όλα αυτά, μπορείτε να χρησιμοποιήσετε το SSH για απομακρυσμένη πρόσβαση σε άλλους υπολογιστές που βασίζονται σε Linux ή Unix. Φυσικά, δεν είναι μόνο να φτάσετε στη γραμμή εντολών.
Το SSH περιλαμβάνει επίσης έναν ασφαλή τρόπο μεταφοράς αρχείων μεταξύ υπολογιστών χωρίς χρήση FTP. Μπορείτε να χρησιμοποιήσετε το Secure Copy ή scp για να μετακινήστε αυτά τα αρχεία. Εάν είστε χρήστης των Windows 11 και πρέπει να χρησιμοποιήσετε SSH, είστε τυχεροί αφού ο πελάτης είναι προεγκατεστημένος. Μπορείς ακόμη και να δημιουργήσουν και να χρησιμοποιήσουν Κλειδιά SSH στα Windows 11.