Index
Tag Cloud
Pour des raisons professionnelles j'avais besoin de pouvoir avoir une authentification unifiée pour plusieurs machines et services sur les dites machines.
Il me fallait un identifiant unique pour un pool de machine pour SSH ou SFTP et pour Samba.
Tache ardue car tout les “guides” trouvé parlaient de Samba en mode contrôleur de domaine, ce que je ne voulais absolument pas.
Après avoir réussi je pose donc mon guide
Note: J'ai repris pas mal d'informations a partir du site de Guim
(La base de la créativitée est le plagiat il parait
)
Merci à lui pour cette “base solide” d'information.
# apt-get install slapd db4.2-util
Outil de configuration des paquets
----------------------| Configuration de slapd |-----------------------
| |
| Si vous choisissez cette option, aucune configuration par défaut et |
| aucune base de données ne seront créées. |
| |
| Voulez-vous omettre la configuration d'OpenLDAP ? |
| |
| <Oui> <Non> |
| |
-----------------------------------------------------------------------
Choisir “Non”
Outil de configuration des paquets
------------------------| Configuration de slapd |-------------------------
| Le nom de domaine DNS est utilisé pour établir le nom distinctif de base |
| (« base DN » ou « Distinguished Name ») de votre annuaire LDAP. Par |
| exemple, si vous indiquez «toto.titi.org » ici, le nom distinctif de |
| base sera « dc=toto, dc=titi, dc=org ». |
| |
| Nom de domaine : |
| |
| nodomain_________________________________________________________________ |
| |
| <Ok> |
| |
---------------------------------------------------------------------------
Remplacer “nodomain” par le domaine désiré.
Outil de configuration des paquets
------------------------| Configuration de slapd |-------------------------
| Veuillez indiquer la valeur que sera utilisée comme nom de votre entité |
| (« organization ») dans le nom distinctif de base de votre annuaire |
| LDAP. |
| |
| Nom de votre organisation : |
| |
| nodomain_________________________________________________________________ |
| |
| <Ok> |
| |
---------------------------------------------------------------------------
Même chose, remplacer “nodomain” par le domaine.
Outil de configuration des paquets
----------------------| Configuration de slapd |-----------------------
| Veuillez indiquer le mot de passe de l'administrateur de l'annuaire |
| LDAP. |
| |
| Mot de passe de l'administrateur : |
| |
| _____________________________________________________________________ |
| |
| <Ok> |
| |
-----------------------------------------------------------------------
Entrer le mot de passe désiré pour le compte Admin.
Outil de configuration des paquets
------------------------| Configuration de slapd |-------------------------
| |
| Le module de bases de données BDB est le module recommandé par les |
| développeurs d'OpenLDAP. Pour plus d'informations, veuillez consulter le |
| fichier /usr/share/doc/slapd/README.DB_CONFIG.gz. |
| |
| HDB est la version qui est amenée à remplacer BDB dans le futur. Des |
| problèmes peuvent subsister dans le code HDB des versions 2.2 d'OpenLDAP |
| et vous devriez donc conserver BDB en attendant les versions 2.3. |
| |
| Les modules BDB (back-bdb) et LDBM (back-ldbm) ont des buts analogues. |
| Back-bdb a été développé en profitant de l'expérience acquise avec |
| back-ldbm mais les deux sont sensiblement différents. Tous deux stockent |
| les enregistrements avec une clé unique d'identification (« ID key ») |
| sur 32 bits en utilisant dn2id pour établir les correspondances entre |
| noms distinctifs (DN) et clés uniques d'identification. Tous deux |
| |
| <Ok> |
| |
---------------------------------------------------------------------------
Valider.
Outil de configuration des paquets
-------| Configuration de slapd |--------
| Module de base de données à utiliser : |
| |
| BDB |
| HDB |
| |
| |
| <Ok> |
| |
-----------------------------------------
Choisir “BDB”
Outil de configuration des paquets
------------------| Configuration de slapd |------------------
| |
| |
| |
| Faut-il supprimer la base de données à la purge du paquet ? |
| |
| <Oui> <Non> |
| |
--------------------------------------------------------------
Choisir “Oui”.
Outil de configuration des paquets
-----------------------| Configuration de slapd |------------------------
| |
| Des fichiers présents dans /var/lib/ldap vont probablement provoquer |
| l'échec de la procédure de configuration. Si vous choisissez cette |
| option, les scripts de configuration déplaceront les anciens fichiers |
| des bases de données avant de créer une nouvelle base de données. |
| |
| Faut-il déplacer l'ancienne base de données ? |
| |
| <Oui> <Non> |
| |
-------------------------------------------------------------------------
Choisir “Oui”
Outil de configuration des paquets
------------------------| Configuration de slapd |-------------------------
| |
| Désormais slapd n'utilise plus par défaut l'ancien protocole LDAPv2. Il |
| est conseillé de migrer les programmes et les utilisateurs vers la |
| version LDAPv3 . Si vous utilisez d'anciens programmes qui ne gèrent pas |
| encore LDAPv3, vous pouvez choisir cette option malgré tout. Cela |
| ajoutera l'option « allow bind_v2 » au fichier slapd.conf pour indiquer |
| au démon slapd qu'il doit accepter les connexions LDAPv2. |
| |
| Faut-il autoriser le protocole LDAPv2 ? |
| |
| <Oui> <Non> |
| |
---------------------------------------------------------------------------
Puisque ce n'est pas recommandé, on n'autorisera pas LDAPv2
Fichier config de LDAP
include /etc/ldap/schema/core.schema
include /etc/ldap/schema/cosine.schema
include /etc/ldap/schema/nis.schema
include /etc/ldap/schema/inetorgperson.schema
include /etc/ldap/schema/samba.schema
pidfile /var/run/slapd/slapd.pid
argsfile /var/run/slapd/slapd.args
loglevel 0
modulepath /usr/lib/ldap
moduleload back_bdb
sizelimit 500
tool-threads 1
backend bdb
checkpoint 512 30
database bdb
suffix "dc=kathryl,dc=net"
rootdn "cn=admin,dc=kathryl,dc=net"
rootpw {SSHA}5phpdUoqniQz0iXVXWViK1fYO1mWSM6r
directory "/var/lib/ldap"
dbconfig set_cachesize 0 2097152 0
dbconfig set_lk_max_objects 1500
dbconfig set_lk_max_locks 1500
dbconfig set_lk_max_lockers 1500
index objectClass eq
lastmod on
access to attrs=userPassword,shadowLastChange
by dn="cn=admin,dc=kathryl,dc=net" write
by anonymous auth
by self write
by * none
access to dn.base="" by * read
access to *
by dn="cn=admin,dc=kathryl,dc=net" write
by * read
A noter la ligne
include /etc/ldap/schema/samba.schema
C'est grâce a ce schéma de table que Samba va savoir ce qu'il doit chercher. Il faut donc avoir ce schéma extrait.
# apt-get install samba-doc # gunzip -c /usr/share/doc/samba-doc/examples/LDAP/samba.schema.gz > /etc/ldap/schema/samba.schema
La ligne
rootpw {SSHA}5phpdUoqniQz0iXVXWViK1fYO1mWSM6r
Représente la pass “root” de la base. Pour en générer un il faut utiliser la commande “slappasswd” :
# slappasswd
New password:
Re-enter new password: (123456)
{SSHA}5phpdUoqniQz0iXVXWViK1fYO1mWSM6r
# apt-get install libpam-ldap libpam0g libldap2 libpam-cracklib libnss-ldap nscd
Outil de configuration des paquets
---------------------| Configuration de libpam-ldap |----------------------
| Veuillez indiquer l'URI d'accès au serveur LDAP. Il s'agit en général |
| d'une chaîne de caractères sous la forme « ldap:<hôte ou |
| IP>><port>/ ». Des URI utilisant « ldaps:// » ou « ldapi:// » sont |
| également possibles. Le numéro de port est facultatif. |
| |
| Note : utiliser une adresse IP est recommandé ; les risques d'échec sont |
| réduits en cas d'indisponibilité du service de noms. |
| |
| URI du serveur LDAP : |
| |
| ldapi://XXX.XXX.XXX.XXX/_________________________________________________ |
| |
| <Ok> |
| |
---------------------------------------------------------------------------
Indiquer l'IP du serveur LDAP
Outil de configuration des paquets ---------------------| Configuration de libpam-ldap |---------------------- | Veuillez indiquer le nom distinctif de la base de recherche. Beaucoup de | | sites utilisent ici les composants de leurs noms de domaine. Ainsi, pour | | le domaine « exemple.net », le nom distinctif utilisé serait | | « dc=exemple,dc=net ». | | | | Nom distinctif (DN) de la base de recherche : | | | | dc=kathryl,dc=net________________________________________________________ | | | | <Ok> | | | ---------------------------------------------------------------------------
Indiquer le nom de la base de recherche (dc=kathryl,dc=net dans notre cas).
Outil de configuration des paquets
---------------------| Configuration de libpam-ldap |----------------------
| Veuillez indiquer la version du protocole LDAP que doit utiliser ldapns. |
| Il est recommandé de choisir le numéro de version le plus élevé |
| disponible. |
| |
| Version de LDAP à utiliser : |
| |
| 3 |
| 2 |
| |
| |
| <Ok> |
| |
---------------------------------------------------------------------------
Comme on n'a pas autorisé LDAPv2, nous choisirons donc LDAPv3
Outil de configuration des paquets
---------------------| Configuration de libpam-ldap |----------------------
| |
| Cette option permet aux outils utilisant PAM de se comporter comme si |
| vous changiez les mots de passe locaux. |
| |
| Le mot de passe sera conservé dans un fichier séparé accessible au seul |
| superutilisateur. |
| |
| Si vous utilisez un répertoire /etc monté par NFS ou toute autre |
| combinaison de réglages similaire, vous devriez désactiver cette option. |
| |
| Faut-il créer une base de données locale pour l'administrateur ? |
| |
| <Oui> <Non> |
| |
---------------------------------------------------------------------------
Répondre “Oui”
Outil de configuration des paquets
--------------------| Configuration de libpam-ldap |--------------------
| |
| Choisissez cette option s'il est nécessaire de s'identifier avant de |
| pouvoir utiliser la base. |
| |
| Note : avec une configuration classique, ce n'est pas nécessaire. |
| |
| La base LDAP demande-t-elle une identification ? |
| |
| <Oui> <Non> |
| |
------------------------------------------------------------------------
Répondre “Non”
Outil de configuration des paquets
-------------------| Configuration de libpam-ldap |-------------------
| Veuillez indiquer l'identifiant qui servira à modifier les mots de |
| passe. |
| |
| Veuillez noter que cet identifiant doit posséder des privilèges |
| d'administrateur. |
| |
| Compte LDAP pour le superutilisateur (« root ») : |
| |
| cn=admin,dc=kathryl,dc=net__________________________________________ |
| |
| <Ok> |
| |
----------------------------------------------------------------------
Indiquer le compte de l'Admin LDAP
Outil de configuration des paquets
---------------------| Configuration de libpam-ldap |---------------------
| Veuillez indiquer le mot de passe qui sera utilisé lorsque libpam-ldap |
| se connectera au répertoire LDAP avec le compte du superutilisateur. |
| |
| Ce mot de passe sera conservé dans un fichier à part |
| (/etc/pam_ldap.secret) qui ne sera accessible qu'au superutilisateur |
| (« root »). |
| |
| Si vous indiquez un mot de passe vide, l'ancien mot de passe sera |
| utilisé. |
| |
| Mot de passe du compte du superutilisateur LDAP : |
| |
| ________________________________________________________________________ |
| |
| <Ok> |
| |
--------------------------------------------------------------------------
Remplir avec le mot de passe du compte Admin.
Outil de configuration des paquets
---------------------| Configuration de libpam-ldap |----------------------
| |
| Le module PAM peut choisir une méthode locale de chiffrement des mots de |
| passe en cas de changement. C'est généralement préférable. En |
| choisissant autre chose que « en clair », vous êtes certain que les mots |
| de passe seront chiffrés d'une manière ou d'une autre. |
| |
| Détail des choix possibles : |
| |
| En clair : ne pas utiliser de chiffrement. Utile pour les |
| serveurs qui chiffrent automatiquement l'entrée |
| userPassword ; |
| |
| |
| Chiffré : userPassword utilisera le même format que pour le |
| fichier de mots de passe du système. Fonctionne |
| |
| <Ok> |
| |
---------------------------------------------------------------------------
Valider.
Outil de configuration des paquets
----------------| Configuration de libpam-ldap |-----------------
| Méthode de chiffrement pour les changements de mots de passe : |
| |
| En clair |
| Chiffré |
| NDS Novell |
| Active Directory |
| EXOP OpenLDAP |
| MD5 |
| |
| |
| <Ok> |
| |
-----------------------------------------------------------------
Choisir “Chiffré”
Outil de configuration des paquets
---------------------| Configuration de libnss-ldap |----------------------
| Veuillez indiquer l'URI d'accès au serveur LDAP. Il s'agit en général |
| d'une chaîne de caractères sous la forme « ldap:<hôte ou |
| IP>><port>/ ». Des URI utilisant « ldaps:// » ou « ldapi:// » sont |
| également possibles. Le numéro de port est facultatif. |
| |
| Note : utiliser une adresse IP est recommandé ; les risques d'échec sont |
| réduits en cas d'indisponibilité du service de noms. |
| |
| URI du serveur LDAP : |
| |
| ldapi://XXX.XXX.XXX.XXX/_________________________________________________ |
| |
| <Ok> |
| |
---------------------------------------------------------------------------
Comme précedemment, indiquer l'IP du serveur LDAP
Outil de configuration des paquets
---------------------| Configuration de libnss-ldap |----------------------
| Veuillez indiquer le nom distinctif de la base de recherche. Beaucoup de |
| sites utilisent ici les composants de leurs noms de domaine. Ainsi, pour |
| le domaine « exemple.net », le nom distinctif utilisé serait |
| « dc=exemple,dc=net ». |
| |
| Nom distinctif (DN) de la base de recherche : |
| |
| dc=kathryl,dc=net________________________________________________________ |
| |
| <Ok> |
| |
---------------------------------------------------------------------------
Comme précédemment, indiquer la base.
Outil de configuration des paquets
---------------------| Configuration de libnss-ldap |----------------------
| Veuillez indiquer la version du protocole LDAP que doit utiliser ldapns. |
| Il est recommandé de choisir le numéro de version le plus élevé |
| disponible. |
| |
| Version de LDAP à utiliser : |
| |
| 3 |
| 2 |
| |
| |
| <Ok> |
| |
---------------------------------------------------------------------------
Comme précédemment indiquer LDAPv3
Outil de configuration des paquets
--------------------| Configuration de libnss-ldap |--------------------
| |
| Choisissez cette option s'il est nécessaire de s'identifier avant de |
| pouvoir utiliser la base. |
| |
| Note : avec une configuration classique, ce n'est pas nécessaire. |
| |
| La base LDAP demande-t-elle une identification ? |
| |
| <Oui> <Non> |
| |
------------------------------------------------------------------------
Idem, choisir “Non”.
Outil de configuration des paquets
---------------------| Configuration de libnss-ldap |----------------------
| |
| Cette option permet aux outils qui interrogent le système NSS avec |
| libnss-ldap de récupérer des informations supplémentaires lorsqu'ils |
| sont utilisés par le superutilisateur (« root »). |
| |
| Si vous utilisez un répertoire /etc monté par NFS ou toute autre |
| combinaison de réglages similaire, vous devriez désactiver cette option. |
| |
| Privilèges LDAP spécifiques pour le superutilisateur ? |
| |
| <Oui> <Non> |
| |
---------------------------------------------------------------------------
Répondre “Oui”.
Outil de configuration des paquets
---------------------| Configuration de libnss-ldap |----------------------
| |
| Si vous utilisez des mots de passe dans la configuration de libnss-ldap, |
| mettre le système des permissions à 0600 (seul le propriétaire peut lire |
| ou modifier le fichier) est recommandé. |
| |
| Note : bien sûr, libnss-ldap vérifiera que nscd est installé et ne |
| mettra le mode à 0600 que si nscd est présent. |
| |
| Rendre le fichier de configuration lisible et modifiable uniquement par |
| son propriétaire ? |
| |
| <Oui> <Non> |
| |
---------------------------------------------------------------------------
Répondre “Oui”.
Outil de configuration des paquets
---------------------| Configuration de libnss-ldap |----------------------
| Veuillez indiquer le compte qui sera utilisé pour les requêtes NSS avec |
| les privilèges du superutilisateur. |
| |
| Note : pour que cette fonctionnalité soit opérationnelle, ce compte doit |
| être autorisé à accéder aux attributs du répertoire LDAP qui |
| correspondent aux entrées masquées (« shadow ») des utilisateurs ainsi |
| qu'aux mots de passe des utilisateurs et des groupes. |
| |
| Compte LDAP pour le superutilisateur (« root ») : |
| |
| cn=admin,dc=kathryl,dc=net_______________________________________________ |
| |
| <Ok> |
| |
---------------------------------------------------------------------------
Indiquer le compte Admin.
Outil de configuration des paquets
---------------------| Configuration de libnss-ldap |----------------------
| Veuillez indiquer le mot de passe qui sera utilisé lorsque libnss-ldap |
| se connectera au répertoire LDAP avec le compte du superutilisateur. |
| |
| Ce mot de passe sera conservé dans un fichier à part |
| (/etc/libnss-ldap.secret) qui ne sera accessible qu'au superutilisateur |
| (« root »). |
| |
| Si vous indiquez un mot de passe vide, l'ancien mot de passe sera |
| utilisé. |
| |
| Mot de passe du compte du superutilisateur LDAP : |
| |
| _________________________________________________________________________ |
| |
| <Ok> |
| |
---------------------------------------------------------------------------
Remplir avec le mot de passe du compte Admin.
Outil de configuration des paquets
-------------------| Configuration de libnss-ldap |--------------------
| |
| Le fichier nsswitch.conf n'est pas géré automatiquement |
| |
| Pour que le paquet libnss-ldap fonctionne, vous devez modifier |
| /etc/nsswitch.conf pour qu'il utilise la base de données LDAP. Un |
| fichier modèle se trouve dans |
| /usr/share/doc/libnss-ldap/examples/nsswitch.ldap ; vous pouvez |
| l'utiliser pour la configuration de nsswitch ou bien le mettre à la |
| place de votre configuration actuelle. |
| |
| Avant de supprimer ce paquet, il est sage de supprimer les entrées |
| « ldap © du fichier nsswitch.conf pour que les services de base |
| continuent à fonctionner. |
| |
| <Ok> |
| |
-----------------------------------------------------------------------
Valider.
Le fichier common-account gère l'authorisation de connexion. On peut donner des restriction en fonction du login, de la date, de l'heure, etc. Modifier le fichier /etc/pam.d/common-account :
# Aucun paramètre n'est donnée pour la connexion # c'est a dire que si l'utilisateur possede un compte # local ou sur le ldap, il aura le droit de se connecter account required pam_unix.so account sufficient pam_ldap.so
Le fichier commmon-auth gère l'authentification. On y met les modules que l'on souhaite voir tester les couples login/mot de passe. Modifier le fichier /etc/pam.d/common-auth :
# Les variables d'environement par defaut sont placees dans /etc/security/pam_env.conf auth required pam_env.so # interroge le fichier /etc/passwd et si l'authentification est bonne, alors # PAM retourne ok et quitte auth sufficient pam_unix.so # interroge le LDAP et si l'authentification est bonne, alors PAM retourne ok # et quitte auth sufficient pam_ldap.so use_first_pass # si tout a echoue alors PAM retourne mauvaise authentification et quitte auth required pam_deny.so
Le fichier common-password gère le changement de mot de passe. Modifier le fichier /etc/pam.d/common-password/ :
password required pam_cracklib.so retry=3 minlen=6 password sufficient pam_unix.so use_authtok md5 shadow password sufficient pam_ldap.so use_authtok password required pam_deny.so
Le fichier common-session gère l'ouverture de session. Modifier le fichier /etc/pam.d/common-session/ :
# charge le fichier /etc/security/limits.conf et pose de limites pour # l'utilisateur qui se connecte session required pam_limits.so session required pam_unix.so session optional pam_ldap.so session required pam_mkhomedir.so skel=/etc/skel/ umask=027
Ici on met files avant ldap pour que le root de la machine cliente puisse se connecter en s'authentifiant avec un mot de passe local. Modifier le fichier /etc/nsswitch.conf/, pour qu'il soit :
passwd: compat ldap shadow: compat ldap group: compat ldap hosts: files dns networks: files protocols: db files services: db files ethers: db files rpc: db files netgroup: nis
L'intérêt d'installer nscd est d'avoir un meilleur temps de réponse lorsque l'on interroge un service qui doit accèder à la liste des utilisateurs. Modifiez le fichier /etc/nscd.conf/, si nscd est installé. Le point sensible semble être les groupes.
# enable-cache : booleen yes ou no. # positive-time-to-live : nombre de secondes après lesquelles # les entrées mises en cache sont retirées. # negative-time-to-live : pour les entrées non trouvées # précédement, nombre de secondes après lesquelles les # entrées mises en cache sont retirées. # suggested-size : taille du hachage qui sera utilisé pour stocker # les entrées. La taille doit être plus grande que le nombre de # données que l'on veux stocker et être un nombre premier. # check-files : test si les fichiers ont changé depuis la # derniere fois. enable-cache passwd yes positive-time-to-live passwd 300 negative-time-to-live passwd 20 suggested-size passwd 3001 check-files passwd yes enable-cache group yes positive-time-to-live group 3600 negative-time-to-live group 20 suggested-size group 211 check-files group yes enable-cache hosts no positive-time-to-live hosts 3600 negative-time-to-live hosts 20 suggested-size hosts 211 check-files hosts yes
Modifier le fichier /etc/ldap/ldap.conf (mode 644).
# L'attribut BASE indique le DN de la base ldap BASE dc=kathryl,dc=net # le nom du serveur HOST <Serveur LDAP>
Le fichier /etc/libnss-ldap.conf configure l'access de Name Service Switch au LDAP. Attention ce fichier doit être en mode 644 sinon au login le nom de l'utilisateur sera “I have no name!”.
host <Serveur LDAP> base dc=kathryl,dc=net ldap_version 3
Le fichier /etc/pam_ldap.conf/ configure l'access de PAM au LDAP (mode 644) :
host <Serveur LDAP> base dc=kathryl,dc=net ldap_version 3 pam_password crypt # pour filter les personnes en fonction de certain de leur attributs LDAP on peut utiliser la directive suivant (a adapter) # pam_filter &(attribut=valeur)(objectClass=person)
Nscd est une sorte de cache pour LDAP, ce qui permet de garder l'authentification meme si LDAP est “ailleurs”. Une fois toute les modifs de configuration effectuée, il faut redemarrer NSCD :
# /etc/init.d/nscd stop # /etc/init.d/nscd start
Pour les comptes Webmaster nous avons besoin de les limiter a SFTP
Il n'y a pas encore de package Debian directement disponible mais il existe des packages sur le site officiel. Il faut donc aller le télécharger l'installer a la main.
http://mysecureshell.sourceforge.net/fr/index.html
# dpkg -i mysecureshell_1.0_i386.deb
# vi /etc/ssh/sftp_config
<Default>
StayAtHome true
VirtualChroot true
ResolveIP true
ShowLinksAsLinks false
</Default>
# /etc/init.d/mysecureshell start
# apt-get install samba
Outil de configuration des paquets
-----------------------------| Samba Server |------------------------------
| Veuillez indiquer le groupe de travail où les clients doivent trouver le |
| serveur. Il indique aussi le nom de domaine utilisé par le paramètre |
| « security=domain » quand celui-ci est utilisé. |
| |
| Nom de domaine ou de groupe de travail : |
| |
| _________________________________________________________________________ |
| |
| <Ok> |
| |
---------------------------------------------------------------------------
Laisser vide et valider.
Outil de configuration des paquets
-----------------------------| Samba Server |-----------------------------
| |
| Tous les clients Windows récents communiquent avec les serveurs SMB en |
| utilisant des mots de passe chiffrés. Si vous voulez utiliser des mots |
| de passe sans chiffrement, vous devez modifier un paramètre dans le |
| registre de Windows. |
| |
| Il est recommandé d'utiliser des mots de passe chiffrés. Si vous le |
| faites, n'oubliez pas de créer un fichier /etc/samba/smbpasswd et d'y |
| établir les mots de passe de tous les utilisateurs, à l'aide de la |
| commande « smbpasswd ». |
| |
| Voulez-vous chiffrer les mots de passe ? |
| |
| <Oui> <Non> |
| |
--------------------------------------------------------------------------
Laisser la valeur par défaut et valider.
Outil de configuration des paquets
-----------------------------| Samba Server |------------------------------
| |
| Si votre ordinateur obtient ses paramètres IP à partir d'un serveur DHCP |
| du réseau, ce serveur peut aussi fournir des informations sur les |
| serveurs WINS (serveurs de noms NetBIOS) présents sur le réseau. Une |
| modification du fichier smb.conf est nécessaire afin que les réglages |
| WINS fournis par le serveur DHCP soient lus dans /etc/samba/dhcp.conf. |
| |
| Le paquet dhcp3-client doit être installé pour utiliser cette |
| fonctionnalité. |
| |
| Modifier smb.conf pour utiliser les paramètres WINS fournis par DHCP ? |
| |
| <Oui> <Non> |
| |
---------------------------------------------------------------------------
Choisir “Non” et Valider.
Outil de configuration des paquets
-----------------------------| Samba Server |------------------------------
| Le service de Samba smbd peut s'exécuter en tant que démon classique ou |
| bien être lancé par inetd. Il est recommandé de l'exécuter en tant que |
| démon. |
| |
| Comment voulez-vous lancer Samba ? |
| |
| démons |
| inetd |
| |
| |
| <Ok> |
| |
---------------------------------------------------------------------------
Choisir “Démon” et Valider.
Outil de configuration des paquets
-----------------------------| Samba Server |------------------------------
| |
| Pour rester compatible avec les réglages par défaut de la majorité des |
| versions de Windows, Samba doit être configuré pour utiliser des mots de |
| passe chiffrés. Cela impose de conserver les mots de passe dans un |
| fichier distinct de /etc/passwd. Ce fichier peut être créé |
| automatiquement, mais les mots de passe doivent y être ajoutés |
| manuellement avec la commande « smbpasswd » et être tenus à jour. |
| |
| Si vous ne voulez pas créer le fichier maintenant, Samba (ainsi, |
| probablement, que les clients Windows) devra utiliser des mots de passe |
| non chiffrés. |
| |
| Veuillez consulter le fichier |
| /usr/share/doc/samba-doc/htmldocs/ENCRYPTION.html dans le paquet |
| samba-doc pour plus d'informations. |
| |
| <Ok> |
| |
---------------------------------------------------------------------------
Valider.
Outil de configuration des paquets
------------------------| Samba Server |------------------------
| |
| Faut-il créer une base de données /var/lib/samba/passdb.tdb ? |
| |
| <Oui> <Non> |
| |
----------------------------------------------------------------
Laisser la valeur par défaut et valider.
Fichier config type :
[global]
workgroup = KATHRYL.NET
security = user
os level = 50
passdb backend = ldapsam: ldap://<Serveur LDAP>/
ldap admin dn = "cn=admin,dc=kathryl,dc=net"
ldap suffix = "dc=kathryl,dc=net"
ldap user suffix = "ou=users"
[homes]
writeable = yes
browseable = no
Il faut assigner ensuite au serveur Samba le mot de passe du compte Admin :
# smbpasswd -w <MDP Admin Samba>
Nous allons utiliser l'outil SMBLDAP pour ce faire.
# apt-get install smbldap-tool
/etc/smbldap-tools/smbldap_bind.conf
slaveDN="cn=admin,dc=kathryl,dc=net" slavePw=<password admin ldap en clair> masterDN="cn=admin,dc=kathryl,dc=net" masterPw=<password admin ldap en clair>
/etc/smbldap-tools/smbldap.conf
slaveLDAP="XXX.XXX.XXX.XXX"
slavePort="389"
masterLDAP="XXX.XXX.XXX.XXX"
masterPort="389"
ldapTLS="0"
verify="require"
suffix="dc=kathryl,dc=net"
usersdn="ou=People,${suffix}"
computersdn="ou=Machines,${suffix}"
groupsdn="ou=Groups,${suffix}"
idmapdn="ou=Idmap,${suffix}"
sambaUnixIdPooldn="cn=NextFreeUnixId,${suffix}"
scope="sub"
hash_encrypt="CRYPT"
crypt_salt_format="%s"
userLoginShell="/bin/bash"
userHome="/home/%U"
userHomeDirectoryMode="700"
# Nom d'affichage - utiliser smbldap-useradd -c
userGecos="User"
defaultUserGid="513"
defaultComputerGid="515"
skeletonDir="/etc/skel"
# Les mots de passe expirent dans 10ans
defaultMaxPasswordAge="3650"
with_smbpasswd="0"
smbpasswd="/usr/bin/smbpasswd"
with_slappasswd="0"
slappasswd="/usr/sbin/slappasswd"
# smbldap-populate Populating LDAP directory for domain KATHRYL.NET (S-1-5-21-201985311-660704269-2972090873) (using builtin directory structure) entry dc=kathryl,dc=net already exist. adding new entry: ou=People,dc=kathryl,dc=net adding new entry: ou=Groups,dc=kathryl,dc=net adding new entry: ou=Machines,dc=kathryl,dc=net adding new entry: ou=Idmap,dc=kathryl,dc=net adding new entry: uid=root,ou=People,dc=kathryl,dc=net adding new entry: uid=nobody,ou=People,dc=kathryl,dc=net adding new entry: cn=Domain Admins,ou=Groups,dc=kathryl,dc=net adding new entry: cn=Domain Users,ou=Groups,dc=kathryl,dc=net adding new entry: cn=Domain Guests,ou=Groups,dc=kathryl,dc=net adding new entry: cn=Domain Computers,ou=Groups,dc=kathryl,dc=net adding new entry: cn=Administrators,ou=Groups,dc=kathryl,dc=net adding new entry: cn=Account Operators,ou=Groups,dc=kathryl,dc=net adding new entry: cn=Print Operators,ou=Groups,dc=kathryl,dc=net adding new entry: cn=Backup Operators,ou=Groups,dc=kathryl,dc=net adding new entry: cn=Replicators,ou=Groups,dc=kathryl,dc=net adding new entry: cn=NextFreeUnixId,dc=kathryl,dc=net Please provide a password for the domain root: Changing UNIX and samba passwords for root New password: Retype new password:
(Le mot de passe demandé est celui de l'admin LDAP)
La base est a présent propagé.
PHPLDAPADMIN est un outils pour gérer le LDAP, il necessite Apache.
# apt-get install phpldapadmin
Outil de configuration des paquets
--------------------| Configuration de phpldapadmin |---------------------
| |
| session : un identifiant dn de connexion et un mot de passe vous seront |
| demandés à chaque connexion à phpLDAPadmin et une variable de |
| session sera utilisée pour les conserver sur le serveur web. |
| Ce choix est le plus sûr et sera donc utilisé par défaut ; |
| |
| |
| cookie : un identifiant dn de connexion et un mot de passe vous |
| seront demandés à chaque connexion à phpLDAPadmin. Ils |
| seront conservés dans un cookie sur votre navigateur client ; |
| |
| |
| config : l'identifiant dn de connexion et le mot de passe seront |
| conservés dans le fichier de configuration afin de ne pas |
| avoir à les indiquer pour chaque connexion à phpLDAPadmin. |
| |
| <Ok> |
| |
--------------------------------------------------------------------------
Valider
Outil de configuration des paquets
----| Configuration de phpldapadmin |-----
| Type d'authentification : |
| |
| session |
| cookie |
| config |
| |
| |
| <Ok> |
| |
------------------------------------------
Choisir Session
Outil de configuration des paquets
--------------------| Configuration de phpldapadmin |---------------------
| PhpLDAPadmin gère tout serveur web géré par PHP4, mais cette procédure |
| de configuration automatique ne gère actuellement qu'Apache. |
| |
| Serveur web à reconfigurer automatiquement : |
| |
| [ ] Apache |
| [ ] Apache-ssl |
| [ ] Apache-perl |
| [*] Apache2 |
| |
| |
| <Ok> |
| |
--------------------------------------------------------------------------
Ne garder que Apache2
Outil de configuration des paquets
--------------------| Configuration de phpldapadmin |---------------------
| |
| Veuillez noter que pour que les modifications soient prises en compte, |
| votre(vos) serveur(s) web doi(ven)t être redémarré(s). |
| |
| Faut-il redémarrer le serveur web ? |
| |
| <Oui> <Non> |
| |
--------------------------------------------------------------------------
Valider avec “Oui”.
Il faut se rendre sur phpldapadmin. Se logger avec le compte “cn=admin,dc=kathryl,dc=net”.
Dans la section “dc=kathryl,dc=net” puis “ou=people” et faire “Créer une nouvelle entrée ici” Choisir “Samba3 Account” (en bas a gauche).
Container DN: ou=people,dc=kathryl,dc=net First name: <Nom> Last name: <Prenom> Common Name: <Nom & Prenom> User ID: <Login> UID Number: <Chosir l'ID Unix si on doit le specifier, sinon laisser vide> Samba SID: (apparement sans importance) Password: <Password> Vérifier Password: <Confirmation password> LM Password: (ne pas modifier, lié au Password) NT Password: (ne pas modifier, lié au Password) Login shell: <Choisir le Shell désiré> GID Number: <Choisir "Domain User"> Primary Group ID: <Choisir "Domain User"> Home directory: </home>
# passwd account Enter login(LDAP) password: New UNIX password: BAD PASSWORD: it does not contain enough DIFFERENT characters Retype new UNIX password: LDAP password information changed for ccroix passwd : le mot de passe a été mis à jour avec succès
Modifier le pass shell ne change pas le pass samba (et inversement) Il faut donc utiliser smbpasswd
# smbpasswd account New SMB password: Retype new SMB password: