Samba LDAP · 5 min read · Dec 12, 2025
Contrôleur de domaine Samba CentOS 5.x avec backend LDAP - Page 2
Configuration de l’administration à distance du répertoire ldap
Éditez /etc/php.ini et assurez-vous que memory_limit est défini à au moins 32 Mo :
memory_limit = 32MLa dernière fois que j’ai vérifié, la version de phpldapadmin disponible via yum est cassée, donc nous allons obtenir la dernière version et l’extraire : Allez à http://sourceforge.net/project/showfiles.php?group_id=61828&package_id=177751 & téléchargez la dernière version. Dans mon cas, cela a donné les commandes suivantes, votre paquet peut être plus récent :
mkdir /var/www/html/samba && cd /var/www/html/samba
wget http://softlayer.dl.sourceforge.net/sourceforge/phpldapadmin/phpldapadmin-1.1.0.7.tar.gz
tar zxf phpldapadmin-1.1.0.7.tar.gz
ln -s phpldapadmin-1.1.0.7 pla
cp pla/config/config.php.example pla/config/config.phpMaintenant, éditez ./pla/config/config.php et décommentez la ligne suivante :
$config->custom->jpeg['tmpdir'] = "/tmp";Rendre le nouveau logiciel disponible
service httpd restart
chkconfig httpd onÉditez /etc/sysconfig/iptables et copiez & modifiez la ligne concernant ssh (–dport 22 -j ACCEPT), et juste après, ajoutez (en supposant que votre installation CentOS a produit le fichier iptables par défaut) :
#Autoriser Https://
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT
#Autoriser samba :
-A RH-Firewall-1-INPUT -m multiport -p udp --dport 137,138 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m multiport -p tcp --dport 139,445 -j ACCEPT
Maintenant, ouvrez votre navigateur web et visitez https://192.168.0.5/samba/pla/ et connectez-vous avec le nom d’utilisateur cn=root,dc=DOMAINNAME & votre mot de passe. Vous devriez pouvoir naviguer et voir quelques éléments.
Intégrer ldap et Samba
mv /etc/samba/smb.conf /etc/samba/smb.conf.dist
cp /usr/share/doc/smbldap-tools-0.9.5/smb.conf /etc/samba/smb.confÉditez /etc/samba/smb.conf selon vos préférences, la partie ldap par défaut devrait convenir.
Sous [global], vous devrez ajouter ces trois paramètres qui ne sont pas là par défaut :
ldap ssl = off
nt acl support = yes
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192 SO_KEEPALIVE
cp /usr/share/doc/smbldap-tools-0.9.5/smbldap.conf /etc/smbldap-tools/smbldap.conf
net getlocalsidNotez que net getlocalsid renverra une erreur plusieurs fois jusqu’à la fin, car vous n’avez pas encore entièrement configuré samba – mais produira le sid dont vous avez besoin pour l’étape suivante.
Éditez /etc/smbldap-tools/smbldap.conf et insérez sid, domaine, etc, tout au long du fichier jusqu’à la fin.
Éditez /etc/smbldap-tools/smbldap_bind.conf et changez les deux lignes applicables, changez “secret” par votre mot de passe.
chmod 644 /etc/smbldap-tools/smbldap.conf
chmod 600 /etc/smbldap-tools/smbldap_bind.conf
authconfig-tuiVérifiez que la sortie de authconfig-tui contient :
[ ] L'autorisation locale est suffisanteMaintenant, testez votre configuration samba :
testparmsmbpasswd -w YOUR_ROOT_LDAP_PASS_HERE
smbldap-populatesmbldap-populate demandera le mot de passe, entrez-le.
Démarrer l’installation LDAP Samba
/etc/init.d/smb start
chkconfig smb onAjoutez des utilisateurs/groupes, corrélez entre unix et ldap :
useradd user1
smbldap-useradd -a -G 'Domain Users' -m -s /bin/bash -d /home/user2 -F "" -P user1Obtenez une image des groupes UNIX qui ne sont pas encore là que LDAP suppose :
net groupmap listLa sortie est quelque chose comme :
Domain Admins (S-1-5-21-990788473-1556064292-4137819756-512) -> domain_admins
Domain Users (S-1-5-21-990788473-1556064292-4137819756-513) -> domain_users
Domain Guests (S-1-5-21-990788473-1556064292-4137819756-514) -> 514
Domain Computers (S-1-5-21-990788473-1556064292-4137819756-515) -> 515
Administrators (S-1-5-32-544) -> 544
Account Operators (S-1-5-32-548) -> 548
Print Operators (S-1-5-32-550) -> 550
Backup Operators (S-1-5-32-551) -> 551
Replicators (S-1-5-32-552) -> 552
Ajoutez des groupes corrélés à unix, en utilisant les GID suggérés :
groupadd -g 514 samba_domain_guests
groupadd -g 515 samba_domain_computers
groupadd -g 544 samba_administrator
groupadd -g 548 samba_account_operators
groupadd -g 550 samba_print_operators
groupadd -g 551 samba_backup_operators
groupadd -g 552 samba_replicatorsSi vous souhaitez ajouter un groupe non intégré à LDAP/Samba, par exemple pour contrôler quels utilisateurs peuvent écrire/lire des fichiers sur un partage, et le faire déterminer par des groupes :
smbldap-groupadd -a "People In Our Office"Ensuite, obtenez la sortie de net groupmap list à nouveau et corrélez le nouveau groupe créé # tout comme la dernière fois, en ajoutant le groupe au système unix :
groupadd -g 1001 samba_people_in_our_officeAjoutez des utilisateurs aux groupes LDAP via l’interface web, puis corrélez dans unix :
usermod -a -G UNIX_GROUP_NAME UNIX_USERNAMEAjoutez également des comptes d’ordinateurs à unix, en utilisant le groupe “samba_domain_computers” ci-dessus, et où vos noms d’ordinateurs autorisés se terminent par un “$” :
useradd -M -g 515 -s /bin/false officecomp1$Enfin, mais certainement pas nécessaire, vous voudrez peut-être désactiver les services inutiles que CentOS exécute par défaut. J’ai déterminé que je, spécifiquement, n’ai besoin d’aucun des éléments suivants. Vous pourriez être différent, alors renseignez-vous avant de les désactiver :
chkconfig ntpd off
chkconfig bluetooth off
chkconfig xinetd off
chkconfig smartd off
chkconfig yum-updatesd off
chkconfig rpcidmapd off
chkconfig rpcgssd off
chkconfig restorecond off
chkconfig portmap off
chkconfig pcscd off
chkconfig nfslock off
chkconfig mcstrans off
chkconfig mdmonitor off
chkconfig irqbalance off
chkconfig kudzu off
chkconfig ip6tables off
chkconfig hidd off
chkconfig gpm off
chkconfig haldaemon off
chkconfig autofs off
chkconfig avahi-daemon off
service ntpd stop
service bluetooth stop
service xinetd stop
service smartd stop
service yum-updatesd stop
service rpcidmapd stop
service rpcgssd stop
service restorecond stop
service portmap stop
service pcscd stop
service nfslock stop
service mcstrans stop
service mdmonitor stop
service irqbalance stop
service kudzu stop
service ip6tables stop
service hidd stop
service gpm stop
service haldaemon stop
service autofs stop
service avahi-daemon stop(Optionnel) Mettre à niveau Samba pour que les ordinateurs Windows 7 puissent rejoindre le domaine
Assurez-vous que ldap ssl = off est défini dans /etc/samba/smb.conf, car cela n’était pas requis pour que la version de la distribution CentOS de Samba fonctionne correctement, mais le sera une fois que nous mettrons à niveau (3.0.x contre 3.3.x, qui prend en charge Windows 7).
Nous allons obtenir les RPMs samba plus récents construits pour CentOS depuis Sernet :
cd /etc/yum.repos.d/
wget http://ftp.sernet.de/pub/samba/3.3/centos/5/sernet-samba.repo
yum updateVos paquets samba seront mis à jour depuis le dépôt Sernet.
Depuis la mise à niveau, notre service CentOS pour samba a disparu ; réajoutons-le :
chkconfig --add smb
chkconfig smb onAjoutez maintenant l’ordinateur Windows 7 à Unix (en supposant que le nom de groupe de vos ordinateurs de domaine est “samba_domain_computers”) :
useradd -M -g `cat /etc/group|grep samba_domain_computers|cut -d: -f3` -s /bin/false win7-computername$
usermod -a -G samba_domain_computers win7-computername$Maintenant, rejoignez votre PC Windows 7 au domaine en utilisant ce mini guide officiel de Samba :
http://wiki.samba.org/index.php/Windows7
Recevez de nouveaux articles dans votre boîte de réception.
Aucun spam. Désabonnez-vous à tout moment.