Page 5 of 5

Re: Serveur OpenLDAP Nas4Free

Posted: 04 Mar 2015 20:36
by velivole18
Bonsoir,

Je suis arrivé à l'étape de connexion de ppda.
Il ne veut pas du mot de passe.
J'ai également eu beaucoup de difficulté à initialiser la base, il ne voulait pas du mot de passe.
En fait, je lance openldap dans ma fenêtre initiale, puis dans une autre console j'initialise la base --> pb mot de passe (comme tu l'expliques)
J'arrête le serveur ldap. Je me mets dans ma seconde nouvelle console pour lancer le serveur ldap.
Je reviens dans la console initiale, là pas de pb, je peux initialiser la base et le mdp est bien pris.
Bon ...
Ensuite j'essaie de me connecter avec ppda : pb de mdp. (quelque soit la console)
Je regarde le codage dans la base du mdp avec un ldapsearch, le codage est différent ... peut-être normal.
Je confirme aussi que je n'ai pas accès aux commandes "slappasswd" et "ldapsearch" si je ne mets pas le chemin complet.
Pourtant je pars d'un nouveau serveur Nas4Free Embedded 972 et j'applique les commandes du tuto.
Le groupe et le user ldap sont bien existant et le service ldap est bien lancé.
Autre chose, l'administrateur de la base ldap est déclaré en tant que rootpw dans les scripts et dans le service ldap du webgui, mais l'initialisation de la base se fait avec "manager", est-ce logique ?
je continue à chercher.

Edit : je retrouve le même pb qu'autrefois : 54f76384 <= bdb_dn2id: get failed: DB_NOTFOUND: No matching key/data pair found (-30989)
et voici ma trace de l'erreur en retour de la connexion dans ma console :

Code: Select all

nas4free-labo: openldap # ssh 192.168.0.61 -l ppda
ppda@192.168.0.61's password: 
Permission denied, please try again.
ppda@192.168.0.61's password: 

nas4free-labo: openldap # 
Cordialement.

Re: Serveur OpenLDAP Nas4Free

Posted: 04 Mar 2015 21:40
by laster13
Bonsoir,

Est ce que tu peux me donner ton slapd.conf et ldap.conf qui sont dans le dossier openldap, et le fichier ldpa.conf qui est dans /usr/local/etc/

Peux tu également me générer un mot de passe avec slapasswd et me le donner en clair pour vérifier que j ai la même chose de mon cote

Est ce que tu peux essayer de te logguer en tapant juste ppda et non ssh....

Merci

Re: Serveur OpenLDAP Nas4Free

Posted: 06 Mar 2015 12:29
by velivole18
Bonjour,

Maintenant ça marche.
Il faut effectivement que les suffixes users et password soient les mêmes dans l"interface webgui !!!

Merci Laster13.
Je continue le tuto.

Cordialement.

Re: Serveur OpenLDAP Nas4Free

Posted: 06 Mar 2015 17:27
by velivole18
Bonsoir,

Quand j’éteins mon Nas4Free et que je le relance, "/dev/zvol/pool1/openldap" disparait ?
En fait, c'est "/dev/zvol" complet qui disparait.
Quand tu fais ton "zfs create -V 2G pool1/openldap", à quel endroit se crée chez toi le pool1 ?
Parce que moi il se crée dans /dev/zvol.

Cordialement.

Re: Serveur OpenLDAP Nas4Free

Posted: 06 Mar 2015 17:40
by laster13
Bonsoir,

Je tape la même commande que toi à la racine de nas4free à savoir:
zfs create -V 2G pool1/openldap et le pool se crée également comme toi dans "/dev/zvol/pool1/openldap"
sauf qu il faut absolument avant le premier démarrage rentrer les lignes de commande dans script de commande (les 4 lignes)

mkdir /mnt/opendlap
mount /dev/zvol/pool1/opendlap /mnt/opendlap
mount_unionfs -o w /mnt/openldap/usr/ /usr/
mount_unionfs -o w /mnt/openldap/var/ /var/

dans cet ordre ;)

Re: Serveur OpenLDAP Nas4Free

Posted: 07 Mar 2015 14:10
by velivole18
Bonjour,

Je peine, je peine ... Mais j'avance petit à petit.
J'ai 2 remarques à inclure dans le tuto viewtopic.php?f=35&t=7926&start=25#p49771

1 - Lorsque l'on renseigne les données pour les clés, c'est à dire le country, l'organisation ....
pour CN (Common Name) il faut absolument renseigner le nom de la machine (physique ou virtuelle) appelé en terme technique le "server FQDN".
Dans mon cas, c'est nas4free-labo. On peut trouver cela dans le /etc/hosts. Si on met autre chose, on a constamment le message à chaque connexion : "TLS: hostname does not match CN in peer certificate" et les commande affublées de l'option -ZZ demandent alors un seul -Z pour passer outre, mais c'est vraiment pas joli !

2 - pour pouvoir se connecter avec un user déclaré dans openldap, il faut sur le webgui respecter :
a) pour l'adresse du serveur, mettre le nom qui apparaît dans "/etc/hosts" et non l'adresse IP du serveur, sinon il y a toujours l'erreur "Permission denied, please try again."
b) ne pas oublier dans les attributs de rajouter la ligne "ssl start_tls", sinon, ça ne marche pas.

Voilà, je continue.

Edit : la ligne suivante demande à être ajoutée dans le fichier "/etc/rc.conf" : slapd_enable="YES" pour autoriser le start de slapd au re-démarrage de Nas4Free. Cependant, le fichier "rc.conf" est remis à jour à chaque re-démarrage de Nas4Free. Comment régler ce point là ?

A+.
Cordialement.

Re: Serveur OpenLDAP Nas4Free

Posted: 07 Mar 2015 15:20
by velivole18
Bonjour,

J'ai essayé de rajouter dans les commandes en postinit la commande suivante :
echo "slapd_enable="YES" > /etc/rc.conf

mais sans succès pour faire démarrer slapd au re-démarrage de Nas4Free.

Après vérification, la commande est bien rajoutée dans le fichier rc.conf, mais slapd ne se lance pas.
Si j'essaie de le lancer à la main avec la commande : /usr/local/etc/rc.d/slapd start
j'ai le message d'erreur suivant : /usr/local/etc/rc.d/slapd: WARNING: failed to start slapd

Je continue à chercher.
A+

Cordialement.

Re: Serveur OpenLDAP Nas4Free

Posted: 07 Mar 2015 16:06
by laster13
Bonjour,

C'est parce que l'utilisateur ldap et le groupe n sont pas crées dans nas4free en 389 ;)

Il faut compléter le rc.conf grâce a l interface de nas4free et là ca ne bouge pas
Système|Avancé|rc.conf.

