Samba

Aus ConfigWiki
Version vom 3. Dezember 2010, 03:01 Uhr von Netbreaker (Diskussion | Beiträge)

(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Wechseln zu: Navigation, Suche

Bei der Installation wird die Arbeitsgruppe/Domain abgefragt, wir verwenden hier SAMBA. Vorerst genügt eine Arbeitsgruppenumgebung. Die vorhandenen Benutzer wurden in das TDB-Backend importiert, haben aber noch keine Passwörter bekommen.

Da bei der Installation der sudo-root-Umgebung ein normaler Benutzer angelegt wurde, der nicht im LDAP gelandet ist, verwenden wir diesen gleich wieder um Samba ohne LDAP zu testen und geben ihm als root ein Passwort:

# smbpasswd <username>

Danach fragen wir den Sambaserver nach den verfügbaren Services:

# smbclient -L -U <username> //lenny

Sollten hier Fehler auftreten, sind diese zu beseitigen, bevor versucht wird, LDAP ins Spiel zu bringen.


Samba-LDAP-Konfiguration

Für den Betrieb von Samba mit LDAP ist ein funktionierendes NSS-LDAP, PAM-LDAP wird jedoch nicht benötigt.

In der LDAP-Konfiguration (/etc/ldap/slapd.conf) muß das Samba-Schema aufgenommen werden:

# Schema and objectClass definitions
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

Das Schema muß noch an die richtige Stelle gelegt werden

# cp /usr/share/doc/samba-doc/examples/LDAP/samba.schema.gz /etc/ldap/schema
# gunzip /etc/ldap/schema/samba.schema.gz

Anschließend den LDAP-Server neu starten:

# invoke-rc.d slapd restart 

In /etc/samba/smb.conf sind folgende minimale Anpassungen nötig:

/etc/samba# diff smb.conf.tdb smb.conf
110c110,117
<    passdb backend = tdbsam
---
>    passdb backend = ldapsam
>    ldap suffix = dc=netbreaker,dc=local
>    ldap admin dn = cn=admin,dc=netbreaker,dc=local
>    ldap ssl = no
>    ldap user suffix = ou=people
>    ldap group suffix = ou=group
>    ldap machine suffix = ou=hosts
>    ldap passwd sync = yes

Die Änderungen sollten mit testparm auf Fehler überprüft werden. Danach kann die Serverkonfiguration neu geladen werden:

# invoke-rc.d samba reload

Weiterhin muß das Passwort für ldap admin gesetzt werden:

# smbpasswd -W

Jetzt kann das Samba-Passwort für einen im LDAP hinterlegten Benutzer gesetzt werden:

# smbpasswd testuser

ToDo: Fehlersuche

Failed to find entry for user testuser
Failed to modify password entry for user testuser