
Auch wenn er nicht als Primärer Domänen-Controller (PDC) eines Active Directory fungieren kann, kann ein Samba-Server so konfiguriert werden, dass er als ein Windows-NT4-kompatibler Domänen-Controller erscheint. Ein großer Vorteil dieser Einrichtung ist die Möglichkeit, Benutzer- und Maschinen-Berechtigungsnachweise zentral zu verwalten. Samba kann mehrere Backends benutzen, um die Benutzerinformationen zu speichern.
Dieser Abschnitt behandelt die Einrichtung Sambas als einen primären Domänen-Controller (Primary Domain Controller, PDC) über das Vorgabe-Backend smbpasswd.
Installieren Sie Samba und libpam-smbpass, um die Benutzerzugänge zu synchronisieren, über die folgende Eingabe auf der Befehlszeile:
sudo apt-get install samba libpam-smbpass
Als nächstes konfigurieren SIe Samba durch das Editieren von
/etc/samba/smb.conf
. Der security-Modus sollte auf user gestellt werden und die workgroup sollte zu Ihrer Organisation passen:workgroup = BEISPIEL ... security = user
Fügen Sie im auskommentierten Abschnitt “Domains” folgendes ein oder entfernen Sie die umgebenden Kommentarzeichen:
domain logons = yes logon path = \\%N\%U\profile logon drive = H: logon home = \\%N\%U logon script = logon.cmd add machine script = sudo /usr/sbin/useradd -N -g machines -c Machine -d /var/lib/samba -s /bin/false %u
domain logons: Stellt den netlogon-Dienst zur Verfügung, welcher Samba als Domänen-Controller agieren lässt.
logon path: Legt das Windows-Profil des Benutzers in deren persönlichen Ordner. Es ist auch möglich, eine [profiles]-Freigabe einzurichten und alle Profile in einem einzigen Ordner zu verwalten.
logon drive: Legt den lokalen Pfad des persönlichen Ordners fest.
logon home: Legt den Ort des persönlichen Ordners fest.
logon script: Bestimmt ein Skript, das lokal ausgeführt werden soll, wenn sich ein Benutzer anmeldet. Das Skript muss in der [netlogon]-Freigabe liegen.
add machine script: Ein Skript, welches automatisch den Machine Trust Account anlegt, welcher vom Arbeitsplatz-Rechner benötigt wird, um der Domäne beizutreten.
In diesem Beispiel muss die Gruppe machines mit dem Befehl addgroup erstellt werden. Sehen Sie sich die Grundlagen-Dokumentation für mehr Details an.
Note
Wenn Roaming Profiles nicht genutzt werden, lassen Sie die Optionen logon home und logon path auskommentiert.
Entfernen Sie die Kommentarzeichen um die [homes]-Freigabe, damit logon home abgebildet wird.
[homes] comment = persoenliche Ordner browseable = no read only = no create mask = 0700 directory mask = 0700 valid users = %S
Wenn Sie einen Domänen-Controller konfiguriert haben, müssen Sie die [netlogon]-Freigabe einrichten. Um die Freigabe zu aktivieren, entfernen Sie die Kommentarzeichen um Folgendes:
[netlogon] comment = Netzwerk-Logon-Dienst path = /srv/samba/netlogon guest ok = yes read only = yes share modes = no
Note
Der ursprüngliche Pfad zur netlogon-Freigabe ist
/home/samba/netlogon
, aber laut dem Filesystem Hierarchy Standard (FHS) ist /srv der passende Ort für die Daten, die von diesem System bereitgestellt werden.Erstellen Sie nun den Ordner
netlogon
und eine (vorübergehend) leere Skript-Dateilogon.cmd
:sudo mkdir -p /srv/samba/netlogon sudo touch /srv/samba/netlogon/logon.cmd
Sie können in der Datei
logon.cmd
jeden Windows-Logon-Skriptbefehl eintragen, um die Umgebung des Clients anzupassen.Da root standardmäßig deaktiviert ist, muss eine Systemgruppe mit der Windows-Gruppe Domain Admins verbunden werden, um eine Arbeitsstation in die Domäne aufnehmen zu können. Benutzen Sie das net-Werkzeug von der Befehlszeile aus, indem Sie eingeben:
sudo net groupmap add ntgroup="Domain Admins" unixgroup=sysadmin rid=512 type=d
Note
Machen Sie sysadmin zur bevorzugten Gruppe. Der Benutzer, der genutzt wird, um der Domäne beizutreten, muss Mitglieder der sysadmin-Gruppe sein, genauso wie er Mitglieder der Systemgruppe admin sein muss. Die admin-Gruppe erlaubt die Verwendung von sudo.
Starten Sie Samba abschließend neu, um den neuen Domänen-Controller zu aktivieren:
sudo /etc/init.d/samba restart
Es ist jetzt möglich einen Windows-Client auf dieselbe Weise in die Domäne aufzunehmen wie mit einer NT4-Domäne auf einem WIndows-Server.
Wenn sich ein Primärer Domänen-Controller (PDC) im Netzwerk befindet, ist es gut, auch einen Backup-Domänen-Controller (BDC) zu haben. Dies erlaubt es den Clients sich auch dann zu authentifizieren, wenn der PDC nicht verfügbar ist.
Wenn Samba als BDC eingestellt wird, muss es eine Möglichkeit geben, Informationen mit dem PDC zu synchronisieren. Dafür stehen verschiedene Lösungen bereit, wie beispielsweise scp, rsync oder die Nutzung von LDAPals passdb-Backend.
LDAP zu nutzen ist die robusteste Möglichkeit, Kontoinformationen zu synchronisieren. Beide Domänen-Controller können hierbei dieselben Informationen in Echtzeit nutzen. Allerdings ist die Einrichtung eines LDAP-Servers sehr aufwendig und für nur eine kleine Anzahl von Nutzern und Konten in der Regel zu kompliziert. Auf der LDAP-Seite von Samba (englisch) gibt es hierzu mehr Informationen.
Installieren Sie zunächst samba und libpam-smbpass. Geben Sie folgendes in eine Befehlszeile ein:
sudo apt-get install samba libpam-smbpass
Bearbeiten Sie anschließend
/etc/samba/smb.conf
und entfernen Sie die Kommentarzeichen um Folgendes in [global]:workgroup = BEISPIEL ... security = user
In dem auskommentierten Domains-Abschnitt fügen Sie folgendes hinzu oder entfernen die umgebenden Kommentarzeichen:
domain logons = yes domain master = no
Stellen Sie sicher, dass ein Benutzer Leserechte für die Dateien in
/var/lib/samba
besitzt. Um z.B. den Benutzern der admin-Gruppe zu erlauben, auf die Dateien mit scp zuzugreifen, geben Sie Folgendes ein:sudo chgrp -R admin /var/lib/samba
Synchronisieren Sie anschließend die Benutzerkonten, indem Sie scp benutzen, um den
/var/lib/samba
-Ordner von dem PDC zu kopieren:sudo scp -r benutzername@pdc:/var/lib/samba /var/lib
Note
username muss durch einen gültigen Nutzernamen ersetzt werden und pdc mit dem Hostnamen oder der IP-Adresse des aktuellen PDC.
Abschließend starten Sie samba neu:
sudo /etc/init.d/samba restart
Man kann die Funktionsweise des Backup-Domänen-Controllers überprüfen, indem der Samba-Dienst auf dem PDC gestoppt wird und danach der Versuch gestartet wird, sich auf einem Windows-Client anzumelden, der der Domäne beigetreten ist.
Wenn die Option logon home als Ordner auf dem dem PDC eingerichtet wurde und der PDC nicht erreichbar ist, wird selbstverständlich auch das Home-Laufwerk nicht erreichbar sein. Aus diesem Grund sollte logon home auf einem von PDC und BDC getrennten Dateiserver operieren.
Weitergehende Samba-Konfigurationen finden Sie in der Samba-HOWTO-Sammlung (englisch).
Dieses Handbuch steht auch in gedruckter Form zur Verfügung.
Using Samba vor O’Reilly ist auch eine gute Referenz.
Kapitel 4 der Samba-HOWTO-Sammlung (englisch) erklärt das Aufsetzen eines Primären Domänen-Controllers.
Kapitel 5 der Samba-HOWTO-Sammlung (englisch) erklärt das Aufsetzen eines Backup-Domänen-Controllers.