Re: Serveur OpenLDAP Nas4Free

Posted: 07 Mar 2015 16:34
by laster13
Bonjour,

Je n'avais pas vu ton post au dessus et effectivement j'ai été confronté au même soucis avec le même message que ce dont tu parles
velivole18 wrote:Lorsque l'on renseigne les données pour les clés, c'est à dire le country, l'organisation ....
pour CN (Common Name) il faut absolument renseigner le nom de la machine (physique ou virtuelle) appelé en terme technique le "server FQDN".
Dans mon cas, c'est nas4free-labo. On peut trouver cela dans le /etc/hosts. Si on met autre chose, on a constamment le message à chaque connexion : "TLS: hostname does not match CN in peer certificate" et les commande affublées de l'option -ZZ demandent alors un seul -Z pour passer outre, mais c'est vraiment pas joli !
Merci pour l'info, en ce qui me concerne j'avais mis l'ip de nas4free mais j'ai toujours ce même message
TLS: hostname does not match CN in peer certificate
Je vais tester comme tu dis ;)
velivole18 wrote:Edit : la ligne suivante demande à être ajoutée dans le fichier "/etc/rc.conf" : slapd_enable="YES" pour autoriser le start de slapd au re-démarrage de Nas4Free. Cependant, le fichier "rc.conf" est remis à jour à chaque re-démarrage de Nas4Free. Comment régler ce point là ?
Il faut compléter le rc.conf grâce a l interface de nas4free et là ca ne bouge pas
Système|Avancé|rc.conf.

Par ailleurs tu m'as interpelé l'autre jour lorsque tu me disais que lorsqu'on mettait à jour le systemme il faudrait tout recommencer. Dans mon esprit la partition UFS etant crée sur le pool, je pensais qu'elle ne bougerait pas sauf que je n'avais pas pensé à cette commande qui crée le pool dans "/dev/zvol/pool1/opendlap".

Du coup j'ai verifié, j'ai d'abord fait une sauvegarde de nas4free, ensuite j'ai reinstallé nas4free et reinjecté la sauvegarde précedente. Cela fonctionne parfaitement ... ouf j ai eu un doute l'espace d'un moment :lol:
2 - pour pouvoir se connecter avec un user déclaré dans openldap, il faut sur le webgui respecter :
a) pour l'adresse du serveur, mettre le nom qui apparaît dans "/etc/hosts" et non l'adresse IP du serveur, sinon il y a toujours l'erreur "Permission denied, please try again."
En ce qui me concerne , je mets l'adresse ip dans le client ldap de nas4free dans "URI" et j'ai pas cette erreur dont tu parles. Est ce que tu peux me donner plus de précisions ?

Re: Serveur OpenLDAP Nas4Free

Posted: 07 Mar 2015 18:09
by velivole18
Bonjour,

Si, si, le user et le groupe ldap existent bien en 389 !
Ils sont aussi dans /etc/passwd et dans /etc/group.
Mais via la ligne de commande que j'exécute sur console avec "sh -x" pour voir ce qui se passe, il ne veut effectivement pas lancer slapd avec le user ldap et le groupe ldap.
Bon, j'ai trouvé une solution qui marche, mais en lançant slapd en root.
Je crée dans le répertoire "/usr/local/etc/openldap" un fichier "rc.conf" comme suit :

Code: Select all

slapd_owner="DEFAULT"
slapd_enable="YES"
slapd_flags='-h "ldapi:///var/run/openldap/ldapi/ ldap://nas4free-labo.famille/"'
slapd_sockets="/var/run/openldap/ldapi"
puis je mets dans les commandes en postinit, juste avant le lancement de slapd la commande suivante qui rajoute les lignes de /usr/local/etc/openldap/rc.conf" au fichier "/etc/rc.conf" :

Code: Select all

cat /usr/local/etc/openldap/rc.conf >> /etc/rc.conf
et effectivement au lancement de Nas4free, slapd se lance mais sous root.
Bon, je continue.
A+

Edit : je viens de lire ton dernier post.
Effectivement, autant mettre les lignes de rc.conf dans le webgui, c'est peut-être mieux.
Il manque par contre au tout début du tuto la création de pool1.
J'ai pris un peu de temps pour comprendre les commandes zpool et zfs. C'est aussi pour cela que je traîne un peu.
Dans le tuto, on part du principe que l'on dispose d'un pool nommé pool1.
Je comprends maintenant le fonctionnement, mais j'ai peiné au début car ces commandes sont vraiment puissantes et désorientantes.
On crée un pool de type zfs normal nommé pool1, puis on crée dans pool1 un "sous-pool" qui s'appelle openldap, qui se place dans /dev/zvol, même si à l'origine pool1 est ailleurs, et dans ce pool openldap on peut y installer un fs UFS. C'est trop fort.
Du fait que pool1 est bien sur un vrai disque (du style /dev/ada1 par ex.), au redémarrage de Nas4Free, rien n'est perdu, à condition de faire les montages qui vont bien.
Pour l'adresse du serveur dans le webgui, il faut que celle-ci soit identique à celle inscrite dans lapd.conf et aussi à celle de rc.conf.
Par contre, pourquoi mon serveur openldap ne veut pas se lancer avec le user ldap et le groupe ldap, je ne sais pas.
Je continue à chercher.
A+

Cordialement.

Re: Serveur OpenLDAP Nas4Free

Posted: 07 Mar 2015 18:19
by velivole18
Bonjour,

Pardon pour le dernier post, mais je n'ai pas été très clair au sujet de l'adresse du serveur dans le webgui.
En fait lorsque l'on fait les commandes de mise en œuvre des clés SSL, à savoir :

Code: Select all

openssl genrsa -out cert.key 1024
openssl req -new -key cert.key -out cert.csr
openssl x509 -req -in cert.csr -days 365 -signkey cert.key -out cert.crt
le fichier "/etc/hosts" est mis à jour avec les alias de l'adresse IP su serveur openldap en utilisant le nom de la machine et le nom de l'organisation.
Ensuite, il faut reprendre le nom de l'alias construit dans le fichier "/etc/host" par ces commandes et le mettre partout où l'info apparaît (ldap.conf, rc.conf et webgui ldap).
Adresse IP ou alias, je pense que le principal est que tout soit en accord.

Je passe à l'installation de phpldapadmin.
A+.

Cordialement.

Re: Serveur OpenLDAP Nas4Free

Posted: 07 Mar 2015 18:25
by laster13
Bonsoir... déjà le soir :shock:

En fait il faut creer le user ldap dans l interface de nas4free et non en ligne de commande ;)

Re: Serveur OpenLDAP Nas4Free

Posted: 07 Mar 2015 19:43
by velivole18
Bonsoir,

