Εάν θεωρείτε ότι ο έλεγχος ταυτότητας βάσει κωδικού πρόσβασης και ο έλεγχος ταυτότητας δύο παραγόντων είναι αναξιόπιστος, εξετάστε το ενδεχόμενο να ρυθμίσετε τον έλεγχο ταυτότητας βάσει υλικού στο Linux χρησιμοποιώντας το YubiKey.
Δεν είστε μόνοι αν ανησυχείτε για την ολοένα αυξανόμενη απειλή του hacking. Ενώ οι προτροπές ελέγχου ταυτότητας και το 2FA είναι αρκετά για να αποκρούσουν τους περισσότερους επίδοξους χάκερ, χιλιάδες παραβιάσεις εξακολουθούν να πετυχαίνουν καθημερινά.
Μία από τις πιο συχνά διαφημιζόμενες λύσεις στο ζήτημα του ελέγχου ταυτότητας είναι το YubiKey. Τι είναι όμως το YubiKey και πώς λειτουργεί ο έλεγχος ταυτότητας υλικού; Μπορείτε να ασφαλίσετε τον υπολογιστή σας Linux με το YubiKey;
Γιατί να χρησιμοποιήσετε το YubiKey για έλεγχο ταυτότητας υλικού;
Υπάρχουν πολλοί διαφορετικοί τύποι ελέγχου ταυτότητας, συμπεριλαμβανομένων κωδικών πρόσβασης, ελέγχου ταυτότητας SMS και ακόμη εφαρμογές ελέγχου ταυτότητας που μπορείτε να χρησιμοποιήσετε με το τηλέφωνό σας. Ένας λιγότερο κοινός τύπος είναι ο έλεγχος ταυτότητας υλικού, ο οποίος περιλαμβάνει τη χρήση μιας μικρής συσκευής προσθήκης για την αποστολή ενός διακριτικού ελέγχου ταυτότητας όταν σας ζητηθεί.
Τα YubiKeys και άλλες συσκευές ελέγχου ταυτότητας υλικού έχουν μερικά πλεονεκτήματα σε σχέση με άλλους ελέγχους ταυτότητας. Είναι πιο εύκολο στη χρήση, πολύ πιο ασφαλή και είναι σχεδόν αδύνατο να συμβιβαστούν χωρίς πρόσβαση στο ίδιο το φυσικό YubiKey.
Ξεκινώντας με το Yubikey
Μπορείτε να ξεκινήσετε με το YubiKey με μερικά απλά βήματα. Ως πρώτο βήμα, θα πρέπει να χρησιμοποιήσετε το κουίζ που φτιάχτηκε από Yubico για να αγοράσετε το καλύτερο YubiKey για τις προδιαγραφές της συσκευής σας. Μόλις έχετε το YubiKey σε ετοιμότητα, μπορείτε να το χρησιμοποιήσετε ως συσκευή ελέγχου ταυτότητας για ιστότοπους και εφαρμογές.
Μπορείτε ακόμη να το χρησιμοποιήσετε για τον έλεγχο ταυτότητας sudo και SSH στον υπολογιστή σας Linux. Θα εξηγήσουμε όλα όσα πρέπει να γνωρίζετε σχετικά με την επιλογή ενός YubiKey συμβατό με sudo/SSH και τη διαμόρφωσή του για έλεγχο ταυτότητας.
Επιλέγοντας το σωστό YubiKey για το σύστημά σας
Εάν θέλετε να χρησιμοποιήσετε το YubiKey για έλεγχο ταυτότητας στον υπολογιστή σας Linux, υπάρχουν μερικά YubiKey που ξεχωρίζουν ως ανώτερες επιλογές. Το YubiKey 5 και το YubiKey 5 NFC είναι και τα δύο κλασικά που λειτουργούν καλά με συστήματα με USB-A και USB-C, αντίστοιχα.
Εάν θέλετε να χρησιμοποιήσετε το YubiKey με τον υπολογιστή σας Linux και το τηλέφωνο Android, θα πρέπει να εξετάσετε το ενδεχόμενο ενός YubiKey 5c NFC. Εάν έχετε υπολογιστή Linux και iPhone, θα πρέπει να σκεφτείτε ένα YubiKey 5ci επειδή υποστηρίζει USB-C και lightning.
Είναι σημαντικό να σημειωθεί ότι η σειρά YubiHSM δεν είναι συμβατή με τον έλεγχο ταυτότητας sudo. Τα παλαιού τύπου YubiKeys ενδέχεται να είναι συμβατά ή να μην είναι συμβατά με έλεγχο ταυτότητας sudo/SSH ανάλογα με τις ιδιαίτερες δυνατότητες τους.
Πριν ξεκινήσετε με τον έλεγχο ταυτότητας sudo ή SSH, πρέπει να εγκαταστήσετε το YubiKey PPA. Ανοίξτε το τερματικό και εισαγάγετε τις ακόλουθες εντολές για να ενημερώσετε τα πακέτα σας και να εγκαταστήσετε το YubiKey Authenticator και το YubiKey Manager:
sudo add-apt-repository ppa: yubico/stable
ενημέρωση sudo apt-get
sudo apt εγκατάσταση yubikey-manager libpam-yubico libpam-u2f
Στη συνέχεια, θα πρέπει να επαληθεύσετε ότι το σύστημά σας είναι έτοιμο να λειτουργήσει με το YubiKey. Εκτελέστε την ακόλουθη εντολή στο τερματικό για να ελέγξετε την έκδοση udev σας:
sudo udevadm --έκδοση
Το τερματικό θα επιστρέψει έναν αριθμό. Εάν ο αριθμός είναι 244 ή μεγαλύτερος, το σύστημά σας είναι συμβατό με το YubiKey. Μπορείτε να παραλείψετε το επόμενο βήμα σε αυτήν την περίπτωση.
Διαφορετικά, θα χρειαστεί να διαμορφώσετε το σύστημά σας. Θα πρέπει να χρησιμοποιήσετε τις ακόλουθες εντολές για να ελέγξετε εάν το udev είναι εγκατεστημένο στον υπολογιστή σας—και να το εγκαταστήσετε εάν δεν είναι:
dpkg -s libu2f-udev
sudo apt εγκατάσταση libu2f-udev
Στη συνέχεια, ελέγξτε αν η διεπαφή U2F του YubiKey είναι ξεκλείδωτη. Εάν έχετε YubiKey NEO ή YubiKey NEO-n, εισάγετε το YubiKey, ανοίξτε το YubiKey Manager και μεταβείτε στο Διεπαφές. Ενεργοποιήστε το Διασύνδεση U2F και πατήστε Αποθηκεύσετε.
Ρυθμίστε το YubiKey για έλεγχο ταυτότητας sudo σε Linux
Το sudo είναι μια από τις πιο επικίνδυνες εντολές στο περιβάλλον Linux. Στα σωστά χέρια, παρέχει ένα εντυπωσιακό επίπεδο πρόσβασης που επαρκεί για να ολοκληρώσετε τις περισσότερες εργασίες. Σε λάθος χέρια, η πρόσβαση σε επίπεδο ρίζας που παρέχει το sudo μπορεί να επιτρέψει σε κακόβουλους χρήστες να εκμεταλλευτούν ή να καταστρέψουν ένα σύστημα.
Τα YubiKey είναι εξαιρετικά για έλεγχο ταυτότητας sudo, επειδή ο έλεγχος ταυτότητας τους είναι σχεδόν αδύνατο να αναπαραχθεί χωρίς πρόσβαση στο ίδιο το YubiKey. Τα περισσότερα YubiKey είναι συμβατά με έλεγχο ταυτότητας sudo, συμπεριλαμβανομένων των 5 FIPs Series, Key Series, 4 FIPs Series, Bio Series, 5 Series και 4 Series.
Σύμφωνα με Yubico, το πρώτο βήμα που πρέπει να κάνετε για να ρυθμίσετε τον έλεγχο ταυτότητας sudo είναι η δημιουργία ενός αρχείου κανόνων. Εάν η έκδοση udev σας είναι 188 ή μεγαλύτερη, εγκαταστήστε τους νέους κανόνες U2F από GitHub και αντιγράψτε το 70-u2f.κανόνες αρχείο σε /etc/udev/rules.d.
Εάν η έκδοση udev σας είναι κάτω από 188, εγκαταστήστε τους κανόνες U2F παλαιού τύπου από GitHub και αντιγράψτε το 70-old-u2f.rules αρχείο σε /etc/udev/rules.d.
Εάν η έκδοσή σας udev είναι 244 ή νεότερη ή έχετε δημιουργήσει τα απαραίτητα αρχεία κανόνων, είστε έτοιμοι να συνδέσετε το YubiKey με τον λογαριασμό σας.
Εισαγάγετε το YubiKey στον υπολογιστή σας, ανοίξτε το τερματικό και πληκτρολογήστε τις ακόλουθες εντολές για να συνδέσετε το YubiKey με τον λογαριασμό σας:
mkdir -p ~/.config/Yubicopamu2fcfg > ~/.config/Yubico/u2f_keys
Περιμένετε για αρκετά λεπτά έως ότου η ενδεικτική λυχνία στο YubiKey σας αρχίσει να αναβοσβήνει. Αγγίξτε το κουμπί στο YubiKey για να επιβεβαιώσετε τη σύνδεση της συσκευής.
Εάν διαθέτετε ένα άλλο YubiKey, θα πρέπει να το προσθέσετε ως εφεδρική συσκευή εισάγοντας την ακόλουθη εντολή και ολοκληρώνοντας την ίδια διαδικασία:
pamu2fcfg -n >> ~/.config/Yubico/u2f_keys
Τέλος, θα χρειαστεί να διαμορφώσετε την εντολή sudo ώστε να απαιτείται έλεγχος ταυτότητας YubiKey. Θα πρέπει να ξεκινήσετε εισάγοντας την ακόλουθη εντολή για να ανοίξετε το αρχείο διαμόρφωσης sudo:
sudo vi /etc/pam.d/sudo
Μόλις ανοίξει το αρχείο ρυθμίσεων, επικολλήστε την ακόλουθη γραμμή ακριβώς από κάτω @include common-auth γραμμή για να ρυθμίσετε το sudo ώστε να απαιτείται έλεγχος ταυτότητας YubiKey:
απαιτείται πιστοποίηση pam_u2f.so
Αποθηκεύστε και βγείτε από το αρχείο πατώντας Διαφυγή, πληκτρολόγηση :wq, και πατώντας Εισαγω, αλλά κρατήστε το τερματικό ανοιχτό. Δεν θα μπορείτε να αντιστρέψετε τις αλλαγές που κάνατε στον έλεγχο ταυτότητας sudo εάν το τερματικό κλείσει.
Ανοίξτε ένα δεύτερο τερματικό και εκτελέστε την ακόλουθη εντολή με το YubiKey αποσυνδεδεμένο και, στη συνέχεια, εισαγάγετε τον κωδικό πρόσβασής σας:
δοκιμή sudo echo
Η διαδικασία ελέγχου ταυτότητας θα αποτύχει. Εισαγάγετε το YubiKey σας και ξαναπληκτρολογήστε την εντολή και τον κωδικό πρόσβασής σας. Όταν η ενδεικτική λυχνία YubiKey αρχίσει να αναβοσβήνει, αγγίξτε το κουμπί στο YubiKey. Θα πρέπει να πιστοποιεί την ταυτότητα της εντολής. Εάν συμβεί αυτό, το YubiKey είναι πλήρως ρυθμισμένο για έλεγχο ταυτότητας sudo.
Πώς να ρυθμίσετε το YubiKey για έλεγχο ταυτότητας SSH
Μπορείτε επίσης να χρησιμοποιήσετε το YubiKey για έλεγχο ταυτότητας SSH! Αρκετές σειρές YubiKey είναι συμβατές με SSH, συμπεριλαμβανομένων των 5 Σειρά FIPS, Σειρά 5, Σειρά 4 FIPS και Σειρά 4. Η χρήση του YubiKey για τον έλεγχο ταυτότητας των συνδέσεών σας θα σας επιτρέψει να το κάνετε κάνουν κάθε σύνδεση SSH πολύ πιο ασφαλή.
Η καλύτερη μέθοδος για τη ρύθμιση του YubiKey περιγράφηκε από έναν έμπειρο χρήστη στο GitHub. Θα χρειαστείτε SSH 8.2 ή νεότερο και YubiKey με υλικολογισμικό 5.2.3 ή νεότερο. Μπορείτε να ελέγξετε την έκδοσή σας OpenSSH—και να την ενημερώσετε εάν χρειάζεται—με τις ακόλουθες εντολές:
ssh -V
ενημέρωση sudo apt && αναβάθμιση sudo apt
Στη συνέχεια, θα χρειαστεί να διαμορφώσετε το SSH ώστε να αποδέχεται το YubiKey σας. Εισαγάγετε την ακόλουθη εντολή στο ανοίξτε το πρόγραμμα επεξεργασίας vi και επεξεργαστείτε το αρχείο διαμόρφωσης:
sudo vi /etc/ssh/sshd_config
Προσθέστε την ακόλουθη γραμμή στο αρχείο διαμόρφωσης έτσι ώστε το YubiKey σας να γίνει αποδεκτό:
PubkeyAcceptedKeyTypes [email protected], [email protected]
Αποθηκεύστε και βγείτε από το αρχείο πατώντας Διαφυγή, πληκτρολόγηση :wq, και χτυπώντας Εισαγω. Τέλος, επανεκκινήστε την υπηρεσία SSH με την ακόλουθη εντολή, ώστε να ενεργοποιηθεί η νέα σας διαμόρφωση:
επανεκκίνηση της υπηρεσίας sudo ssh
Τέλος, είστε έτοιμοι να δημιουργήσετε το ζεύγος κλειδιών που θα χρησιμοποιήσετε για τον έλεγχο ταυτότητας SSH. Μεταβείτε στον κατάλογο SSH και δημιουργήστε το νέο κλειδί SSH με τις ακόλουθες εντολές:
cd home/username/.ssh
ssh-keygen -t ed25519-sk
Θα δημιουργηθούν δύο αρχεία στο ~/.ssh/ Ευρετήριο. Σημειώστε ότι μπορεί να χρειαστεί να χρησιμοποιήσετε ecdsa-sk αντί ed25519-sk εάν το σύστημά σας δεν είναι συμβατό και το τερματικό σας ζητήσει ότι η εγγραφή κλειδιού απέτυχε.
Στη συνέχεια, θα χρειαστεί να προσθέσετε το δημόσιο κλειδί στον διακομιστή σας με την ακόλουθη εντολή:
ssh-copy-id -i ~/.ssh/id_ed25519_sk.pub username@server
Θα πρέπει επίσης να προσθέσετε τον εαυτό σας στο αρχείο sudoers, ώστε να διατηρήσετε τα δικαιώματα μετά την απενεργοποίηση της ρίζας σύνδεσης. Πρόσβαση στο αρχείο και ανοίξτε το με visudo.
Μην ανοίγετε το αρχείο sudoers με ένα κανονικό πρόγραμμα επεξεργασίας κειμένου.
Κάτω από τη γραμμή που γράφει root ALL=(ALL: ALL) ALL, προσθέστε την ακόλουθη γραμμή:
όνομα χρήστη ALL=(ALL: ALL) ALL
Ανοιξε το /etc/ssh/ssd_config αρχείο και προσθέστε τις ακόλουθες γραμμές για να απενεργοποιήσετε τη σύνδεση root και τη σύνδεση με κωδικό πρόσβασης:
ChallengeResponseAuthentication noPermitRootLogin no
Τέλος, πληκτρολογήστε την ακόλουθη εντολή για να φορτώσετε το κλειδί σας στον πράκτορα SSH για τη διάρκεια της συνεδρίας:
ssh-add ~/.ssh/id_ed25519_sk
Τώρα μπορείτε να χρησιμοποιήσετε το YubiKey για έλεγχο ταυτότητας SSH. Θα χρειαστεί να εισάγετε το YubiKey στον υπολογιστή σας όταν σας ζητηθεί και να πατήσετε το κουμπί όταν η ένδειξη αναβοσβήνει. Με αυτήν τη νέα μέθοδο ελέγχου ταυτότητας, η πρόσβαση SSH στον απομακρυσμένο διακομιστή σας θα είναι σημαντικά πιο ασφαλής.
Άλλες πιθανές χρήσεις του YubiKey
Δεν υπάρχει κανένα πραγματικό όριο στο πώς μπορείτε να χρησιμοποιήσετε το YubiKey στο σύστημα Linux σας. Εάν θέλετε να κάνετε τον υπολογιστή σας εξαιρετικά ασφαλή, σκεφτείτε να χρησιμοποιήσετε το YubiKey για κρυπτογράφηση δίσκου ή χωρίς κωδικό πρόσβασης. Μπορείτε ακόμη και να το χρησιμοποιήσετε για να υπογράψετε email και αρχεία εάν θέλετε.
Ασφαλίστε το σύστημά σας Linux με το YubiKey
Δεν χρειάζεται να σταματήσετε να χρησιμοποιείτε απλώς το YubiKey για έλεγχο ταυτότητας SSH και sudo. Μπορείτε επίσης να χρησιμοποιήσετε το YubiKey για έλεγχο ταυτότητας πρόσβασης σε πολλούς από τους λογαριασμούς σας στον ιστό. Το καλύτερο μέρος είναι ότι το να ξεκινήσετε με το YubiKey 2FA είναι μια απλή διαδικασία.