Page 13 - Linux Inside τ. 11 preview

Linux Inside
87
παραγόντων σε έναν
υπολογιστή, πρέπει να
εγκαταστήσουμε το
Barada pam module
σε αυτόν τον υπολογι-
στή και να τον ρυθμί-
σουμε να το χρησιμο-
ποιεί. Αρχικά, για να
κατεβάσουμε και να
εγκαταστήσουμε το
Barada από τον πηγαίο
κώδικα, αρκεί να ακο-
λουθήσουμε τις παρα-
κάτω τρεις εντολές:
wget -c
tar xf barada-pam-0.5.3.tar.bz2
cd barada-pam
Θα πρέπει να έχουμε ήδη εγκαταστήσει τα εξής προγράμ-
ματα:
boost
boost-devel
pam-devel
openssl-devel
Στην συνέχεια δίνουμε:
./
configure
make
sudo make install
Η εγκατάσταση έχει ολοκληρωθεί επιτυχώς!
Στη συνέχεια, μπορούμε να χρησιμοποιήσουμε το barada
pam module σε οποιαδήποτε εφαρμογή/daemon κάνει χρήση
pam modules (είναι όσα προγράμματα αναφέρονται στον κατά-
λογο /etc/pam.d). Για παράδειγμα, για να ενεργοποιήσουμε το
Βarada στο sshd, αρκεί να επεξεργαστούμε το αρχείο /etc/
pam.d/sshd προσθέτοντας το εξής στην αρχή του αρχείου:
auth sufficient pam_barada.so
Εάν το σύστημά μας είναι 64-bit, τότε θα πρέπει να βάλου-
με το εξής:
auth sufficient /lib/security/pam_barada.so
Το sufficient λέει απλά στο sshd ότι εάν δεν πληκτρολογή-
σουμε σωστά το token του Gort, θα συνεχίσει ρωτώντας μας
το συνθηματικό που ήδη έχουμε.
Δημιουργία κλειδιού και Pin
Είμαστε σχεδόν έτοιμοι. Τώρα πρέπει να προσθέσουμε
έναν χρήστη στο Βarada:
# /
usr/local/bin/barada-add ebal 12345
Added ebal with key:
e1ffc261e410e9ce67573ee64f923ae1
Τέλος, το... δύσκολο κομμάτι είναι να αντιγράψουμε το
κλειδί στο Gort (δείτε
εικόνα 1
),
το οποίο θα έχουμε εγκατα-
στήσει στο Android κινητό μας από το Google Play. Τώρα το
μόνο που μένει, είναι να το δοκιμάσουμε. Τρέχουμε το Gort,
επιλέγουμε το profile μας και πληκτρολογούμε το pin: 12345
αυτό που δώσαμε στο Βarada. Το Gort θα μας επιστρέψει
ένα εξαψήφιο κωδικό, π.χ., 405148, με τον οποίο μπορούμε
να συνδεθούμε, όπως στην
εικόνα 2
.
Προσοχή, κάθε εξαψήφιος κωδικός έχει μικρή διάρκεια ζω-
ής. Οπότε ανοίγουμε γρήγορα το τερματικό μας και συνδεό-
μαστε στο Linux μηχάνημά μας, όπως φαίνεται στην
εικόνα
3
.
Αν όλα πάνε καλά, έχουμε επιβεβαιώσει ότι συνδεόμαστε
κανονικά με το συνδυασμό Gort και Barada pam module.
Apache
Υπάρχουν αρκετές προγραμματιστικές βιβλιοθήκες που
μπορούμε να χρησιμοποιήσουμε, συσχετίζοντας τις εφαρμο-
γές μας με το μηχανισμό PAM. Με αυτόν τον τρόπο, μπορού-
με να υλοποιήσουμε το two way factor authentication. Εάν
ενεργοποιήσουμε το EPEL repository σε CentOS διανομή, θα
δούμε ότι υπάρχει το mod_auth_pam [8] και μπορούμε να
αντικαταστήσουμε το Basic Auth με το Βarada.
Επίλογος
Η διαδικασία πιστοποίησης δύο παραγόντων μάς προσφέ-
ρει ένα ακόμη επίπεδο ασφάλειας. Στηρίζεται στο ότι κάτι
γνωρίζουμε (pin) και κάτι έχουμε (token). Επίσης, η πρόσβα-
ση διαρκεί μερικά δευτερόλεπτα. Οπότε εάν δεν προλάβουμε
να συνδεθούμε, ήδη το token που έχουμε παραγάγει είναι
άχρηστο (και για τον κακόβουλο χρήστη). Αυτό όμως δεν συ-
νεπάγεται ότι το σύστημα ή η εφαρμογή μας είναι απόλυτα
ασφαλή. Οι λύσεις τύπου two-step authentication είναι αρκετά
χρήσιμες εάν δεν χρησιμοποιούμε το μηχάνημά μας ή εάν
θέλουμε να αυξήσουμε την ασφάλεια.
Εάν δεν έχουμε προστατεύσει το σύστημά μας από brute
force επιθέσεις και το συνθηματικό μας δεν είναι αρκετά
ασφαλές, τότε είναι θέμα χρόνου για να συνδεθεί κάποιος με
τα στοιχεία μας. Είναι αρκετά τα μέτρα ασφαλείας που μπο-
ρούμε να λάβουμε. Για παράδειγμα, η προκαθορισμένη TCP
πόρτα που ακούει ο ssh daemon είναι η 22. Εάν θέλουμε να
αυξήσουμε την ασφάλειά μας, καλύτερα να αλλάξουμε την
πόρτα με κάποια άλλη. Επίσης, δεν πρέπει να επιτρέπουμε
στο διαχειριστή να μπορεί να συνδέεται, δηλαδή μην κάνετε
αυτό που φαίνεται στην εικόνα μας! :P
Linux Labs - Barada
Σύνδεσμοι
[1]
SSH:
[2]
OTPW:
[3]
HOTP:
[4]
Google-authenticator:
[5]
PAM:
[6]
Gart:
[7]
Barada:
[8]
Apache:
Συνδεόμαστε!
3
Κάθε φορά που
θέλουμε να
συνδεθούμε στο Linux
μηχάνημα, το Gort θα
μας δίνει τον OTP
κωδικό.
2