Oui, oui, c'est bien ce que j'ai fait. Le user ldap et le groupe ldap ont bien été créés dans le webgui ... Bon, je sais pas.
J'arrive à me connecter à phpldapadmin, mais j'ai l'erreur suivante :

impossible de démarrer TLS. (My LDAP Server)
Erreur: Impossible de démarrer TLS. Veuillez vérifier la configuration de votre serveur LDAP.

Je vais donc ré-vérifier les données des fichiers de clés.

A+

Cordialement.

Re: Serveur OpenLDAP Nas4Free

Posted: 07 Mar 2015 20:07
by laster13
Bonsoir,

Vérifie le fichier config.php. Il faut décommenter les lignes concernées

$servers->setValue('server','host','ldap://ldap1.loga.us'); <---------mets ton adresse ldap ici
$servers->setValue('server','port',389);
$servers->setValue('login','auth_type','session');
$servers->setValue('server','tls',true); <------------ tu mets true à la place de false

Etonnant pour le user, j'avais exactement la même erreur que toi et c'est en créant un user et group "ldap" avec respectivement uid et gid 389, que j'ai resolu le probleme.

Re: Serveur OpenLDAP Nas4Free

Posted: 07 Mar 2015 21:09
by velivole18
Bonsoir,

J'avais bien adapté les lignes de config.php comme cela, comme dit dans ton tuto.
Mais j'ai trouvé et c'est encore cette foutue adresse de serveur.
J'ai mis dans le fichier config.php "nas4free-labo.famille" comme adresse à la place de "192.168.0.61" et tout fonctionne !
Je vais donc continuer au post suivant.

La commande "/usr/local/bin/smbpasswd -w openldap" me renvoit "Segmentation fault" :cry:
et la simple commande "smbpasswd -w openldap" m'affiche l'aide pour dire qu'il y a une erreur de syntaxe.
Et bien sûr sans le mdp ldap pour samba, la commande "net getlocalsid" ne fonctionne pas.

Je cherche et te tiens au courant.

Cordialement.

Re: Serveur OpenLDAP Nas4Free

Posted: 07 Mar 2015 22:29
by laster13
Bonsoir

Je me souviens, moi aussi j avais cette erreur, il faut l écrire toi même sans faire de copier coller...va comprendre :roll:

Re: Serveur OpenLDAP Nas4Free

Posted: 14 Mar 2015 21:24
by laster13
Bonsoir velivole18,

Nous ne sommes pas nombreux sur ce fil de discussion :( et c'est bien dommage car la finalité de notre projet touche au but et je pense qu'un peu plus d'explications pourraient peu être aider ceux qui sont encore dans le flou.

Un contrôleur de domaine samba PDC qui s'appuie sur une authentification centralisée LDAP. Tout est là.

-Authentifier les utilisateurs d'un domaine, qu'ils se connectent sur un poste client Windows (XP ou Seven), ou Linux, de manière centralisée.
-Avoir une base de données utilisateurs unique, utilisant un protocole ouvert afin de permettre à des applications tierces d'y authentifier ses utilisateurs.
-Fournir un ou plusieurs serveur(s) d'impression centralisé(s).

Plus clairement encore avec un exemple, une personne qui souhaiterait créer un parc de plusieurs ordi (windows ou linux) et qui souhaiterait disposer d'une authentification centralisée dans la base LDAP. Chaque utilisateur pourrait se loguer sur un poste client avec son dossier propre de données...

genre comme ça!!
Image

L'utilisateur "pierre" a ouvert sa session windows avec ses identifiants stokés dans la base de donnée LDAP. De la même manière s'il souhaite se connecter sur une machine ubuntu, il utilisera les mêmes identifiants et aura acces au même dossier correspondant à ses données personnelles.

Voilà, j'ai pour l'instant finalisé le projet pour des machines Windows, autrement dit, il ne me reste plus qu'à tester sur des machine linux et je pense qu'on sera arrivé à terme de notre projet de départ à moins que tu y vois d'autres ouvertures auxquelles je n'ai pas pensé :roll:

Je te poste demain la méthode pour que tu puisses la tester ;)

Re: Serveur OpenLDAP Nas4Free

Posted: 15 Mar 2015 00:23
by velivole18
Bonsoir Laster13,

Je suis entièrement d'accord sur les avantages que procure le Ldap.
C'est bien pour cela que j'avais évoqué mon intérêt pour ce sujet.
Tu as très bien décrit l'utilité d'un serveur OpenLdap.
Sachant qu'en plus, il est possible en fonction de la richesse des schémas sur lesquels s'appuie OpenLdap de gérer beaucoup plus de choses.
C'est ce qui se fait en entreprise (données de messagerie, d'organisation d'entreprise, ...), même si on trouve de plus en plus un windows server Microsoft à la place aujourd'hui. Cependant, on y gère maintenant tellement de choses en entreprise que l'on peut se demander si cela reste un seulement annuaire ...
En tout cas, je voyais un intérêt à coller OpenLdap avec Nas4Free tout simplement pour les situations (la majorité des cas) où nous ne possédons qu'une seule machine physique faisant office de serveur à la maison. En entreprise, OpenLdap à sa machine propre. Chez nous, bien souvent, nous n'avons qu'un seule PC sur lequel nous installons notre Nas4Free bien aimé. C'est donc seulement ce PC qui est en position centrale, avec un ou plusieurs clients. Donc mettre OpenLdap sur la machine Nas4Free était pour moi une évidence. Lorsque l'on a la possibilité d'avoir plusieurs serveurs, on peut envisager les choses autrement. Je pense particulièrement à un raspberry Pi avec une Debian dessus et OpenLdap par exemple.
En entreprise, le serveur Ldap est tellement vital qu'il est en général dupliqué. Pour les grosses structures, il existe plusieurs niveaux de Ldap et les Ldap de niveau inférieur se nourrissent des >Ldap de niveau supérieur, en fonction de l'organisation de l'entreprise. C'est la raison pour laquelle il existe beaucoup de sujet sur internet sur la réplication totale ou partielle entre Ldap. On comprend bioen que les serveurs Ldap reflètent rapidement l'organisation de l'entreprise. Cela en fait donc un élément vital.

Le plus fort que tu ais réussi à faire, c'est de pouvoir donner accès aux PC windows. On m'avait toujours dit que OpenLdap ne permettait pas de gérer des machines Windows, seulement des machines Unix/Linux. Voilà donc qui dément cette affirmation (quoique avec OpenLdap seul sans samba, peut-être cela reste-t-il vrai ???).

Là où je ne suis plus d'accord avec toi, c'est lorsque tu parles de notre projet, sachant que c'est bien toi qui a fait tout le boulot.
Je tiens à te rendre hommage, d'autant plus que comme nous l'avons vu ensemble, il est difficile de trouver quelques informations sur le sujet avec Nas4Free.

