Samba Installation · 5 min read · Dec 12, 2025

CentOS 5.x Samba-Domänencontroller mit LDAP-Backend - Seite 2

Einrichtung der Fernadministration des LDAP-Verzeichnisses

Bearbeiten Sie /etc/php.ini und stellen Sie sicher, dass memory_limit auf mindestens 32 MB eingestellt ist:

memory_limit = 32M

Als ich zuletzt nachgesehen habe, war die über yum verfügbare Version von phpldapadmin defekt, also werden wir die neueste Version herunterladen und entpacken: Gehen Sie zu http://sourceforge.net/project/showfiles.php?group_id=61828&package_id=177751 & laden Sie die neueste Version herunter. In meinem Fall ergaben sich die folgenden Befehle, Ihr Paket könnte neuer sein:

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.php

Jetzt bearbeiten Sie ./pla/config/config.php und entfernen Sie das Kommentarzeichen von der folgenden Zeile:

$config->custom->jpeg['tmpdir'] = "/tmp";

Neu eingerichtete Software verfügbar machen

service httpd restart  
chkconfig httpd on

Bearbeiten Sie /etc/sysconfig/iptables und kopieren & modifizieren Sie die Zeile über ssh (–dport 22 -j ACCEPT), und fügen Sie direkt danach hinzu (vorausgesetzt, Ihre CentOS-Installation hat die Standard-iptables-Datei erzeugt):

#Erlaube Https://
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT
#Erlaube 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

Jetzt öffnen Sie Ihren Webbrowser und besuchen Sie https://192.168.0.5/samba/pla/ und melden Sie sich mit dem Benutzernamen cn=root,dc=DOMAINNAME & Ihrem Passwort an. Sie sollten in der Lage sein, sich umzusehen und etwas Müll zu sehen.

LDAP und Samba integrieren

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

Bearbeiten Sie /etc/samba/smb.conf nach Ihren Wünschen, der Standard-LDAP-Teil sollte in Ordnung sein.
Unter [global] müssen Sie diese drei Einstellungen hinzufügen, die standardmäßig nicht vorhanden sind:


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 getlocalsid

Beachten Sie, dass net getlocalsid eine Menge Fehler ausgeben wird, bis zum Ende, da Sie Samba noch nicht vollständig konfiguriert haben – aber es wird die SID erzeugen, die Sie für den nächsten Schritt benötigen.

Bearbeiten Sie /etc/smbldap-tools/smbldap.conf und fügen Sie sid, domain, etc überall in der Datei bis zum Ende ein.

Bearbeiten Sie /etc/smbldap-tools/smbldap_bind.conf und ändern Sie beide anwendbaren Zeilen, ändern Sie “secret” in Ihr Passwort.

chmod 644 /etc/smbldap-tools/smbldap.conf  
chmod 600 /etc/smbldap-tools/smbldap_bind.conf  
authconfig-tui

Überprüfen Sie, ob die Ausgabe von authconfig-tui enthält:

[ ] Lokale Autorisierung ist ausreichend

Testen Sie jetzt Ihre Samba-Konfiguration:

testparm
smbpasswd -w YOUR_ROOT_LDAP_PASS_HERE  
smbldap-populate

smbldap-populate wird nach dem Passwort fragen, geben Sie es ein.

Starten Sie die LDAP Samba-Installation

/etc/init.d/smb start  
chkconfig smb on

Fügen Sie Benutzer/Gruppen hinzu, korrelieren Sie zwischen Unix und LDAP:

useradd user1  
smbldap-useradd -a -G 'Domain Users' -m -s /bin/bash -d /home/user2 -F "" -P user1

Holen Sie sich ein Bild der UNIX-Gruppen, die noch nicht vorhanden sind, die LDAP annimmt:

net groupmap list

Die Ausgabe sieht ungefähr so aus:

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

Fügen Sie korrelierende Gruppen zu Unix hinzu, unter Verwendung der vorgeschlagenen GIDs:

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_replicators

Wenn Sie eine nicht integrierte Gruppe zu LDAP/Samba hinzufügen möchten, sagen wir zur Steuerung, welche Benutzer Dateien auf einem Share lesen/schreiben können, und dies nach Gruppen bestimmen möchten:

smbldap-groupadd -a "Menschen in unserem Büro"

Holen Sie sich dann die Ausgabe von net groupmap list erneut und korrelieren Sie die neu erstellte Gruppe # genau wie beim letzten Mal, indem Sie die Gruppe zum Unix-System hinzufügen:

groupadd -g 1001 samba_people_in_our_office

Fügen Sie Benutzer über die Weboberfläche zu LDAP-Gruppen hinzu und korrelieren Sie dann in Unix:

usermod -a -G UNIX_GROUP_NAME UNIX_USERNAME

Fügen Sie auch Computerkonten zu Unix hinzu, unter Verwendung der Gruppe “samba_domain_computers” von oben, und wo Ihre erlaubten Computernamen mit einem “$” enden:

useradd -M -g 515 -s /bin/false officecomp1$

Zuletzt, aber sicherlich nicht notwendig, möchten Sie möglicherweise die unnötigen Dienste deaktivieren, die CentOS standardmäßig ausführt. Ich habe festgestellt, dass ich speziell keine der folgenden benötige. Sie könnten anders sein, also schauen Sie sie sich an, bevor Sie sie deaktivieren:

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

(Optional) Samba aktualisieren, damit Windows 7-Computer der Domäne beitreten können

Stellen Sie sicher, dass ldap ssl = off in /etc/samba/smb.conf eingestellt ist, da dies für die CentOS-Distro-Version von Samba nicht erforderlich war, um ordnungsgemäß zu funktionieren, aber erforderlich sein wird, sobald wir aktualisieren (3.0.x vs 3.3.x, das Windows 7 unterstützt).

Wir werden die neueren Samba-RPMs, die für CentOS gebaut wurden, von Sernet beziehen:

cd /etc/yum.repos.d/  
wget http://ftp.sernet.de/pub/samba/3.3/centos/5/sernet-samba.repo  
yum update

Ihre Samba-Pakete werden aus dem Sernet-Repo aktualisiert.
Seit dem Upgrade ist unser CentOS-Dienst für Samba verschwunden; lassen Sie uns ihn erneut hinzufügen:

chkconfig --add smb  
chkconfig smb on

Fügen Sie jetzt den Windows 7-Computer zu Unix hinzu (vorausgesetzt, der Gruppenname Ihrer Domänencomputer ist “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$

Treten Sie jetzt mit Ihrem Windows 7-PC der Domäne bei, indem Sie diese offizielle Samba-Mini-Anleitung verwenden:
http://wiki.samba.org/index.php/Windows7

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.