Τύποι κλειδιών
Δημιουργία κλειδιών
Αυτό το σεμινάριο θα σας δείξει πώς να δημιουργείτε και να ασφαλίζετε κλειδιά SSH στο macOS Sierra (10.12) και στο macOS High Sierra (10.13). Τα κλειδιά SSH σάς επιτρέπουν να συνδεθείτε στον διακομιστή σας χωρίς κωδικό πρόσβασης. Αυξάνουν την ευκολία καθώς και την ασφάλεια καθώς είναι πολύ πιο ανθεκτικά σε επιθέσεις ωμής βίας.
Το SSH (Secure Shell) είναι ένα πρωτόκολλο που χρησιμοποιείται συχνότερα για απομακρυσμένη διαχείριση και για μεταφορά αρχείων που συχνά δηλώνεται ως sFTP (Secure File Transfer Protocol). Κατά την πρόσβαση σε έναν απομακρυσμένο διακομιστή, όπως ένα Vultr VPS, συνιστάται η χρήση SSH με PKE (Public Key Exchange) που χρησιμοποιεί ένα ζεύγος κλειδιών όπου το δημόσιο κλειδί παρέχεται στον διακομιστή και το ιδιωτικό κλειδί που είναι αποθηκευμένο στον υπολογιστή σας.
Τα κλειδιά SSH μπορούν να προστεθούν αυτόματα στους διακομιστές κατά τη διαδικασία εγκατάστασης προσθέτοντας τα δημόσια κλειδιά σας στον πίνακα ελέγχου Vultr. Μπορείτε να διαχειριστείτε τα κλειδιά SSH σε αυτήν τη σελίδα . Είναι σημαντικό να θυμάστε ότι αυτά είναι μόνο τα δημόσια κλειδιά σας (συνήθως υποδηλώνονται με .pub
), δεν πρέπει ποτέ να εκθέσετε τα ιδιωτικά σας κλειδιά.
Τύποι κλειδιών
Υπάρχουν πολλοί διαφορετικοί τύποι κλειδιών που μπορούν να επιλεγούν. Χρησιμοποιήστε το -t
επιχείρημα κατά τη δημιουργία, όπως ssh-keygen -t ed25519
. Ο τύπος κλειδιού ED25519, ο οποίος χρησιμοποιεί υπογραφή ελλειπτικής καμπύλης, είναι πιο ασφαλής και πιο αποτελεσματικός από το DSA ή το ECDSA. Το πιο σύγχρονο λογισμικό SSH (όπως το OpenSSH από την έκδοση 6.5) υποστηρίζει τον τύπο κλειδιού ED25519, αλλά μπορεί να βρείτε λογισμικό που δεν είναι συμβατό, επομένως ο προεπιλεγμένος τύπος κλειδιού εξακολουθεί να είναι RSA.
Ο προεπιλεγμένος τύπος κλειδιού είναι 2048-bit RSA που προσφέρει καλή ασφάλεια και συμβατότητα. Για μεγαλύτερη ασφάλεια, μπορείτε να επιλέξετε μεγαλύτερο μέγεθος κλειδιού χρησιμοποιώντας το -b
όρισμα κατά τη δημιουργία, όπως ssh-keygen -b 4096
για τη δημιουργία ενός ζεύγους κλειδιών RSA 4096 bit.
Δημιουργία κλειδιών
Για να δημιουργήσετε ένα κλειδί SSH, θα χρειαστεί να ανοίξετε το που Terminal.app
βρίσκεται στις "Εφαρμογές > Βοηθητικά προγράμματα > Τερματικό".
Για να δημιουργήσετε ένα ζεύγος κλειδιών RSA 4096-bit, πληκτρολογήστε:
ssh-keygen -b 4096
Τότε θα δείτε:
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/username/.ssh/id_rsa):
Πατώντας Enter/Return θα αποθηκεύσετε το νέο σας ζεύγος κλειδιών σε αυτήν την προεπιλεγμένη θέση, η οποία συνιστάται. Στη συνέχεια, θα έχετε την επιλογή να δημιουργήσετε μια φράση πρόσβασης, η οποία θα κρυπτογραφεί το κλειδί έτσι ώστε να μην μπορεί να χρησιμοποιηθεί χωρίς εξουσιοδότηση. Συνιστάται επίσης η χρήση φράσης πρόσβασης.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in id_rsa.
Your public key has been saved in id_rsa.pub.
The key fingerprint is:
SHA256:0irBXp+xKwT5e0ZFklbEVkzxu0Bzv9PmvstFD5w6zlQ [email protected]
The key's randomart image is:
+---[RSA 4096]----+
| =o++. |
| + + .. |
| . . + o o |
| .o . .. + + |
| ooo S. . E o|
| . oo+.+ + ++|
| o..o+ + .o=|
| .o o. + ..oo|
| +. o ==|
+----[SHA256]-----+
Σε αυτό το σημείο, το ζεύγος κλειδιών σας έχει δημιουργηθεί και αποθηκευτεί στο ~/.ssh/id_rsa
. Για να καταστήσουμε το κλειδί διαθέσιμο στο σύστημα και να αποθηκεύσουμε τη φράση πρόσβασης στην αλυσίδα κλειδιού συστήματος, θα χρειαστεί να ολοκληρώσουμε πολλά πρόσθετα βήματα. Σημειώστε ότι αυτό είναι απαραίτητο μόνο εάν προτιμάτε να μην σας ζητείται η φράση πρόσβασης κλειδιού κάθε φορά που χρησιμοποιείται.
Προσθήκη νέου ζεύγους κλειδιών στον πράκτορα SSH
Εισαγάγετε ssh-add -K ~/.ssh/id_rsa
. Στη συνέχεια, θα σας ζητηθεί η φράση πρόσβασης και θα δείτε τα εξής:
Identity added: id_rsa ([email protected])
Εάν θέλετε να χρησιμοποιήσετε αυτό το κλειδί SSH για να συνδεθείτε σε έναν διακομιστή που έχει ήδη δημιουργηθεί, μπορείτε να χρησιμοποιήσετε το ssh-copy-id
εργαλείο για να αποθηκεύσετε το δημόσιο κλειδί στον διακομιστή στον οποίο θέλετε να αποκτήσετε πρόσβαση.
Προσθήκη νέου κλειδιού στον απομακρυσμένο διακομιστή
Χρησιμοποιώντας ssh-copy-id
:
# Substitute your server IP
ssh-copy-id -i ~/.ssh/id_rsa [email protected]
Η κονσόλα θα ζητήσει τον κωδικό πρόσβασής σας, καθώς ο απομακρυσμένος διακομιστής δεν γνωρίζει ακόμη το κλειδί σας. Θα δείτε τα εξής:
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "id_rsa.pub"
Number of key(s) added: 1
Now try logging into the machine, with: "ssh '[email protected]'"
and check to make sure that only the key(s) you wanted were added.
Τώρα μπορείτε να επιχειρήσετε να συνδεθείτε στον απομακρυσμένο διακομιστή ssh [email protected]
και θα πρέπει να συνδεθείτε χωρίς να σας ζητηθεί κωδικός πρόσβασης.