Je te promets de continuer à t'aider en testant l'installation complète. Pour l'instant, depuis la fin de mes congés, je n'ai pas trouvé beaucoup de temps, mais je ne lâche pas le morceau. Je me suis arrêter sur la commande "/usr/local/bin/smbpasswd" qui ne fonctionne pas. Sans doute vais-je refaire une machine virtuelle de zéro et reprendre la manip, parce qu'à force de bidouiller, je ne suis plus sûre de mon environnement.
J'espère récupérer bientôt de "vieux" serveurs bi-xénon. Je me régale à l'idée d'y installer Nas4Free dessus avec OpenLdap.
OK, je m'y recolle un peu demain après-midi et te tiens au courant.

Grand merci.

Cordialement.

Re: Serveur OpenLDAP Nas4Free

Posted: 15 Mar 2015 08:17
by ernie
En tout cas merci beaucoup.
Etant novice de chez novice, mais fortement intéressé par open LDAP, est ce que le tuto expliquera comment créer les schémas et ce qui faut mettre exactement. Un tuto pour les nuls quoi :)

Un grand merci à vous 2

Re: Serveur OpenLDAP Nas4Free

Posted: 15 Mar 2015 18:20
by laster13
Bonjour,
ernie wrote:est ce que le tuto expliquera comment créer les schémas et ce qui faut mettre exactement
Oui on tachera de faire un tuto le plus simple possible. Concernant les shémas, il n'y aura rien à faire, ce sont les smbldap-tools qui s'en chargent. Ce sont eux qui permettent le dialogue entre samba et ldap et c'est encore grâce à eux qu'on va gérer la base ldap. Cette gestion est ultra simple et ludique ;)

Alors concernant l'identification et l'ouverture de sessions Windows avec des identifiants stockés dans la base LDAP, voici comment j'ai procédé.

Au préalable, quelques conseils au niveau des differentes étapes d'installation. Tout d'abord, je désactive CIFS/SMB et le client LDAP dans l'interface Nas4free.

- J'installe ensuite openldap, phpldapadmin sans ajouter quoique ce soit dans la base LDAP, ce sont les smbldap tools qui s'en chargeront, donc on oublie le fichier base.ldif.

- Je lance le serveur avec la commande "/usr/local/libexec/slapd -d -1", j'active ensuite le client LDAP dans Nas4free et je tape ensuite

Code: Select all

smbpasswd -w mot_de_passe
C'est le mot de passe du rootpw que l'on a rentré dans le fichier slapd.conf.

- J'installe les smbldap-tools comme indiquer plus haut. Je tape "net getlocalsid" pour récupérer le SID qui va me servir pour modifier les 2 fichiers suivants: smbldap.conf et smbldap_bind.conf qui se trouvent "/usr/local/etc/smbldap-tools".

smbldap.conf (voici le mien)

Code: Select all

# $Id: smbldap.conf 139 2012-08-07 11:11:37Z fumiyas $
#
# smbldap-tools.conf : Q & D configuration file for smbldap-tools

#  This code was developped by IDEALX (http://IDEALX.org/) and
#  contributors (their names can be found in the CONTRIBUTORS file).
#
#                 Copyright (C) 2001-2002 IDEALX
#
#  This program is free software; you can redistribute it and/or
#  modify it under the terms of the GNU General Public License
#  as published by the Free Software Foundation; either version 2
#  of the License, or (at your option) any later version.
#
#  This program is distributed in the hope that it will be useful,
#  but WITHOUT ANY WARRANTY; without even the implied warranty of
#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#  GNU General Public License for more details.
#
#  You should have received a copy of the GNU General Public License
#  along with this program; if not, write to the Free Software
#  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
#  USA.

#  Purpose :
#       . be the configuration file for all smbldap-tools scripts

##############################################################################
#
# General Configuration
#
##############################################################################

# Put your own SID. To obtain this number do: "net getlocalsid".
# If not defined, parameter is taking from "net getlocalsid" return
SID="S-1-5-21-1386905757-1073149043-2289761240"

# Domain name the Samba server is in charged.
# If not defined, parameter is taking from smb.conf configuration file
# Ex: sambaDomain="IDEALX-NT"
sambaDomain="YOHANN"

##############################################################################
#
# LDAP Configuration
#
##############################################################################

# Notes: to use to dual ldap servers backend for Samba, you must patch
# Samba with the dual-head patch from IDEALX. If not using this patch
# just use the same server for slaveLDAP and masterLDAP.
# Those two servers declarations can also be used when you have
# . one master LDAP server where all writing operations must be done
# . one slave LDAP server where all reading operations must be done
#   (typically a replication directory)

# Slave LDAP server URI
# Ex: slaveLDAP=ldap://slave.ldap.example.com/
# If not defined, parameter is set to "ldap://127.0.0.1/"
slaveLDAP="ldap://192.168.0.50/"

# Master LDAP server URI: needed for write operations
# Ex: masterLDAP=ldap://master.ldap.example.com/
# If not defined, parameter is set to "ldap://127.0.0.1/"
masterLDAP="ldap://192.168.0.50/"

# Use TLS for LDAP
# If set to 1, this option will use start_tls for connection
# (you must also used the LDAP URI "ldap://...", not "ldaps://...")
# If not defined, parameter is set to "0"
ldapTLS="0"

# How to verify the server's certificate (none, optional or require)
# see "man Net::LDAP" in start_tls section for more details
verify="require"

# CA certificate
# see "man Net::LDAP" in start_tls section for more details
cafile="/etc/smbldap-tools/ca.pem"

# certificate to use to connect to the ldap server
# see "man Net::LDAP" in start_tls section for more details
clientcert="/etc/smbldap-tools/smbldap-tools.example.com.pem"

# key certificate to use to connect to the ldap server
# see "man Net::LDAP" in start_tls section for more details
clientkey="/etc/smbldap-tools/smbldap-tools.example.com.key"

# LDAP Suffix
# Ex: suffix=dc=IDEALX,dc=ORG
suffix="dc=julp,dc=com"

# Where are stored Users
# Ex: usersdn="ou=Users,dc=IDEALX,dc=ORG"
# Warning: if 'suffix' is not set here, you must set the full dn for usersdn
usersdn="ou=Utilisateurs,${suffix}"

# Where are stored Computers
# Ex: computersdn="ou=Computers,dc=IDEALX,dc=ORG"
# Warning: if 'suffix' is not set here, you must set the full dn for computersdn
computersdn="ou=Computers,${suffix}"

