Ακολουθήστε αυτόν τον αναλυτικό οδηγό για να ρυθμίσετε τις παραμέτρους ελέγχου ταυτότητας βάσει κλειδιού SSH στον διακομιστή Ubuntu σας. Συνδεθείτε με ασφάλεια χωρίς κωδικό πρόσβασης και προαιρετικά απενεργοποιήστε εντελώς τον έλεγχο ταυτότητας με κωδικό πρόσβασης.
Ακολουθήστε προσεκτικά κάθε βήμα για να ρυθμίσετε τον έλεγχο ταυτότητας βάσει κλειδιού SSH στον διακομιστή Ubuntu 16.04.
Εκτελέστε την ακόλουθη εντολή στον τοπικό σας υπολογιστή για να δημιουργήσετε ένα ζεύγος κλειδιών RSA 2048-bit (χρησιμοποιήστε -b 4096 για ένα ισχυρότερο κλειδί 4096-bit):
$ ssh-keygen Όταν σας ζητηθεί μια διαδρομή αρχείου, πατήστε Enter για να αποδεχτείτε την προεπιλογή ( ~/.ssh/id_rsa ). Προαιρετικά, ορίστε μια φράση πρόσβασης για ένα επιπλέον επίπεδο ασφάλειας.
Δημιουργούνται δύο αρχεία: ~/.ssh/id_rsa (ιδιωτικό κλειδί — διατηρείται μυστικό) και ~/.ssh/id_rsa.pub (δημόσιο κλειδί — αυτό μεταφέρεται στον διακομιστή).
Μέθοδος 1 — ssh-copy-id (συνιστάται):
$ ssh-copy-id username@remote_host Εισαγάγετε τον κωδικό πρόσβασής σας όταν σας ζητηθεί. Το δημόσιο κλειδί θα προστεθεί στο ~/.ssh/authorized_keys στον διακομιστή.
Μέθοδος 2 — μέσω αγωγού SSH:
cat ~/.ssh/id_rsa.pub | ssh username@remote_host "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys" Μέθοδος 3 — χειροκίνητα: Εμφανίστε το δημόσιο κλειδί σας με cat ~/.ssh/id_rsa.pub και, στη συνέχεια, προσαρτήστε την έξοδό του στο ~/.ssh/authorized_keys στον απομακρυσμένο διακομιστή.
Ελέγξτε ότι ο έλεγχος ταυτότητας βάσει κλειδιού λειτουργεί, συνδέοντάς τον στον διακομιστή σας:
$ ssh username@remote_hostΕάν ορίσετε μια φράση πρόσβασης στο βήμα 1, θα σας ζητηθεί να την εισαγάγετε. Εάν δεν το κάνετε, θα συνδεθείτε αμέσως χωρίς να σας ζητηθεί κωδικός πρόσβασης.
Μόλις επιβεβαιώσετε ότι η σύνδεση με βάση το κλειδί λειτουργεί, μπορείτε να απενεργοποιήσετε τον έλεγχο ταυτότητας με κωδικό πρόσβασης για να ενισχύσετε τον διακομιστή έναντι επιθέσεων βίας. Ανοίξτε τη διαμόρφωση του δαίμονα SSH:
sudo nano /etc/ssh/sshd_config Βρείτε PasswordAuthentication , αποσχολιάστε τη γραμμή εάν χρειάζεται και ορίστε την σε no :
PasswordAuthentication noΑποθηκεύστε το αρχείο ( Ctrl+X , έπειτα Y και μετά Enter ) και επανεκκινήστε το SSH:
$ sudo systemctl restart sshΑνοίξτε ένα νέο τερματικό και επαληθεύστε ότι μπορείτε ακόμα να συνδεθείτε πριν κλείσετε την τρέχουσα συνεδρία σας.
Συνήθεις ερωτήσεις σχετικά με τη ρύθμιση ελέγχου ταυτότητας κλειδιού SSH στο Ubuntu.