Samba 4 kommt

Das alljährliche Treffen der Entwickler und Nutzer der freien Windows-Server-Alternative Samba fand dieses Jahr Anfang Mai statt. Herausragendes Thema waren die beachtlichen Fortschritte, die das Entwicklungsteam mit der kommenden Version 4 gemacht hat.

In Pocket speichern vorlesen Druckansicht
Lesezeit: 6 Min.
Von
  • Peter Siering

Mittlerweile zum neunten Mal hatte die SerNet GmbH Anfang Mai zum Samba-Klassentreffen nach Göttingen eingeladen. Eintägige Tutorials zur AD-Integration mit Kerberos und LDAP sowie zum Clustern mit der Eigenentwicklung CTDB leiteten die Konferenz ein. An zwei Tagen gab es Vorträge rund um Samba. Erstmals haben die Samba-Entwickler die Fortschritte gebündelt gezeigt, die sie bei dem Nachbauen von Microsofts Active Directory gemacht haben.

Samba hat nicht nur ein neues Logo bekommen, sondern auch ein Lifting der Webseiten.

Das für produktiv genutzte Systeme empfohlene Samba 3 arbeitet bisher lediglich als Mitglied eines Active Directory. Es kann aber diese von Microsoft mit Windows 2000 eingeführte Technik, um Systeme in einem Netzwerk zu einem Verbund zusammenzuschließen und Benutzer zentral zu verwalten, nicht selbst bereitstellen. Die Version 3 bietet bisher nur den Vorgänger, das NT4-Domänenmodell an. Das heißt heute oft, dass auch eingefleischte Open-Source- und Samba-Fans um den Einsatz eines Windows-Servers nicht herumkommen.

Samba 4, das der Samba-Initiator Andrew Tridgell 2003 als „Forschungsprojekt“ startete, soll den freien Server zu einem vollwertigen Active-Directory-Server machen. Doch obwohl das Ziel schon lange einen Namen hat, schien der Weg dorthin unerreichbar weit. Das Samba-Entwicklungsmodell bestand viele Jahre darin, Microsoft-Clients und -Server zu belauschen, die Mitschnitte zu analysieren und dann eine eigene Implementierung zu stricken – ein sehr zeitaufwendiges Verfahren.

Seitdem Microsoft von Gerichten dazu verdonnert worden war, seine Protokollspezifikationen offenzulegen und dem Anfang 2008 auch nachgekommen war, hat Samba 4 wieder neue Fahrt aufgenommen; einige Samba-Entwickler hatten sogar schon vorher Zugang zu der Dokumentation erhalten. Erstmals rückt damit ein alternatives Produkt zur Bereitstellung eines Active Directory in Griffweite.

Mit konkreten Ankündigungen zur Fertigstellung von Samba 4 hielten sich die Entwickler auf der SambaXP zurück; man konnte wohl heraushören, dass es noch im Lauf dieses Jahres, spätestens aber zur zehnten SambaXP so weit sein könnte. Die Alpha 12 von Samba 4 sollte demnächst erscheinen. Für den produktiven Betrieb eignet sie sich nicht, aber ein Parallelbetrieb mit Windows-Servern sollte dann möglich sein. Das Samba-Team erhofft sich von den Alphas Rückmeldungen der Benutzer.

Der eigentliche Durchbruch mit Samba 4 gelang schon im September 2009 nach dem alljährlichen Treffen der SMB-Welt, dem CIFS-Workshop. Einige Samba-Entwickler reisten zu Microsoft und nahmen sich den Code vor, der für die automatische Verteilung der Verzeichnisdaten über die Server eines Active Directory gedacht ist, „Directory Replication Service“ (DRS) genannt.

Große Freude bei Hongwei Sun von Microsoft, Stefan Metzmacher, Andrew Tridgell und Anatoliy Atanasovnach aus dem Samba-Team (von links nach rechts): Nach einer intensiven Arbeitswoche bei Microsoft akzeptieren Samba- und Windows-Server einander als gleichberechtigte Partner im Active Directory.