# Where are stored Groups
# Ex: groupsdn="ou=Groups,dc=IDEALX,dc=ORG"
# Warning: if 'suffix' is not set here, you must set the full dn for groupsdn
groupsdn="ou=Groupes,${suffix}"

# Where are stored Idmap entries (used if samba is a domain member server)
# Ex: idmapdn="ou=Idmap,dc=IDEALX,dc=ORG"
# Warning: if 'suffix' is not set here, you must set the full dn for idmapdn
idmapdn="ou=Idmap,${suffix}"

# Where to store next uidNumber and gidNumber available for new users and groups
# If not defined, entries are stored in sambaDomainName object.
# Ex: sambaUnixIdPooldn="sambaDomainName=${sambaDomain},${suffix}"
# Ex: sambaUnixIdPooldn="cn=NextFreeUnixId,${suffix}"
sambaUnixIdPooldn="sambaDomainName=${sambaDomain},${suffix}"

# Default scope Used
scope="sub"

# Unix password hash scheme (CRYPT, MD5, SMD5, SSHA, SHA, CLEARTEXT)
# If set to "exop", use LDAPv3 Password Modify (RFC 3062) extended operation.
password_hash="SSHA"

# if password_hash is set to CRYPT, you may set a salt format.
# default is "%s", but many systems will generate MD5 hashed
# passwords if you use "$1$%.8s". This parameter is optional!
password_crypt_salt_format="%s"

##############################################################################
# 
# Unix Accounts Configuration
# 
##############################################################################

# Login defs
# Default Login Shell
# Ex: userLoginShell="/bin/bash"
userLoginShell="/bin/bash"

# Home directory
# Ex: userHome="/home/%U"
userHome="/home/%U"

# Default mode used for user homeDirectory
userHomeDirectoryMode="700"

# Gecos
userGecos="System User"

# Default User (POSIX and Samba) GID
defaultUserGid="513"

# Default Computer (Samba) GID
defaultComputerGid="515"

# Skel dir
skeletonDir="/etc/skel"

# Treat shadowAccount object or not
shadowAccount="1"

# Default password validation time (time in days) Comment the next line if
# you don't want password to be enable for defaultMaxPasswordAge days (be
# careful to the sambaPwdMustChange attribute's value)
defaultMaxPasswordAge="45"

##############################################################################
#
# SAMBA Configuration
#
##############################################################################

# The UNC path to home drives location (%U username substitution)
# Just set it to a null string if you want to use the smb.conf 'logon home'
# directive and/or disable roaming profiles
# Ex: userSmbHome="\\PDC-SMB3\%U"
userSmbHome="\\192.168.0.50\%U"

# The UNC path to profiles locations (%U username substitution)
# Just set it to a null string if you want to use the smb.conf 'logon path'
# directive and/or disable roaming profiles
# Ex: userProfile="\\PDC-SMB3\profiles\%U"
userProfile="\\192.168.0.50\profiles\%U"

# The default Home Drive Letter mapping
# (will be automatically mapped at logon time if home directory exist)
# Ex: userHomeDrive="H:"
userHomeDrive="H:"

# The default user netlogon script name (%U username substitution)
# if not used, will be automatically username.cmd
# make sure script file is edited under dos
# Ex: userScript="startup.cmd" # make sure script file is edited under dos
userScript="logon.bat"

# Domain appended to the users "mail"-attribute
# when smbldap-useradd -M is used
# Ex: mailDomain="idealx.com"
mailDomain="example.com"

##############################################################################
#
# SMBLDAP-TOOLS Configuration (default are ok for a RedHat)
#
##############################################################################

# Allows not to use smbpasswd (if with_smbpasswd="0" in smbldap.conf) but
# prefer Crypt::SmbHash library
with_smbpasswd="0"
smbpasswd="/usr/local/bin/smbpasswd"

# Allows not to use slappasswd (if with_slappasswd="0" in smbldap.conf)
# but prefer Crypt:: libraries
with_slappasswd="0"
slappasswd="/usr/local/sbin/slappasswd"

# comment out the following line to get rid of the default banner
# no_banner="1"

"YOHANN" est le nom que j'ai choisi pour mon domaine, "Groupe de travail (workgroup Windows)", c'est aussi le prénom de mon fils :mrgreen:

smbldap_bind.conf

Code: Select all

# $Id: smbldap_bind.conf 35 2011-02-23 09:07:36Z fumiyas $
#
############################
# Credential Configuration #
############################
# Notes: you can specify two differents configuration if you use a
# master ldap for writing access and a slave ldap server for reading access
# By default, we will use the same DN (so it will work for standard Samba
# release)
slaveDN="cn=manager,dc=julp,dc=com"
slavePw="mot_de_passe_en_clair"
masterDN="cn=manager,dc=julp,dc=com"
masterPw="mot_de_passe_en_clair"
Il faudra envisager ensuite de faire un chmod 600 par rapport à ce mot de passe en claire. Puis on installe les smbldap tools

Code: Select all

/usr/local/sbin/smbldap-populate
Voilà, jusque là il s'agissait de remettre un peu d'ordre dans les différentes phases d'installation.

Je vais maintenant intégrer dans les paramètres auxilliaire de CIFS/SMB les lignes de commandes suivantes et essayer de les expliquer sommairement.

Code: Select all

wins support = yes
domain logons = yes
os level = 64
logon path = \192.168.0.21\profile\%U
logon drive = P:
logon home = \192.168.0.21\%U
logon script = %U.bat

[netlogon]
path = /usr/local/lib/samba/netlogon
locking = No

[homes]
comment = Home Directory
read only = No
browseable = No
valid users = %S

[profile]
path = /usr/local/lib/samba/profile
browseable = No
writeable = Yes
create mask = 0777
directory mask = 0777
Explications:

Il y a 6 directives à ajouter au fichier de configuration dans la section [global] pour configurer samba en controleur de domaine.
Wins support
domain master
local master
preferred master
os level
domain logons

La plupart d'entre elles figurent déjà dans le smb.conf de samba.

