Vue d'ensemble :
Stratgies d'implmentation
Contenu
L'authentification Windows
Authentification Linux
Samba et Winbind
Trois stratgies d'authentification
Notre plan d'implmentation
Recherche du logiciel droit
Construction Samba
Configuration rseau Linux
Configuration de Linux Heure synchronisation
Configuration de PAM et la fonction NSS
Installation et configuration Samba
Le problme de mappage de code
Joindre le domaine et consignation dans
Que se passe-t-il si elle ne fonctionne ?
Maintenant que son fonctionne, que vous avez ?
Solutions de tiers
Republicans et Democrats. Dentifrice et jus d'orange. Linux et Windows. Certains lments simplement dont
mlanger, droite ? Chaque usine IT je jamais t impliqu dans a t divise en deux camps : l'quipe de
Windows et l'quipe de Linux. Ils dont concurrence rellement les uns avec les autres, mais ils que ne pas
collaborer soit. En fait, certains emplacements mme atteindre jusqu'en tant que placer une ligne jaune sur le
plancher simplement pour vous absolument assurer qu'il n'y a aucune fraternization inapproprie entre les deux
groupes.
Je suis un utilisateur Windows et j'ai certainement poked laisser s'amuser sur Internet mes collgues orientes
de Linux, mais nous avons tous sont le mme objectif d'offrir haute qualit et rentables des services
INFORMATIQUES l'organisation. Une faon nous pouvons faire qui consiste partager infrastructure logicielle
de base comme Active Directory. Quasiment toutes les organisations INFORMATIQUES ont rgles sur Active
Directory pour fournir l'authentification des services leurs ordinateurs de bureau Windows et les serveurs. Au
lieu de gestion d'une infrastructure d'authentification distinct pour l'environnement Linux (ainsi qu'avec un
ensemble distinct de noms d'utilisateur et mots de passe), serait-il pas prfrable si les ordinateurs Linux
utiliss Active Directory ainsi ? Je pense que cela serait le cas, et je vous montrerai comment procder dans cet
article.
L'authentification Windows
Windows a expdies avec un systme d'authentification unique et une authentification rseau intgr pour
assez longtemps maintenant. Avant de Windows 2000, contrleurs de domaine Windows NT (contrleurs de
domaine) fournis services d'authentification pour les clients Windows l'aide du protocole NT LAN Manager
(NTLM). Bien que NTLM n'tait pas aussi scurise qu'a t initialement pens, il tait trs utile car il
maintenant rsolu le problme de devoir grer des comptes utilisateur en double sur plusieurs serveurs sur le
rseau.
partir de Windows 2000, Microsoft dplaces de NTLM vers Active Directory et ses services d'authentification
Kerberos intgrs. Kerberos tait beaucoup plus scuris que NTLM et il redimensionn mieux, trop. Et Kerberos
tait une norme dj utilise par les systmes Linux et UNIX, que vous ouvrir la porte pour intgrer les plates-
formes Windows.
Authentification Linux
l'origine, Linux (et les GNU outils et les bibliothques qui s'excutent sur elle) n'a pas cr avec un mcanisme
d'authentification unique N'oubliez pas. En raison de cela, les dveloppeurs d'applications Linux a pris
gnralement crer leur propre schma d'authentification. Ils grs accomplir cela en recherchant les noms et
les hachages de mot de passe dans etc./mot de passe (les texte traditionnel fichier contenante informations de
Linux Identification utilisateur) ou fourniture d'un mcanisme entirement diffrent (et distinct).
Samba et Winbind
Samba est un projet open source qui vise une intgration entre les environnements Windows et Linux. Samba
contient des composants qui permettent de Linux ordinateurs accder aux fichier Windows et services
d'impression, ainsi que fournissent des services en fonction de Linux qui muler les contrleurs de domaine
Windows NT 4.0. Utilisez les composants clients Samba, Linux machines peuvent tirer parti des services
d'authentification de Windows fournis par Windows NT et les contrleurs de domaine Active Directory.
La partie spcifique de Samba est plus intressante nous pour ce projet est appele Winbind. Winbind est un
dmon (service de vocabulaire de Windows) qui s'excute sur les clients Samba et agit comme un proxy pour
les communications entre PAM et NSS excution sur la machine Linux et Active Directory s'excutant sur un
contrleur de domaine. En particulier, Winbind utilise Kerberos pour authentifier avec Active Directory et LDAP
pour rcuprer utilisateur et les informations de groupe. Winbind fournit galement des services
supplmentaires telles que la possibilit pour localiser les contrleurs de domaine l'aide un algorithme
similaire la DCLOCATOR dans Active Directory et la possibilit pour rinitialiser les mots de passe Active
Directory communiquer avec un contrleur de domaine en utilisant RPC.
Winbind rsout plusieurs problmes que simplement utilisant Kerberos avec PAM ne. En particulier, au lieu de
coder en dur un contrleur de domaine pour s'authentifier sur la manire que le module PAM Kerberos, Winbind
slectionne un contrleur de domaine en recherchant les enregistrements de localisateur DNS comme le module
du LOCALISATEUR de contrleurs de domaine Microsoft ne.
La figure 1 Authentification Active Directory l'aide de LDAP (cliquez sur l'image pour l'agrandir)
Pour rduire ce risque de transmettre des informations d'identification en clair, la seule consiste chiffrer le
canal de communication Directory client actif l'aide de quelque chose tels que SSL. Bien que ce soit
certainement dosable, il impose le fardeau supplmentaire de grer les certificats SSL sur le contrleur de
domaine et sur l'ordinateur de Linux. En outre, l'aide le LDAP du module PAM module ne prend pas en charge
la modification de rinitialiser ou Expiration des mots de passe.
utilisant LDAP et Kerberos Une autre stratgie pour exploiter Active Directory pour l'authentification Linux
consiste configurer PAM pour utiliser l'authentification Kerberos et la fonction NSS utiliser LDAP pour
rechercher des utilisateurs et des informations de groupe, comme illustr figure 2 . Ce schma a l'avantage
d'tre relativement plus scuris, et il exploite les capacits en la-zone de Linux. Mais cela n'est pas prendre
le parti les enregistrements DNS service emplacement (SRV) que les contrleurs de domaine Active Directory
publier, donc vous devez slectionner un ensemble spcifique de contrleurs de domaine pour s'authentifier
sur. Il n'est pas aussi offrent un moyen trs intuitif de gestion des mots de passe Active Directory arrivant
expiration ou, jusqu' ce que rcemment, pour les recherches de l'appartenance au groupe appropri.
La figure 2 Authentification Active Directory l'aide LDAP et Kerberos (cliquez sur l'image pour
l'agrandir)
l'aide de Winbind Pour utiliser Active Directory pour l'authentification Linux, la troisime consiste configurer
PAM et NSS pour effectuer des appels vers le dmon Winbind. Winbind va convertir le PAM diffrent et NSS
demande en les appels de Active Directory correspondants, utilisant LDAP, Kerberos ou RPC, en fonction de l'est
plus approprie. la figure 3 illustre cette stratgie.
La figure 3 Authentification Active Directory l'aide de Winbind (cliquez sur l'image pour l'agrandir)
2. Crer Samba.
Les sections suivante quelques dans cet article dcrivent ces tapes dans plus de dtails.
Construction Samba
La premire tape dans la construction de Samba consiste tlcharger la source approprie 000. J'AI
tlcharg la source 000 pour Samba 3.0.31 partir du site PBONE. Ensuite, placez le fichier de 000 source
tlcharg dans usr/src/REDHAT/SRPMS ; c'est le rpertoire standard pour source RPMs pendant le processus de
gnration.
Ouvrez une session Terminal Server (fentre de ligne de commande dans Windows vocabulaire) et dplacez vers
le dossier SRPMS. Que fait, installez le package source utilisant la commande, comme illustr figure 5 .
La figure 5 l'installation de la source de Samba 000 (cliquez sur l'image pour l'agrandir)
Si vous recevez l'avertissement d'erreur mockbuild utilisateur n'existe pas, l'aide de racine, ne vous
inquitez pas. Cette erreur indique que les utilitaires de gnration simulacre ne sont pas installs. Le processus
de gnration fonctionnera sans eux.
Ensuite, dplacer vers le rpertoire USR/src/REDHAT/spcifications et modifier le fichier SAMBA.SPEC, qui
contient les options de gnration Samba. Recherchez la ligne qui commence par CFLAGS = et assurez-vous
que l'option "--avec-partags-modules = idmap_ad, idmap_rid est prsent. Cette option garantit que le
processus de gnration va inclure le code qui traduit UIDs Linux (identificateurs uniques globaux) correctement
Active Directory. la figure 6 illustre cette option.
La figure 6 les avec-partags-modules crer option (cliquez sur l'image pour l'agrandir)
Ensuite, vous devrez peut-tre mettre jour certaines des bibliothques sur votre ordinateur pour crer
correctement et installer Samba ; cela dpend les versions des bibliothques se vous avez install. Dans mon
cas, J'AI d installer les packages rpertories dans la figure 4 l'aide la rpm-commande d'installation ; dans
certains cas je devais utiliser--l'option forcer pour obtenir au-del de quelques-uns des problmes de
dpendance.
Pour crer Samba, dplacer vers le rpertoire/USR / src/redhat et excutez le bb rpmbuild commande
SPECS/samba.spec, comme illustr figure 7 . Le processus laisse un fichier de 000 samba-3.0.31 0.i386
nouveau dans le rpertoire USR/src/REDHAT/RPMS. Nous installera ce fichier 000 plus loin dans le projet.
La figure 7 Cration du fichier 000 binaire Samba (cliquez sur l'image pour l'agrandir)
La figure 9 de dfinition de la rsolution DNS principale (cliquez sur l'image pour l'agrandir)
Enfin, une fois que vous avez termin ces tapes, vous devez dfinir le nom ordinateur hte de l'ordinateur
Linux pour reflter son nom dans le domaine. Mme si vous pouvez dfinir le nom ordinateur hte l'aide de
l'application de configuration rseau, cela ne semble pas toujours fonctionner correctement.
Au lieu de cela, modifiez le /etc/htes fichier directement et ajouter une entre sous l'entre de
localhost.localdomain a la forme < adresse ip > <fqdn> < nom ordinateur hte >. (Un exemple serait
10.7.5.2 rhel5.linuxauth.local linuxauth .) J'AI doivent noter que cela va provoquer la cration d'un objet
ordinateur incorrect dans le rpertoire une fois que vous joignez l'ordinateur Linux dans le domaine des.
La figure 10 Configuration du protocole de temps rseau (cliquez sur l'image pour l'agrandir)
La figure 11 fichier de configuration du module PAM pour Gnome le Gestionnaire de Bureau (cliquez
sur l'image pour l'agrandir)
Chaque entre dans un fichier de configuration du module PAM comporte l'cran < groupe de gestion >
<control> <module> <parameters>, o < groupe de gestion > correspond la fonctionnalit de l'entre de
configuration se rapportant : authentification, compte, mot de passe ou session. Les mots-cls de contrle, qui
dcrit dans la figure 12 , indiquent PAM comment traiter l'entre de configuration. La troisime colonne du
fichier contient le nom d'une bibliothque partage du module PAM dans le rpertoire /lib/security. Bibliothques
partages contiennent dynamiquement chargeables excutable code, similaire la DLL dans Windows. Termes
supplmentaires aprs le nom du module sont des paramtres qui PAM transmet la bibliothque partage.
La figure 12 PAM contrle mots-cls
Mot cl Description
Requis Si le module russit, PAM continue d'valuer les autres entres pour le groupe de gestion et
le rsultat sera dtermin par les rsultats des autres modules. Si le module choue, PAM
continue d'valuation mais renvoie chec l'application appelante.
Requis Si le module russit, PAM continue valuer les entres de groupe de gestion. Si le module
choue, PAM renvoie l'application appelante avec aucun traitement ultrieur.
Suffisant Si le module russit, PAM renvoie succs l'application appelante. Si le module choue,
e PAM continue d'valuation, mais le rsultat sera dtermin par les modules suivants.
Facultatif PAM ignore les rsultats du module, sauf s'il s'agit le module uniquement spcifi pour le
groupe de gestion.
Inclure PAM inclut le contenu du fichier configuration du module PAM rfrenc et traite les
critures qu'il contient.
Vous pouvez le voir que chaque groupe de gestion comporte plusieurs critures. PAM traite les critures dans
l'ordre en appelant le module nomm. Le module renvoie ensuite soit russite ou l'chec et PAM se poursuit en
fonction sur le contrle de mot cl.
Vous remarquerez que le fichier de configuration du module PAM pour GDM inclut systme-authentification de
tous ses groupes de gestion. Voici comment PAM tablit l'authentification par dfaut pour GDM. En modifiant
l'authentification par le systme, vous pouvez modifier le comportement d'authentification pour toutes les
applications qui inclut le fichier systme-authentification dans leurs configurations du module PAM. Le fichier
systme-authentification par dfaut est illustr figure 13 .
La figure 13 fichier systme-authentification PAM (cliquez sur l'image pour l'agrandir)
Le module NSS (name service switch) masque les spcificits du systme de stockage de donnes au
dveloppeur d'applications, en grande partie de la mme faon que PAM masque les dtails de
l'authentification. NSS permet l'administrateur spcifiez que bases de donnes systme moyen sont
stocks. En particulier, l'administrateur peut spcifier comment le nom d'utilisateur et mot de passe les
informations est stocke. Car nous souhaitons applications pour rechercher des informations utilisateur dans
Active Directory l'aide de Winbind, nous devons modifier le fichier de configuration de NSS pour afficher que.
Red Hat inclut une petite applet graphique pour configuration du module PAM et la fonction NSS appel
systme-configuration d'authentification. Il s'occupe de plus (mais pas toutes) des modifications que vous
souhaitez apporter aux fichiers systme-authentification et nss.conf.
Excutez l'application d'authentification de configuration systme et vous voyez une bote de dialogue telle que
celle illustre la figure 14 . Cochez l'option Winbind sur l'onglet utilisateur (ce qui configure le fichier
nss.conf) et l'onglet Authentification (qui modifie le fichier systme-authentification).
La figure 16 Cration d'un rpertoire de base pour les utilisateurs (cliquez sur l'image pour l'agrandir)
La figure 17 mappage des ID de rpertoire Active (cliquez sur l'image pour l'agrandir)
L'inconvnient uniquement au mappage de code d'Active Directory est que nous avons fournir un mcanisme
pour vrifier que chaque utilisateur et de groupe a un identificateur, et que ces identificateurs sont tous uniques
dans la fort. Pour plus d'informations, consultez l'encadr, configuration Active Directory pour Active
Directory ID de mappage, .
Heureusement, il est une autre stratgie de mappage code dont beaucoup moins tches
administratives. N'oubliez pas que les SID Windows identifie uniquement l'utilisateur dans un domaine, ainsi que
le domaine lui-mme. La partie du SID qui identifie l'utilisateur dans le domaine est appele l'identificateur
relatif ou RID et est en fait un entier de 32 bits. Par consquent, Winbind pouvez tout simplement extraire le RID
le SID lorsque l'utilisateur se connecte, puis utiliser le RID en tant que l'UID interne unique. Winbind fait
rfrence cette stratgie que RID mappage ou idmap_rid. la figure 18 illustre comment RID mappage
fonctionne rellement.
La figure 19 spcification le nom de rpertoire de base (cliquez sur l'image pour l'agrandir)
1. Linux ncessite un UID pour chaque utilisateur qui authentifie. tant donn que vous souhaitez grer les
informations utilisateur dans Active Directory, chaque compte d'utilisateur qui s'ouvrent une session
dans sur un ordinateur Linux doit disposer un attribut uidNumber unique. La valeur spcifique vous
utilisez pour un uidNumber n'est pas importante, mais il doit tre unique dans tous les utilisateurs
peuvent se connecter l'ordinateur de Linux.
2. Chaque utilisateur Linux doit galement disposer un identificateur de groupe par dfaut, pour chaque
utilisateur Active Directory qui va se connecter un ordinateur Linux requiert une valeur de l'attribut
gidNumber ainsi. Cette valeur ne doit tre unique parmi les utilisateurs, mais il doit identifie le groupe.
3. Chaque groupe dans Active Directory doit avoir une valeur unique pour son attribut
gidNumber. Proprement parler, il est OK pour les groupes pour ne pas qu'une valeur de l'attribut
gidNumber, alors Winbind attend, lorsqu'il authentifie un utilisateur, que chaque groupe laquelle cet
utilisateur est membre aura une valeur unique gidNumber. Il est probablement plus facile simplement
pour vous assurer que chaque groupe contient une valeur unique gidNumber.
4. Winbind s'attend ce que chaque utilisateur qu'il recherche dans Active Directory est membre du
groupe Utilisateurs du domaine, donc il attend galement que le groupe Utilisateurs du domaine a une
valeur pour son attribut gidNumber.
Solutions de tiers
Authentifier les ordinateurs de Linux Active Directory est clairement une bonne Thing, mais rpercussion votre
propre solution utilisant Winbind Samba est fastidieux si pas parfois pnible. Vous semblerait normal, puisque
certains fournisseurs de logiciels novateur serait tape haut avec une solution easier-to-use, et vous serait
droite.
Il existe quatre fournisseurs de logiciels commerciaux qui ont dvelopp des versions facile installer-et-
utilisation de ce qu'ai j'dmontr dans cet article. Ils fournissent les code et les outils de migration pour presque
toutes version populaires de Linux, UNIX et Macintoshes Apple, ainsi que prise en charge de gestion des
ordinateurs de Linux l'aide de la stratgie de groupe.
Les socits quatre sont Centrify , De mme logiciel , Quest Software et Symark . Tous les fournisseurs de quatre
fournissent des fonctionnalits similaires, notamment la gestion de stratgie de groupe, sur un large ventail de
distributions Linux. Logiciel Likewise a rcemment dont la source est en cours son implmentation, appele
mme ouvrir, bien que son composant de stratgie de groupe reste un produit commercial. De mme ouvrir est
disponible avec plusieurs distributions Linux principales. (Complet divulgation : pendant au cours de rdaction
cet article, ma socit, NetPro, a t acquis par Quest Software.)
Il judicieux de crer votre propre systme de l'authentification l'aide de Samba et Winbind lorsque
commerciales options sont disponibles ? Si justesse Intgration logiciel ne figure pas dans le budget, puis passer
l'itinraire open source avec Samba prsente l'avantage d'tre libre. Vous galement obtenir tout le code
source, qui peut tre un avantage intressant. Mais migration de Linux existant ordinateurs et leurs UIDs
existants est un problme trs thorny.
D'autre part, si vous souhaitez gagner du temps d'installation et l'implmentation, vous avez existants
machines Linux que ncessaires la migration, ou vous auriez plutt une personne appeler pour obtenir une
rponse faisant autorite votre question, puis extraction d'une des solutions commerciales sens. Et si vous
devez Gestion de stratgie de groupe, L'alternative commercial est votre seul choix.
Mais n'importe quel moyen vous accdez, intgration de l'authentification de Linux Active Directory rduit
l'effort pass grer plusieurs comptes d'utilisateur, amliore la scurit du systme et vous offre un stockage
d'identit unique pour grer et d'audit. Et ceux sont toutes raisons trs intressantes pour lui donner un essai.
Gil Kirkpatrick a conu ou dvelopp des dizaines de produits logiciels commerciaux russi dans sa carrire 30
ans et il est le fondateur de la confrence experts Directory (dsormais appels les experts Conference). Gil est
l'auteur de Active Directory Programming et est une collaboration frquemment Windows IT Pro et le TechNet
Magazine. Dans son rle actuel comme expert de rsidence NetPro (dsormais partie de Quest Software), Gil
consulte de scurit divers, identit et projets de marketing et parle au sminaires de technologie et les
confrences dans le monde entier.
2017 Microsoft