Andrew Bartlett erzählt in seinem Blog detailliert, wie es die Samba-Teammitglieder mit Versuch und Irrtum auf der einen und Microsoft-Mitarbeiter und Windows-Quelltext auf der anderen Seite erreicht haben, dass Samba 4 und Windows Server 2008 R2 einander als gleichwertige Partner akzeptierten – wenige Minuten bevor das Taxi die Samba-Teammitglieder zum Flughafen abholen sollte.

Viele Vorträge der SambaXP befassten sich genau damit. Andrew Tridgell zeigte, wie man mit den gängigen Windows-Werkzeugen auf Samba arbeiten kann. Mit dem Windows-Admins bekannten dcpromo ließ er einen Windows-Server Mitglied eines von Samba 4 bereitgestellten Active Directory werden. Mit den gängigen Werkzeugen manipulierte er Benutzerdaten im Verzeichnis, die sich dank Replikation automatisch auf dem anderen Server wiederfanden.

Reichlich Applaus kassierte Kai Blin, der Ähnliches auf einem Embedded System zeigte – „Active Directory für die Hemdentasche“. Dass trotzdem noch reichlich Details zu implementieren sind, machte schon Tridgell deutlich. Beispiele brachte dann Nadezhda Ivanova, die für Cisco an Samba arbeitet. Sie implementiert ACLs im von Samba bereitgestellten Verzeichnis. Noch hat Samba 4 dort nur Administratoren und den Rest der Welt unterschieden; letzterer durfte „nur“ fast alles lesen (Passwörter ausgenommen).

Es gibt noch viele weitere offene Baustellen; auf der To-do-Liste stehen unter anderem: Read-Only-Domain-Controller, Multi-Domain-Forests, Replikation der sysvol-Freigabe, Update-Pfade von Samba 3 NT-Domains und LDAP-Installationen, Replikation der DNS-Daten via DRS. Auch mangelt es noch an zahlreichen Administrations-Hilfen auf Samba-Seite.

Bis zur Fertigstellung haben die Samba-Entwickler auch noch ein grundsätzliches Problem zu lösen. Nach dem Auftrennen der Entwicklung der Version 3 und 4 in separaten Quelltextbäumen (Forschungsansatz) und dem späteren Zusammenführen ist nur die Rollenverteilung klar: Für die Datei- und Druckdienste wird weiterhin der Samba-3-Code zuständig sein. Den Active-Directory-Teil wird Samba 4 einbringen. Wie die beiden Komponenten verheiratet werden, ist unklar, ob durch Link-Tricks, kooperierende Dämonen oder über ein Plug-in-Konzept.

Auch hinter den Kulissen hat sich einiges getan. Samba 3 und 4 teilen dank des Zusammenfassens der Quellbäume wieder mehr Code miteinander. Das Build-System nutzt jetzt waf – das Übersetzen geht in einem Bruchteil der Zeit und belegt nur noch ein Zehntel des Platzes. Hieß es vor einigen Jahren noch JavaScript, setzt Samba jetzt auf Python: Nicht nur bei den Entwicklungswerkzeugen, sondern auch für die Erweiterungen ist Python jetzt die Sprache der Wahl. Samba selbst enthält schon rund 50 000 Zeilen Python-Code.

Auch Microsoft war dieses Jahr wieder mit von der Partie: Tom Talpey stellte das Bemühen des Konzerns vor, Unix-Erweiterungen für SMB2 zu definieren. Microsoft will dabei mit am Tisch sitzen und auch die Bedingungen mitgestalten, etwa dass Beitragende bestimmte Rechte einräumen müssen. Die Implementierung soll die Community besorgen. Die Protokollspezifikation soll dabei den typischen Weg der IETF-Dokumente nehmen und nicht Bestandteil der Microsoft-Dokumentationen werden.

[1] SambaXP-Konferenz-Website: www.sambaxp.org

[2] Samba-Wiki mit diversen Hilfen zum Betrieb von Samba 4 als Active Directory: http://wiki.samba.org (ps)