-logon path : Indique l'emplacement des répertoires personnels des utilisateurs. Ceux-ci sont stockés sur un partage dédié afin de pouvoir activer des options spécifiques.
-logon script : Indique le script batch (non interactif) à exécuter à chaque ouverture de session sur la machine Windows cliente. En l'occurrence, il s'agit de /var/lib/samba/netlogon/scripts/logon.bat. Le script doit être au format DOS (les lignes étant séparées par un retour chariot et un saut de ligne.

On poursuit....

Il faut y créer des partages spécifiques, "homes" qui contiendra les répertoires spécifiques des utilisateurs, "netlogon" qui contiendra les scripts de connexion exécutés par les machines clientes à chaque connexion d'un utilisateur, "profiles" qui permet de stocker de manière centralisée la configuration du bureau etc ... de chaque utilisateur du domaine.

Code: Select all

mkdir /usr/local/lib/samba/netlogon
mkdir /usr/local/lib/samba/profile
mkdir /usr/local/lib/samba/home
Exemple de fichier logon.bat à placer dans le dossier "netlogon"
echo Setting Current Time...
net time \\hydra /set /yes
echo Mapping Network Drives to Samba Server Hydra...
net use i: \\192.168.0.21\films
Je n'ai pour l'instant pas approfondi ces fichier "logon.bat" mais il y a plein d'exemples sur le net les concernant... On verra plus tard ;)

Voilà pour la configuration, il suffit de taper la commande testparm pour vérifier que le fichier smb.conf ne contient pas d'erreur

Code: Select all

nas4free: ~ # testparm
Load smb config files from /var/etc/smb.conf
WARNING: The "idmap uid" option is deprecated
WARNING: The "idmap gid" option is deprecated
Processing section "[netlogon]"
Processing section "[homes]"
Processing section "[profile]"
Processing section "[films]"
Loaded services file OK.
Server role: ROLE_DOMAIN_PDC
Press enter to see a dump of your service definitions

[global]
        dos charset = CP437
        workgroup = YOHANN
        server string = NAS4Free Server
        passdb backend = ldapsam:"ldap://192.168.0.50"
        guest account = ftp
        syslog only = Yes
        max log size = 100
        max protocol = SMB2
        max xmit = 65535
        time server = Yes
        deadtime = 15
        socket options = TCP_NODELAY SO_SNDBUF=64240 SO_RCVBUF=64240
        load printers = No
        printcap name = /dev/null
        disable spoolss = Yes
        logon script = %U.bat
        logon path = \192.168.0.21\profile\%U
        logon drive = P:
        logon home = \192.168.0.21\%U
        domain logons = Yes
        os level = 64
        preferred master = Yes
        domain master = Yes
        dns proxy = No
        wins support = Yes
        ldap admin dn = cn=manager,dc=julp,dc=com
        ldap group suffix = ou=Groupes
        ldap machine suffix = ou=Computers
        ldap passwd sync = yes
        ldap suffix = dc=julp,dc=com
        ldap ssl = no
        ldap user suffix = ou=Utilisateurs
        idmap config * : range = 10000-39999
        ldapsam:trusted = yes
        idmap config * : backend = tdb
        store dos attributes = Yes
        strict locking = No

[netlogon]
        path = /usr/local/lib/samba/netlogon
        locking = No

[homes]
        comment = Home Directory
        valid users = %S
        read only = No
        browseable = No

[profile]
        path = /usr/local/lib/samba/profile
        read only = No
        create mask = 0777
        directory mask = 0777
        browseable = No

[films]
        comment = debian
        path = /mnt/pool1/coco/
        read only = No
        inherit permissions = Yes
        guest ok = Yes
        veto files = /.snap/.sujournal/
        vfs objects = shadow_copy2
        shadow:localtime = yes
        shadow:sort = desc
        shadow:snapdir = .zfs/snapshot
        shadow:format = auto-%Y%m%d-%H%M%S
Très important, une fois les lignes de commandes intégrées dans les paramètres auxilliaires de CIFS/SMB, on enregistre qu'une seule fois. Il ne faudra surtout pas cliquer à nouveau sur enregistrer, sous peine de voir les étiquettes et leurs lignes de commande complètement mélangées. Donc si on se trompe, ou si on veut apporter une modification dans les paramètres auxiliaires il faudra tout remettre (en ce qui me concerne, je fais un copier coller du bloc complet), et enregistrer.

Dans les scripts de commande, je ne mets pour l'instant que les lignes suivantes :

Code: Select all

mkdir /mnt/opendlap
mount /dev/zvol/pool1/opendlap /mnt/opendlap
mount_unionfs -o w /mnt/openldap/usr/ /usr/
mount_unionfs -o w /mnt/openldap/var/ /var/
On redémarre Nas4free..;

Je préfére pour l'instant continuer de lancer slap en mode debug pour voir ce qui se passe dans le log.. Par contre une fois slap lancé, il faut relancer samba

Code: Select all

/usr/local/libexec/slapd -d -1
/etc/rc.d/samba restart
Voila, le contrôleur de domaine est maintenant configuré, ldap et samba fonctionnels, reste plus qu'à se connecter avec une machine windows.
Je poursuis sur un autre post, j'ai peur d'être limiter en nombre de caractère.

Re: Serveur OpenLDAP Nas4Free

Posted: 15 Mar 2015 19:23
by laster13
Je poursuis avec la connection d'une machine windows et je dois te dire que j'ai quelque peu galéré. Avec windows ce n'est jamais simple :mrgreen:

Tout d'abord une étape obligatoire consiste a créer un compte "Computers" dans ldap. (mon ordi s'appelle patrick, cest le nom netbios de la machine)

Code: Select all

pw useradd patrick\$ -s /sbin/nologin -c "patrick"
smbldap-useradd -w patrick
smbpasswd -a -m patrick
Voilà ce que cela donne en ldif
dn: uid=patrick$,ou=Computers,dc=julp,dc=com
cn: patrick$
description: Computer
displayname: patrick
gecos: Computer
gidnumber: 515
homedirectory: /nonexistent
loginshell: /bin/false
objectclass: top
objectclass: account
objectclass: posixAccount
objectclass: sambaSamAccount
sambaacctflags: [W ]
sambantpassword: F9727A20FFC35FD886F6648B44DB0AF4
sambapwdlastset: 1426435213
sambasid: S-1-5-21-1386905757-1073149043-2289761240-1003
uid: patrick$
uidnumber: 1001
Je ne vais pas trop rentrer dans les détails concernant les "GID" mais ce qu'il est intéressant de savoir, c'est qu'avec windows les "GID" importants sont :
515: comptes machines
512 : comptes admins
513 : comptes utilisateurs
514 : comptes invités

Tout celà est assez bien documenté sur le net. Donc on voit bien avec l'exemple plus haut et le GID 515, qu'on est sur un compte machine.

Je crée ensuite un utilisateur avec les utilitaires smbldap

Code: Select all

nas4free: ~ # smbldap-useradd -a -P pierre
Changing UNIX and samba passwords for pierre
New password:
Retype new password:
Voilà l'aventure windows commence :mrgreen:, je tente une 1ère connection "clic droit sur ordinateur/propriété/Paramètres systèmes avancés, je clique sur l'onglet "nom de l'ordinateur" puis modifier

Image


Je clique donc sur domaine et je mets celui que j'ai modifié dans samba soit "YOHANN"

Image


Je rentre avec l'utilisateur crée précédement et j'obtiens l'erreur suivante

