Πώς να εγκαταστήσετε και να ρυθμίσετε τον διακομιστή OpenSSH σε Linux


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

Εντολή SCP (Secure Copy). Όμως, τι είναι το OpenSSH και πώς να το εγκαταστήσετε στη διανομή Linux;

Τι είναι το OpenSSH;

Το OpenSSH είναι ένα δωρεάν σύνολο εργαλείων υπολογιστή ανοιχτού κώδικα που χρησιμοποιείται για την παροχή ασφαλούς και κρυπτογραφημένης επικοινωνίας μέσω ενός δικτύου υπολογιστών, χρησιμοποιώντας το πρωτόκολλο ssh. Πολλοί άνθρωποι, νέοι στους υπολογιστές και τα πρωτόκολλα, δημιουργούν μια εσφαλμένη αντίληψη σχετικά με το OpenSSH, πιστεύουν ότι είναι πρωτόκολλο, αλλά δεν είναι, είναι ένα σύνολο προγραμμάτων υπολογιστή που χρησιμοποιούν το πρωτόκολλο ssh<.

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

Η πιο πρόσφατη έκδοση είναι το OpenSSH 9.3 που κυκλοφόρησε στις 15 Μαρτίου 2023 και συνοδεύεται από πολλές νέες δυνατότητες και ενημερώσεις κώδικα, οπότε αν χρησιμοποιείτε ήδη το OpenSSH για τη διαχείριση των μηχανημάτων σας, σας προτείνω να κάνετε μια αναβάθμιση ή να εγκαταστήσετε το ssh από την πηγή.

Γιατί να χρησιμοποιήσετε το OpenSSH μέσω Telnet ή Ftp;

Ο πιο σημαντικός λόγος για τον οποίο κάποιος πρέπει να χρησιμοποιήσει τα εργαλεία OpenSSH μέσω ftp και Telnet είναι ότι όλες οι επικοινωνίες και τα διαπιστευτήρια χρήστη που χρησιμοποιούν OpenSSH είναι κρυπτογραφημένα και επίσης προστατεύονται από επιθέσεις man-in-middle. Εάν ένα τρίτο μέρος προσπαθήσει να υποκλέψει τη σύνδεσή σας, το OpenSSH το εντοπίζει και σας ενημερώνει σχετικά.

Λειτουργίες OpenSSH

  • Ασφαλής επικοινωνία
  • Ισχυρή κρυπτογράφηση (3DES, Blowfish, AES, Arcfour)
  • X11 Προώθηση (κρυπτογράφηση X κίνησης συστήματος παραθύρου)
  • Προώθηση θύρας (κρυπτογραφημένα κανάλια για πρωτόκολλα παλαιού τύπου)
  • Ισχυρός έλεγχος ταυτότητας (Δημόσιο κλειδί, κωδικός πρόσβασης μίας χρήσης και έλεγχος ταυτότητας Kerberos)
  • Προώθηση αντιπροσώπου (Single-Sign-On)
  • Διαλειτουργικότητα (Συμμόρφωση με τα πρότυπα πρωτοκόλλου SSH 1.3, 1.5 και 2.0)
  • SFTP υποστήριξη πελάτη και διακομιστή και στα δύο πρωτόκολλα SSH1 και SSH2.
  • Kerberos και AFS Ticket Passing
  • Συμπίεση δεδομένων

Εγκαταστήστε το OpenSSH Server σε Linux

Για να εγκαταστήσετε το OpenSSH, ανοίξτε ένα τερματικό και εκτελέστε τις ακόλουθες εντολές με δικαιώματα υπερχρήστη.

Σε Debian/Ubuntu/Linux Mint

Εντολή On apt για εγκατάσταση του διακομιστή και του πελάτη openssh όπως φαίνεται.

$ sudo apt install openssh-server openssh-client

Σε RHEL/Centos/Fedora

Στην εντολή yum για εγκατάσταση του διακομιστή και του πελάτη openssh.

# yum -y install openssh-server openssh-clients

Διαμόρφωση διακομιστή OpenSSH σε Linux

Ήρθε η ώρα να διαμορφώσουμε τη συμπεριφορά μας OpenSSH μέσω του αρχείου ssh config, αλλά πριν επεξεργαστούμε το αρχείο /etc/ssh/sshd_config πρέπει να δημιουργήσουμε αντίγραφα ασφαλείας ένα αντίγραφό του, οπότε σε περίπτωση που κάνουμε κάποιο λάθος έχουμε το πρωτότυπο αντίγραφο.

