Tips, Einschränkungen und Hinweise

Leistung generell

Der Raspberry Pi als Samba4-Active Directory-Server kann in einem überschaubaren Team gute Dienste leisten und die Arbeit mit geteilten Dateien, Diensten und Computern sehr erleichtern. Dennoch gibt es einige Einschränkungen, die man kennen und beachten sollte. Und egal, wie sehr man seinen kleinen Pi mag: Ab einer gewissen Domänengröße sollte der Einsatz eines „echten“ Windows-Servers mit angemessener Hardware einfach in Erwägung gezogen werden.

Fehlende Echtzeituhr und fake-hwclock

Aus Kostengründen enthält der Raspberry Pi keine Echtzeituhr (Real Time Clock, RTC). Raspbian umgeht diesen Schönheitsfehler, indem es beim Systemstart mittels network time protocol (ntp) die interne Zeit abgleicht. Das funktioniert auch ganz gut – so lange ein DNS zur Verfügung steht, der die NTP-Server auflöst. Sobald unser Pi selbst zum DNS wird, haben wir ein Problem, denn in dem Moment, wo Samba starten will, versucht es, einige DNS-Updates durchzuführen, bevor es selbst als DNS-Server zur Verfügung steht. Da Samba jetzt mit einer fehlerhaften Zeit arbeitet, kann es diese Updates nicht durchführen (da die Zeitsignaturen abgeglichen werden).

Für dieses Problem gibt es mehrere Möglichkeiten der Abhilfe:

  • Den Pi niemals längere Zeit ausschalten. Das passiert in seiner Eigenschaft als AD-Controller vermutlich ohnehin nicht oft und selten ungeplant.
  • Eine Echtzeituhr kaufen und nachrüsten.
  • Dafür sorgen, dass die korrekte Zeit zur Verfügung steht, ehe es der DNS-Server tut: Mit einem SSH-Cronjob.

Migration

Je länger eine Struktur, zumal „unkontrolliert“, gewachsen ist, umso aufwendiger ist es, sie in ein stark reguliertes und standardisiertes Umfeld wie eine AD-Domäne zu integrieren. Insbesondere kleine Registry-Hacks, lokale Programme und Dienste die womöglich zur Ausführung bestimmte Benutzer( und -rechte) brauchen, können bei der Umstellung viel Kopfzerbrechen und Detektivarbeit erfordern. Schon, weil man Dinge, die seit irgendwann einfach funktioniert haben, schlichtweg eines Tages nicht mehr erinnert.

Offlinedateien sinnvoll nutzen

Wie schon erwähnt, konfiguriert Windows 7 umgeleitete Ordner per Voreinstellung immer so, daß sie auch bei fehlender Netzwerkverbindung zur Domäne lokal bereitstehen. Abgesehen davon, daß das eine willkommene zusätzliche Datensicherung ist und bei hoher Netzwerklast auch für eine bessere lokale Performanz sorgen kann, verbraucht es auch eine Menge Speicherplatz pro Benutzer und Rechner – und Zeit bei jeder Anmeldung und Synchronisation.

Ich habe deshalb für alle Benutzer neben dem Standardordner Dokumente (Eigene Dateien) noch eine zusätzliche Archiv-Freigabe angelegt. Diese ist nicht Teil der Ordnerumleitungen und wird auch nicht automatisch als Offlinekopie auf den Clients angelegt. Hier hat jeder Benutzer, wie schon in Users$, einen Unterordner ganz für sich allein zum Ablegen nicht täglich benötigter Dateien.

Kontingente einrichten

Je nachdem, wie viel Speicherplatz man auf dem NAS zur Verfügung hat, empfiehlt sich ein Blick auf die Kontingent-Funktionen („Quota“). Im Qnap-Administrationsbackend finden sich diese unter Zugriffskontrolle > Kontingent.

Windows-Remoteserververwaltung

Mit diesem Werkzeug lassen sich die Windows-Computer einer Domäne bequem von überall aus konfigurieren, bis hin zu komplexen Hardwarekonfigurationen. Da der Raspberry kein Windows-Server ist, stehen die meisten dieser Funktionen nicht oder nur eingeschränkt zu Verfügung. Die Dateifreigaben unseres NAS-Fileservers müssen also mit dessen Bordmitteln erstellt und konfiguriert werden. Das gleiche gilt für freigegebene Drucker; diese müssen wie beschrieben zunächst von Hand eingebunden und freigegeben werden, ehe sie zum Beispiel durch Gruppenrichtlinien automatisch an Clients zugewiesen werden können.

Windows XP

Totgesagte leben länger, für wen sonst gälte das mehr. Entgegen vielen Anleitungen läßt sich XP auch in einer modernen und auf Windows 7 ausgerichteten Umgebung überraschend gut einbinden. Wir haben mit unseren Veteranen nach Installation der Group Policy Preference Client Side Extensions for Windows XP jedenfalls keine schlechten Erfahrungen gemacht. Die automatische Druckerinstallation per GPO funktionierte ebenso problemlos wie das Bereitstellen von Netzlaufwerken, Desktop und allem was dazugehört.
Die Klage darüber, daß man diese Extensions auf jedem XP-Client irgendwie installieren muß, kann ich nicht teilen, auch wenn ich sie im Bezug auf große Rollouts verstehe. Ich persönlich bin eher froh, daß ich unsere ganz alten Kisten nicht vorzeitig verschrotten mußte.

OpenLDAP

Samba4 kommt mit einem eigenen, integrierten LDAP-System und ich wüßte keinen Grund, dieses nicht auch zu verwenden. Der Einsatz von OpenLDAP als Backend ist möglich, aber wohl nicht ohne Tücken. Genauere Hinweise dazu finden sich im Samba-Wiki.

Freigabepfade mit Samba-Variablen

Samba bietet die Möglichkeit, Freigaben mit dynamischen Pfaden zu Versehen. Hierbei werden Platzhalter (wie zum Beispiel %u für den sich gerade verbindenden Benutzer) verwendet. Nach meiner persönlichen Erfahrung ist das zumindest auf einem Qnap-NAS keine gute Idee, da einige systeminterne Skripte mit diesem an sich wertvollen Feature nicht richtig umgehen können und es so zu unvorhergesehenen Pannen kommen kann (wie zum Beispiel Überlauf der Ramdisk).

Webmin

Einige Schritte in dieser Anleitung erkläre ich nur deshalb anhand dieser Oberfläche, weil sie schlichtweg bei uns aus einigen weiteren Gründen läuft. Alles hier gezeigte geht natürlich auch, wie der meiste Rest, ab der Kommandozeile.

Warnung

Einige Funktionen des Webmin-Samba-Moduls sind für Samba4 einfach (noch) nicht geeignet und können im schlimmsten Fall mit ein paar Klicks ernsthafte und hartnäckige Störungen verursachen, die zu beheben kein Kinderspiel ist. Wer das nicht beachtet und/oder im Ernstfall keine Sicherungen oder sonstige Vorkehrungen getroffen hat, ist selbst schuld!