Image

Bon là, le nom de domaine est BERNARD, faut dire que j'ai essayé avec pas mal de nom :lol:

Pour contrer cette erreur il faut modifier 2 clés de la base de registre. dans démarrer/rechercher , je tape regedit puis je vais HKEY_LOCAL_MACHINE -> SYSTEM -> CurrentControlSet -> Services -> LanmanWorkstation -> Parameters
et là je crée 2 clés DWORD
-DomainCompatibilityMode avec comme valeur 1
-DNSNameResolutionRequired avec comme valeur 0

On recommence et on se décourage pas ;)

Image

encore une erreur... quand je dis que c'était le parcours du combattant :lol:
On tape les commandes suivantes

Code: Select all

nas4free: ~ # smbpasswd -a pierre
New SMB password:
Retype new SMB password:
nas4free: ~ # smbpasswd -e pierre
Enabled user pierre.
nas4free: ~ #
Aller on retente

Image

Et oui encore une erreur mais c'est la dernière, il suffit de taper

Code: Select all

net sam rights grant pierre SeMachineAccountPrivilege
On retente à nouveau

Image

Et là BOUMMM cela fonctionne

Voila on relance tout windows + nas4free et maintenant pierre peut ouvrir sa session dans windows. Toutes ces manip ne sont à faire qu'une seule fois bien sur et heureusement. Tous les comptes LDAP peuvent maintenant se connecter sans avoir a faire ces modifications. Sur les screens les comptes sont differents bien sur liés aux différents tets que j'ai effectué.

Prochaine étape avec un client linux ;) et bon courage pour tes tests velivole18, n'hésite pas à me solliciter!

Re: Serveur OpenLDAP Nas4Free

Posted: 15 Mar 2015 21:12
by velivole18
Bonsoir Laster13,

Bravo, tu as sans doute battu le record de snapshot windows sur le forum :D
Je vais effectivement revenir sous peu vers toi.
Mes 2 difficultés principales, qui sont plus insolubles que d'installer OpenLdap :
- trouver un peu de temps
- trouver une machine windows que je n'ai pas à la maison (hé oui, j'ai réussi à convaincre la famille d'utiliser Linux, cela m'évite de refaire les PC tous les 2 mois ;)
Je ne t'abandonne pas. Entre 2 séances de préparation de mes cours, je bloque toujours sur la commande "smbpasswd".
Même à la main ça ne fonctionne pas.
Un problème d'allocation mémoire de la machine virtuelle ? ou une erreur à un moment donné dans la variable "PACKAGESITE" où j'ai du laisser à un moment donné "amd64" au lieu de "i386" qui fait que j'ai du code 64 bits mélangé au 32 bits ...
Comme je le disais dans mon post précédent, je referai la prochaine fois une nouvelle install dans une nouvelle machine virtuelle.

Promis, juré, craché, je m'y remets bientôt.
En tout cas, ça devient de plus en plus difficile de tout remettre dans l'ordre pour faire un seul tuto.
Ce sera sans doute le tuto le plus long du forum.

Cordialement.

Re: Serveur OpenLDAP Nas4Free

Posted: 16 Mar 2015 08:32
by laster13
Bonjour,

On a pas tous les mêmes contraintes de temps, c'est clair et c'est tout à fait normal que Nas4free vienne en second plan d'autant que de ce que j'ai compris, ta profession exige que tu travailles aussi chez toi pour préparer tes cours.

Concernant windows, peu être que tu peux monter un système avec Virtualbox, cela fonctionnera. En ce qui me concerne j'ai fait le test également avec un Nas4free en virtualbox comme toi et une machine Windows réel et il n'y a aucun soucis pour la détection du domaine.

Re: Serveur OpenLDAP Nas4Free

Posted: 20 Mar 2015 18:38
by laster13
Bonsoir,

J'ai également rencontré cette erreur ""Segmentation fault" et j'ai aussi galéré pour comprendre d'autant que je ne l'avais pas eu précédemment. Il faut tout simplement activer CIFS/SMB et l'erreur disparait ;)

Re: Serveur OpenLDAP Nas4Free

Posted: 22 Mar 2015 15:44
by laster13
Bonjour,

Quelques précisions complémentaires concernant les "profiles" à l'ouverture des sessions Windows et plus généralement sur les logons utilisés.

2 possibilités

- Profils itinérants : Il peut arriver qu'une personne utilise plusieurs ordinateurs, avec le même compte d'utilisateur. Lorsqu'il va utilisateur un ordinateur, il pourra avoir un environnement différent de celui présent sur l'autre ordinateur. Dans ce cas, il pourra être intéressant de configurer pour cet utilisateur un profil itinérant. En effet, le fait d'utiliser ce type de compte va permettre à votre utilisateur de conserver ses documents, ses paramètres, et son environnement de travail, quelque soit l'ordinateur sur lequel il ouvre une session. En effet, les profils itinérants vont stocker leurs informations sur un serveur que vous choisissez. Concrètement, vous retrouverez les dossiers suivant sur votre serveur :
Image

Pour bénéficier du profil itinérant on va intégrer cette ligner de commande dans les paramètres auxilliaires de CIFS/SMB

Code: Select all

logon path = \\%L\profile\%U
Et une fois pour toute on va donner les droits propriétaires à ce dossier

Code: Select all

cd /usr/local/lib/samba
chown -R root:"Domain Users" profile
A l'ouverture de la session un dossier du nom de l'utilisateur va être créer dans profile. Si on prend l'utilisateur pierre, le dossier pierre.V2 va être créer avec tous les dossiers personnels de l'utilisateur... super sympa ;)

Je rappelle que les dossiers "profile'" et "netlogon" ont été créés prédemment (voir post plus haut)

-Profils local : A l'inverse des profils itinérants les dossiers précédents sont conservés sur une seule machine et la ligne de commande précédente devient

Code: Select all

logon path =
Après avoir tester en long et en large les paramètres auxiliaires, voici ceux qui définitivement seront à retenir :
add user script = /usr/local/sbin/smbldap-useradd -m "%u"
ldap delete dn = Yes
delete user script = /usr/local/sbin/smbldap-userdel "%u"
add machine script = /usr/local/sbin/smbldap-useradd -w "%u"
add group script = /usr/local/sbin/smbldap-groupadd -p "%g"
#delete group script = /usr/local/sbin/smbldap-groupdel "%g"
add user to group script = /usr/local/sbin/smbldap-groupmod -m "%u" "%g"
delete user from group script = /usr/local/sbin/smbldap-groupmod -x "%u" "%g"
set primary group script = /usr/local/sbin/smbldap-usermod -g "%g" "%u"

ldap ssl = start_tls
wins support = yes
domain logons = yes
os level = 64
logon path = \\%L\profile\%U
logon drive = P:
logon home = \\%L\%U

