La Ο έλεγχος ταυτότητας δύο παραγόντων (2FA) δεν είναι κάτι μοναδικό που μπορεί να χρησιμοποιηθεί στα μέσα κοινωνικής δικτύωσης ή σε οποιονδήποτε άλλο ιστότοπο. Λοιπόν, αυτό το μέτρο ασφαλείας μπορεί επίσης να εφαρμοστεί σε ένα λειτουργικό σύστημα.
Αυτός είναι ο λόγος για τον οποίο Σήμερα θα δούμε πώς να εφαρμόσουμε έλεγχο ταυτότητας δύο παραγόντων στο SSH στο Ubuntu και παράγωγα που χρησιμοποιούν τον γνωστό Google Authenticator που θα αυξήσουν σημαντικά την ασφάλεια του διακομιστή OpenSSH.
Κανονικά, απλά πρέπει να εισαγάγετε έναν κωδικό πρόσβασης ή να χρησιμοποιήσετε το κλειδί SSH για να συνδεθείτε στο σύστημά σας από απόσταση.
Ο έλεγχος ταυτότητας δύο παραγόντων (2FA) απαιτεί την εισαγωγή δύο πληροφοριών για τη σύνδεση.
Επομένως, θα πρέπει επίσης να εισαγάγετε έναν εφάπαξ κωδικό πρόσβασης για να συνδεθείτε στον διακομιστή SSH.
Αυτός ο εφάπαξ κωδικός πρόσβασης υπολογίζεται χρησιμοποιώντας τον αλγόριθμο TOTP, ο οποίος είναι ένα πρότυπο IETF.
Εγκατάσταση και διαμόρφωση του Google Authenticator στο Ubuntu και παράγωγα
Το πρώτο βήμα που πρόκειται να πραγματοποιήσουμε είναι η εγκατάσταση του Google Authenticator στο σύστημά μας, έτσι θα ανοίξουμε ένα τερματικό στο σύστημα (αυτό μπορεί να γίνει με τον συνδυασμό πλήκτρων "Ctrl + Alt + T) και σε αυτό θα πληκτρολογήσουμε την ακόλουθη εντολή:
sudo apt install libpam-google-authenticator
Η εγκατάσταση ολοκληρώθηκε θα εκτελέσουμε την πρόσφατα εγκατεστημένη εφαρμογή με την ακόλουθη εντολή:
google-authenticator
Κατά την εκτέλεση αυτής της εντολής, αυτό που πρόκειται να κάνουμε είναι να εκχωρήσουμε ένα μυστικό κλειδί και αυτό θα μας ρωτήσει εάν θέλουμε να χρησιμοποιήσουμε τα διακριτικά με βάση το χρόνο, το οποίο θα απαντήσουμε ναι.
Μετά από αυτό, θα δουν έναν κωδικό QR τον οποίο μπορούν να σαρώσουν χρησιμοποιώντας μια εφαρμογή TOTP στο τηλέφωνό τους.
εδώ Σας συνιστούμε να χρησιμοποιήσετε την εφαρμογή Επαληθευτής Google στο κινητό σας τηλέφωνο.Για να μπορείτε να εγκαταστήσετε την εφαρμογή μέσω του Google Play ή του Apple App Store στο κινητό σας τηλέφωνο.
Έχετε ήδη την εφαρμογή στο τηλέφωνό σας, πρέπει να σαρώσετε τον κωδικό QR μαζί του. Λάβετε υπόψη ότι πρέπει να μεγεθύνετε το παράθυρο τερματικού για να σαρώσετε ολόκληρο τον κωδικό QR.
Ο κωδικός QR αντιπροσωπεύει το μυστικό κλειδί, ο οποίος είναι γνωστός μόνο στον διακομιστή SSH και στην εφαρμογή Google Authenticator.
Μόλις σαρωθεί ο κωδικός QR, μπορούν να δουν ένα μοναδικό εξαψήφιο διακριτικό στο τηλέφωνό τους. Από προεπιλογή, αυτό το διακριτικό διαρκεί 30 δευτερόλεπτα και πρέπει να εισαχθεί για να συνδεθείτε στο Ubuntu μέσω SSH.
Στο τερματικό θα μπορείτε επίσης να δείτε τον μυστικό κωδικό, καθώς και τον κωδικό επαλήθευσης και τον κωδικό εκκίνησης έκτακτης ανάγκης.
Από την οποία σας συνιστούμε να φυλάσσετε αυτές τις πληροφορίες σε ασφαλές μέρος για μελλοντική χρήση. Από τις άλλες ερωτήσεις που μας υποβάλλονται, απλώς θα απαντήσουμε ναι πληκτρολογώντας το γράμμα y.
Ρύθμιση SSH για χρήση με τον Επαληθευτή Google
Ήδη βασίζομαι στα παραπάνω, Τώρα πρόκειται να κάνουμε την απαραίτητη διαμόρφωση για να μπορέσουμε να χρησιμοποιήσουμε τη σύνδεση SSH στο σύστημά μας με τον Επαληθευτή Google.
Στο τερματικό vΘα πληκτρολογήσουμε την ακόλουθη εντολή
sudo nano /etc/ssh/sshd_config
Μέσα στο αρχείο θα αναζητήσουμε τις ακόλουθες γραμμές και θα τις αλλάξουμε σε "ναι", ως εξής:
UsePAM yes ChallengeResponseAuthentication yes
Μόλις πραγματοποιηθούν οι αλλαγές, αποθηκεύστε τις αλλαγές που έγιναν με Ctrl + O και κλείστε το αρχείο με Ctrl + X.
Στο ίδιο τερματικό πρόκειται να επανεκκινήσουμε το SSH με:
sudo systemctl restart ssh
Από προεπιλογή, ο έλεγχος ταυτότητας απαιτεί να εισάγουν τον κωδικό πρόσβασης χρήστη για να συνδεθούν.
Γιατί ας επεξεργαστούμε το αρχείο κανόνων PAM για τον δαίμονα SSH.
sudo nano /etc/pam.d/sshd
Στην αρχή αυτού του αρχείου, μπορείτε να δείτε την ακόλουθη γραμμή, η οποία επιτρέπει τον έλεγχο ταυτότητας κωδικού πρόσβασης
ChallengeResponseAuthentication
Που πρέπει να ορίσουμε ναι.
Για να ενεργοποιήσετε επίσης τον έλεγχο ταυτότητας μίας χρήσης κωδικού πρόσβασης, προσθέστε τις ακόλουθες δύο γραμμές.
@include common-auth #One-time password authentication via Google Authenticator auth required pam_google_authenticator.so
Αποθηκεύστε και κλείστε το αρχείο.
Από τώρα και στο εξής, κάθε φορά που συνδέονται στο σύστημά σας μέσω σύνδεσης SSH, θα τους ζητείται να εισάγουν τον κωδικό πρόσβασης χρήστη και έναν κωδικό επαλήθευσης (ο εφάπαξ κωδικός πρόσβασης που δημιουργείται από τον Επαληθευτή Google).
Γεια σας, αρκετά απλό σεμινάριο, ωστόσο, μόλις κάνω όλα τα βήματα που δεν μπορώ πλέον να εισαγάγω μέσω ssh, μου ρίχνει ένα λάθος σφάλμα κωδικού πρόσβασης, δεν μπορώ καν να ζητήσω 2FA
Έχω Ubuntu Server 20.04