Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
openldap-samba-windows7 [Le 24/03/2012, 21:23] – 88.174.123.80 | openldap-samba-windows7 [Le 31/03/2012, 10:39] (Version actuelle) – 88.174.123.80 | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | ====== OPENLDAP + SAMBA + CLIENT WINDOWS 7 ====== | ||
+ | |||
+ | Bonjour, aprés avoir passé des nuits à se prendre la tête et quelque migraines, je veux en épargner quelques un. | ||
+ | |||
+ | Voici l' | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | Merci a: | ||
+ | * Flori@n de [[http:// | ||
+ | * senti de [[http:// | ||
+ | * Deajan le jeu de [[http:// | ||
+ | |||
+ | {{:: | ||
+ | |||
+ | ---- | ||
+ | |||
+ | {{: | ||
+ | |||
+ | |||
+ | ===== Installation de Openldap : ===== | ||
+ | |||
+ | Caracteristique: | ||
+ | * Nom du serveur: ec0.local | ||
+ | * Domaine: ec0 | ||
+ | |||
+ | |||
+ | |||
+ | < | ||
+ | apt-get install slapd ldap-utils | ||
+ | </ | ||
+ | Suppression de l’annuaire créer lors de l’installation : | ||
+ | |||
+ | Lorsque vous avez installé Openldap, l’installateur va créer par défaut une base, par souci de clarté nous allons la supprimé. | ||
+ | < | ||
+ | rm / | ||
+ | </ | ||
+ | Backup de la base par défaut : | ||
+ | < | ||
+ | tar -cvjf backup_ldap.tar.gz / | ||
+ | </ | ||
+ | < | ||
+ | tar -cvjf backup_ldap_config.tar.gz / | ||
+ | </ | ||
+ | Suppression de la base par défaut : | ||
+ | < | ||
+ | rm / | ||
+ | </ | ||
+ | Redémarrage du service LDAP : | ||
+ | < | ||
+ | / | ||
+ | </ | ||
+ | Configuration de LDAP : | ||
+ | |||
+ | Depuis les nouvelles versions LDAP nous avons dorénavant la possibilité d’intégrer la configuration de notre annuaire dans une base LDAP et non plus depuis un fichier de configuration. | ||
+ | |||
+ | Ce mode de configuration à un avantage certain. Nous pouvons dorénavant effectuer des modifications à chaud de la configuration. | ||
+ | |||
+ | Ce mode de fonctionnement trouve tout son intérêt dans un environnement professionnel. | ||
+ | |||
+ | Nous pouvons dorénavant modifier à chaud les schémas, le mot de passe Manager, les droits d’accès, la manière d’indexer son annuaire ldap, etc … | ||
+ | |||
+ | NB : Le backend cn=config ne sert que pour la partie configuration. | ||
+ | Ajout des schémas : | ||
+ | |||
+ | On va commencer par ajouter les schémas de base qui nous permettrons d’avoir un serveur LDAP fonctionnel. | ||
+ | < | ||
+ | ldapadd -Y EXTERNAL -H ldapi:/// -f / | ||
+ | </ | ||
+ | < | ||
+ | ldapadd -Y EXTERNAL -H ldapi:/// -f / | ||
+ | </ | ||
+ | < | ||
+ | ldapadd -Y EXTERNAL -H ldapi:/// -f / | ||
+ | </ | ||
+ | |||
+ | EN COUR DE REALISATION | ||
+ | |||
+ | Nous allons identifier un utilisateur interne à la base LDAP, il sera nommé Manager, nous allons donc de suite configurer un mot de passe, pour des raisons des sécurités nous allons devoir au préalable hasher le mot de passe, car sinon celui-ci apparaitra en clair dans la configuration. | ||
+ | |||
+ | Cryptage du mot de passe super user : | ||
+ | |||
+ | # l' | ||
+ | < | ||
+ | slappasswd -h {SSHA} | ||
+ | New password: MON_MOT_DE_PASSE | ||
+ | Re-enter new password: MON_MOT_DE_PASSE | ||
+ | {SSHA}XXXXXXXXXXXXXXXXX== | ||
+ | </ | ||
+ | Plus d’information : http:// | ||
+ | |||
+ | Création de notre template de configuration : | ||
+ | |||
+ | La création de notre configuration et la déclaration de notre base LDAP se font par le biais d’un fichier ldiff, comme pour une base LDAP traditionnelle. | ||
+ | |||
+ | Ci dessous mon template de base ldap : | ||
+ | < | ||
+ | mkdir / | ||
+ | </ | ||
+ | Nous allons stoker notre base ldap dans un dossier particulier, | ||
+ | < | ||
+ | mkdir / | ||
+ | |||
+ | chown -R openldap: | ||
+ | |||
+ | vi / | ||
+ | </ | ||
+ | |||
+ | #REMOVE COMMENT BEFORE IMPORT | ||
+ | |||
+ | < | ||
+ | dn: cn=config | ||
+ | changetype: modify | ||
+ | replace: olcLogLevel | ||
+ | |||
+ | #Modifie le niveau de logs | ||
+ | olcLogLevel: | ||
+ | |||
+ | dn: cn=config | ||
+ | changetype: modify | ||
+ | replace: olcIdleTimeout | ||
+ | |||
+ | #Modifie le timeout | ||
+ | olcIdleTimeout: | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | |||
+ | vi / | ||
+ | |||
+ | </ | ||
+ | |||
+ | #REMOVE COMMENT BEFORE IMPORT | ||
+ | |||
+ | < | ||
+ | # Load dynamic backend modules | ||
+ | dn: cn=module, | ||
+ | objectClass: | ||
+ | cn: module | ||
+ | olcModulepath: | ||
+ | olcModuleload: | ||
+ | </ | ||
+ | < | ||
+ | code> | ||
+ | vi / | ||
+ | </ | ||
+ | |||
+ | #REMOVE COMMENT BEFORE IMPORT | ||
+ | |||
+ | < | ||
+ | # Database settings | ||
+ | dn: olcDatabase=hdb, | ||
+ | objectClass: | ||
+ | objectClass: | ||
+ | #Type de base | ||
+ | olcDatabase: | ||
+ | # OU de la base ldap | ||
+ | olcSuffix: dc=ec0, | ||
+ | # Dossier de stockage de la base ldap | ||
+ | olcDbDirectory: | ||
+ | # Definition du compte Manager interne | ||
+ | olcRootDN: cn=admin, | ||
+ | # Definition du mot de passe associe au compte Manager | ||
+ | olcRootPW: {SSHA}XXXXXXXXXXXXX | ||
+ | # Nombre de resultat affiche lors d'une recherche | ||
+ | olcSizeLimit: | ||
+ | olcDbConfig: | ||
+ | olcDbConfig: | ||
+ | olcDbConfig: | ||
+ | olcDbConfig: | ||
+ | #Gestion des Index | ||
+ | olcDbIndex: objectClass eq | ||
+ | olcLastMod: TRUE | ||
+ | olcDbCheckpoint: | ||
+ | # ACL sur la base LDAP | ||
+ | olcAccess: to attrs=userPassword by dn=" | ||
+ | olcAccess: to attrs=shadowLastChange by self write by * read | ||
+ | olcAccess: to dn.base="" | ||
+ | olcAccess: to * by dn=" | ||
+ | </ | ||
+ | |||
+ | Import de la configuration : | ||
+ | |||
+ | < | ||
+ | ldapadd -Y EXTERNAL -H ldapi:/// -f / | ||
+ | ldapadd -Y EXTERNAL -H ldapi:/// -f / | ||
+ | ldapadd -Y EXTERNAL -H ldapi:/// -f / | ||
+ | </ | ||
+ | Test de la Configuration : | ||
+ | |||
+ | < | ||
+ | ldapsearch -LLL -Y EXTERNAL -H ldapi:/// -b " | ||
+ | </ | ||
+ | ... Retourne l' | ||
+ | |||
+ | < | ||
+ | ldapsearch -LLL -Y EXTERNAL -H ldapi:/// -b " | ||
+ | ... Retourne une base vide, c'est normal ... | ||
+ | </ | ||
+ | |||
+ | |||
+ | ---- | ||
+ | |||
+ | ===== Modification du registre windows: ===== | ||
+ | |||
+ | Voila il ne reste plus qu'a se connecter avec un pc Windows, mais un problème subsiste et la connexion est impossible: | ||
+ | |||
+ | Eh bien les developpeurs de Samba ont eu leur petite idée. Il faut deux ingrédients: | ||
+ | |||
+ | * Faire une petite modification du registre de Windows Seven. | ||
+ | * Disposer au minimum de Samba 3.3.7 ou de Samba 3.4.0. | ||
+ | |||
+ | |||
+ | Pour ce qui est de la modification registre, rendez-vous dans la clef suivante | ||
+ | < | ||
+ | HKLM\System\CurrentControlSet\Services\LanmanWorkstation\Parameters | ||
+ | </ | ||
+ | et ajoutez les valeurs suivantes: | ||
+ | < | ||
+ | DWORD DomainCompatibilityMode = 1 | ||
+ | DWORD DNSNameResolutionRequired = 0 | ||
+ | </ |