Ανοίξτε ένα τερματικό και εκτελέστε την ακόλουθη εντολή cp για να δημιουργήσετε ένα αντίγραφο του αρχικού αρχείου διαμόρφωσης sshd.

$ sudo cp /etc/ssh/sshd_config  /etc/ssh/sshd_config.original_copy

Όπως μπορείτε να δείτε από την εντολή που πληκτρολόγησα, πρόσθεσα το επίθημα original_copy, οπότε κάθε φορά που βλέπω αυτό το αρχείο ξέρω ότι είναι ένα πρωτότυπο αντίγραφο του αρχείου διαμόρφωσης sshd.

Πώς μπορώ να συνδεθώ στο OpenSSH

Πριν προχωρήσουμε περαιτέρω, πρέπει να επαληθεύσουμε εάν ο διακομιστής μας openssh λειτουργεί ή όχι. Πώς να το κάνω αυτό? Μπορείτε να προσπαθήσετε να συνδεθείτε στον διακομιστή openssh από τον localhost σας μέσω του openssh client ή να κάνετε μια portscan με το netcat, επίσης γνωστό ως TCP/IP Ελβετικό μαχαίρι. Μου αρέσει να δουλεύω με αυτό το καταπληκτικό εργαλείο στο μηχάνημά μου, οπότε επιτρέψτε μου να σας το δείξω.

# nc -v -z 127.0.0.1 22

Αναφερόμενοι στα αποτελέσματα netcat, η υπηρεσία ssh εκτελείται στη θύρα 22 του υπολογιστή μου. Πολύ καλά! Τι γίνεται αν θέλουμε να χρησιμοποιήσουμε άλλη θύρα, αντί για 22; Μπορούμε να το κάνουμε αυτό επεξεργάζοντας το αρχείο διαμόρφωσης sshd.

Αλλαγή θύρας SSH

Ρυθμίστε το OpenSSH σας να ακούει στη θύρα TCP 13 αντί για την προεπιλεγμένη θύρα TCP 22. Ανοίξτε το αρχείο sshd_config με τον αγαπημένο σας επεξεργαστή κειμένου και αλλάξτε την οδηγία της θύρας σε 13.

Port 13

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

$ sudo systemctl restart sshd

Πρέπει να επαληθεύσουμε εάν ο διακομιστής μας openssh ακούει στη θύρα 13 ή όχι; Αυτή η επαλήθευση είναι απαραίτητη, γι' αυτό καλώ το υπέροχο εργαλείο μου netcat για να με βοηθήσει να κάνω τη δουλειά.

# nc -v -z 127.0.0.1 13

Θέλετε να κάνετε τον διακομιστή σας openssh να εμφανίζει ένα ωραίο banner σύνδεσης; Μπορείτε να το κάνετε τροποποιώντας το περιεχόμενο του αρχείου /etc/issue.net.

$ nano /etc/issue.net

Επικολλήστε το ακόλουθο μήνυμα banner.

Authorized access only!

If you are not authorized to access or use this system, disconnect now!

Στη συνέχεια, προσθέστε την ακόλουθη γραμμή μέσα στο αρχείο διαμόρφωσης sshd.

Banner /etc/issue.net

Αφού κάνετε αλλαγές στη διαμόρφωση SSH, φροντίστε να κάνετε επανεκκίνηση.

$ sudo systemctl restart sshd

Μπορεί επίσης να σας αρέσει:

  • Πώς να ασφαλίσετε και να σκληρύνετε τον διακομιστή OpenSSH
  • 5 Καλύτερες βέλτιστες πρακτικές ασφαλείας διακομιστή OpenSSH
  • Πώς να αποκλείσετε επιθέσεις ωμής βίας SSH χρησιμοποιώντας το SSHGUARD
  • Βασική χρήση και διαμόρφωση εντολών SSH στο Linux
  • Πώς να ρυθμίσετε τον έλεγχο ταυτότητας δύο παραγόντων για SSH σε Linux

συμπέρασμα

Υπάρχουν πολλά πράγματα που μπορείτε να κάνετε με τα εργαλεία openssh όσον αφορά τον τρόπο διαμόρφωσης του διακομιστή openssh σας, μπορώ να πω ότι η φαντασία σας είναι το όριο!