Jump to content

BlackTrack

  • entries
    93
  • comments
    279
  • views
    22286

Authenticating Linux συστήματα σε Active Directory Domain.


Blackman

635 views

Όσοι στο παρελθόν έχετε βάλει κάποιο linux σύστημα σε ένα εταιρικό δίκτυο, θα έχετε καταλάβει ότι υπάρχει μία δυσκολία στο να κάνετε το σύστημα σας authenticate στο Active Directory.

 

 

 

Η απλή λύση είναι να δώσετε στο workgroup το όνομα του domain (όπως γίνεται και στις Home εκδόσεις των Windows) και μετά να δίνετε domain/username & password, όπου θέλετε να συνδεθείτε (εντός του domain και εφόσον έχετε εγκαταστήσει κάποιο πρόγραμμα που να προσφέρει file & printer sharing access).

 

 

 

Η λύση αυτή δεν είναι η καλύτερη δυνατή και τελευταία οι εκδόσεις των διανομών Linux που βγαίνουν προσθέτουν την δυνατότητα να οριστεί και το domain, μέσω της επιλογής να χρησιμοποιεί το σύστημα Kerberos (αυτό δεν σημαίνει ότι σε κάνει authenticate), ενώ αρχικά είχαν προχωρήσει στην χρήση του LDAP για τον ίδιο λόγο.

 

 

 

Ιστορικό

Ο λόγος που τα πράγματα πήραν αυτή την τροπή, ήταν γιατί οι open source προγραμματιστές δεν είχαν στο μυαλό τους την χρήση ενός (και κοινού) συστήματος authentication, με αποτέλεσμα ο κάθε ένας να φτιάχνει ένα διαφορετικό authentication σύστημα. Με συνέπεια το θέμα να ξεφύγει από την δυνατότητα 'διαχείρισης'. Αρχίκα η λύση ήρθε από την SUN Microsystems που χρησιμοποίησε συγκεκριμένα APIs για authentication που ο κάθε developer μπορούσε να χρησιμοποιήσει. Για την ακρίβεια χρησιμοποίησε ένα μηχανισμό που λέγετε Pluggable Authentication Modules (PAM) και συνδύασαν αυτά τα APIs με τα Name Server Switch (NSS) APIs που χρησιμοποιούνται για την ανεύρεση των πληροφοριών του κάθε χρήστη.

Η χρήση του LDAP μόνη της ή μαζί με Kerberos δεν δίνει τα επιθυμητά αποτελέσματα, καθότι στο μεν LDAP τα username & password περνάνε ως clear text μέσα από το δίκτυο (πράγμα μη αποδεκτό και ανασφαλές), ενώ με την χρήση του Kerberos τα πράγματα γίνονται μεν πιο ασφαλή, αλλά αγνοεί ότι γίνεται publish από το Active Directory που έχει σχέση με τις εγγραφές DNS Service Location, πράγμα που σημαίνει ότι ο linux χρήστης πρέπει να διαλέξει συγκεκριμένο set από DCs για να συνδεθεί.

 

 

-----------------

 

Η λύση έρχεται με την χρήση δύο εφαρμογών (μίας ουσιαστικά) που είναι διαθέσιμες σε όλες τις γνωστές και διαδεδομένες διανομές linux και είναι το SAMBA και το Winbind.

 

 

Το SAMBA είναι ένα πρόγραμμα που συνδέει τα Linux συστήματα με τα συστήματα της Microsoft. Έχει συγκεκριμένα components που προσφέρουν Windows file & print services, όπως επίσης και linux-based services που συνεργάζονται με Windows DCs.

 

 

Αυτό που μας ενδιαφέρει περισσότερο στο SAMBA είναι ένας δαίμονας (ή να λέω deamon;) με το όνομα Winbind. Αυτός ο δαίμονας δουλεύει σαν Proxy για την επικοινωνία των PAM & NSS (που αναφέραμε ποιο πάνω) του linux με το Active Directory ενός Domain Controller. Για την ακρίβεια χρησιμοποιεί το Kerberos για να κάνει το authentication με το AD και το LDAP για να πάρει όποια πληροφορία για χρήστες ή groups . Αυτό, θα σκεφτείτε, ότι ανέφερα ότι το κάνει ο συνδυασμός Kerberos & LDAP μέσα από το Linux έτσι και αλλιώς χωρίς την χρήση κάποιου δαίμονα. Όμως το Winbind, έρχεται να πάρει αυτό το κομμάτι και να του προσθέσει την δυνατότητα να βρίσκει όλους τους DCs (πράγμα που δεν κάνει ο απλός συνδυασμός Kerberos & LDAP) και το κάνει χρησιμοποιώντας ένα αλγόριθμο παρόμοιο με του DCLOCATOR που χρησιμοποιεί το AD, μαζί με την δυνατότητα να χρησιμοποιεί RPC και πλέον να μπορεί να κάνει reset Active Directory passwords (πράγμα που δεν γινόταν μέχρι την εμφάνιση του Winbind).

 

 

 

 

winbind.png

 

------------------

 

Εγκατάσταση – Παραμετροποίηση

 

 

 

 

red_hat_logo_big.jpg

http://www.wlug.org.nz/ActiveDirectorySamba

 

 

solaris-login2.png

http://docs.sun.com/app/docs/doc/819-3063/ciajejfa?a=view

 

 

freebsd-screen0.png

http://joseph.randomnetworks.com/archives/2005/11/08/freebsd-users-and-groups-with-samba-winbind-and-active-directory/

 

 

UbuntuLogo1.jpg

https://help.ubuntu.com/community/ActiveDirectoryWinbindHowto

 

 

suse.png

http://www.linuxquestions.org/questions/linux-software-2/suse-9-winbind-samba-doc-153836/

 

 

sticker-fedora.jpg

http://www.linuxquestions.org/questions/linux-networking-3/how-to-connect-fedora-6-to-existing-windows-2003-ad-527201/

 

http://www.planetmy.com/blog/how-to-join-fedora-core-6-samba-server-to-windows-2003-active-directory/

 

--------------------

 

Winbind

 

http://www.samba.org/samba/docs/man/Samba-HOWTO-Collection/winbind.html

 

 

Εναλλακτικές λύσεις μπορείτε να βρείτε σε αυτό το ενδιαφέρον άρθρο

http://www.securityfocus.com/infocus/1563

 

---------------------

 

Ελπίζω να σας βοηθήσει!

 

4 Comments


Recommended Comments

σε Ubuntu κατάφερα και δούλευα έτσι για περισσότερο από ένα μήνα στο γραφείο (μέχρι να στήσω πάλι το windows partition, που είχε χτυπήσει)

 

αυτό που δεν με βόλευε ήταν ότι είχα συνηθίσει να έχω τα administration tools που δεν είχα, αλλά τα έβλεπα με remote desktop στον domain controller.

 

τα link σου δεν ανοίγουν...ενώ το ένα μου έβγαλε ότι έχει ιό...

Link to comment

Όσοι έχετε διαβάσει τα προηγούμενα blogs μου θα γνωρίζετε τι είναι το Samba και που χρησιμεύει. Αν δεν

Link to comment
Guest
Add a comment...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...