[netlogon]
comment = Network Logon Service
path = /var/local/lib/samba/netlogon
writeable = No
browseable = No
write list = Administrateur

[homes]
comment = Home Directory
writeable = Yes
browseable = No
valid users = %S

[profile]
path = /usr/local/lib/samba/profile
browseable = No
writeable = Yes
create mask = 0777
directory mask = 0777
On remarquera au passage la ligne concernant le chiffrage TLS "ldap ssl = start_tls"

Je vais commencer à écrire le TUTO final car cela devient urgent étant donné la somme de toutes les informations à regrouper de manière structurée... pas une mince affaire :roll:

Au final pour créer un utilisateur dans ldap qui pourra se logguer dans windows ou ubuntu ou en ssh, enfin bref de partout et avoir le même dossier dans lequel seront stockées ses propres données, il faudra tout simplement faire:

Code: Select all

smbldap-useradd -a -P -m toto
et c'est tout!!! simple non?

Détail technique en passant, il faudra au préalable créer un compte machine tel que je l'ai précisé plus haut. Autre point important que je mentionne ici de peur d'oublier, la création du répertoire utilisateur dans "/home/toto" est rendu possible grâce à l'option "-m" . c'est le fichier "smbldap.conf qui une fois configuré permet cette opération sauf qu'une ligne de paramètre m'a quelque peu rongé le cerveau un moment et c'est
skeletonDir="/etc/skel"
hors ce "/etc/skel" n'existe pas dans nas4free et du coup, l'option "-m" ne fonctionnait pas. A tout hasard j'ai créé le dossier "skel" et cela a fonctionné.

Maintenant la connexion à partir d'une machine client UBUNTU sur le domaine de samba avec LDAP

Car la finalité est de pouvoir se connecter au contrôleur de domaine LDAP à partir de n'importe quelle machine, Windows ou linux et c'est finalement le but de tout ce travail. C'est pourquoi j'en parle sur ce forum même si à la base je suis hors sujet car mis à part Openldap et le contrôleur samba PDC, le reste n'a pas grand chose à voir avec Nas4free.

Voici comment j'ai procédé sur UBUNTU 14.04, je vais aligné les commandes l'une derriere l'autre et je détaillerai si necessaire sur le tuto

Code: Select all

sudo su
apt-get install winbind
nano /etc/samba/smb.conf
Ajouter cette partie dans smb.conf
security = domain
netbios name = "nom_de_la_machine"
password server = *
workgroup = BERNARD
idmap uid = 10000000-19999999
idmap gid = 10000000-19999999
winbind use default domain = yes
winbind enum users = no
winbind enum groups = no
winbind use default domain = yes
template shell = /bin/bash
template homedir = /home/%D/%U
domain master = no
winbind enum users = yes
winbind enum groups = yes
add machine script = /usr/sbin/useradd -d /var/lib/nobody -g 100 -s /bin/false -M %u
"BERNARD" est mon nom de domaine

Code: Select all

mkdir /home/BERNARD

Code: Select all

nano /etc/nsswitch.conf 
et dedans on configure comme ci dessous
passwd: compat winbind
group: compat winbind
shadow: compat winbind
hosts: files dns wins
networks: files
protocols: db files
services: db files
ethers: db files
rpc: db files
netgroup: nis
PAM Authentification

common-account
cp /etc/pam.d/common-account /etc/pam.d/common-account~
echo "account sufficient pam_winbind.so" > /etc/pam.d/common-account
echo "account required pam_unix.so" >> /etc/pam.d/common-account
common-auth
cp /etc/pam.d/common-auth /etc/pam.d/common-auth~
echo "auth sufficient pam_winbind.so" > /etc/pam.d/common-auth
echo "auth required pam_unix.so nullok_secure use_first_pass" >> /etc/pam.d/common-auth
common-password
On édite le fichier "/etc/pam.d/common-password" et on remplace cette ligne
password [success=2 default=ignore] pam_unix.so obscure sha512
par celle ci
password [success=2 default=ignore] pam_unix.so obscure sha512 min=4 max=50
common-session
echo "session required pam_mkhomedir.so umask=0022 skel=/etc/skel" >> /etc/pam.d/common-session
Ensuite

Code: Select all

reboot

Code: Select all

sudo su

Code: Select all

net rpc join -S 192.168.0.21 -U pierre
il faudra bien sur avoir créer l'utilisateur pierre avec "smblda-useradd" et changer l'ip avec la votre. Si tout va bien on a le message suivant
Joined domain Bernard
On rajoute maintenat tous les utilisateurs du domaine dans la liste "sudoers"
echo "%allusers ALL=(ALL) ALL" >> /etc/sudoers
on reboot à nouveau et c'est fini :mrgreen: Si tout c'est bien passé, les commandes suivantes devraient te donner des infos sur le domaine, les utilisateurs, le SID etc...
wbinfo -n username
wbinfo --all-domains
wbinfo -i username
net getdomainsid
Et en tapant "getent passwd", tu devrais voir la liste de tous les utilisateurs du domaine, et même chose pour "getent group"

Enfin pour se loguer, il suffit d'aller "connecter un lecteur reseau" et de taper
smb://nas4free/pierre et le tour est joué.

On peut aller plus loin avec "PAM_MOUNT" de manière à monter le dossier perso au démarrage mais je vais m’arrêter là, sachant que le but était de se connecter à samba PDC avec un client ubuntu et une authentification centralisée LDAP, mission accomplie :mrgreen:

Je précise que j'ai testé la configuration complète avec TLS sur Ldap et Samba PDC. Cela fonctionne parfaitement bien!

Re: Serveur OpenLDAP Nas4Free

Posted: 24 Apr 2015 17:30
by laster13
Bonjour,

Le tuto est désormais disponible pour la version Shigawire (revision 972) x64-embedded en ZFS. Concernant la version 9.3.0.2 - (révision 1391) - Nayla, je posterai des que possible

[TUTO] Serveur Openldap + Samba PDC + TLS

Re: Serveur OpenLDAP Nas4Free

Posted: 24 Apr 2015 19:37
by ernie
A mettre en anglais et tu fais fureur sur le forum UK :)

Re: Serveur OpenLDAP Nas4Free

Posted: 24 Apr 2015 20:01
by laster13
Oui avec velivole18 on y a pensé, après c est le manque de temps, je vais demander à ma moitié si elle veut bien s y coller parce que mon anglais ben euh c est pas trop ça :oops:

Re: [Topic unique] Serveur Openldap + Samba PDC + TLS

Posted: 16 May 2015 20:07
by laster13
Mise à jour du tuto notamment pour l'adresse des ports qui a changé