Release , die Entwicklung des Branches fortsetzend mit vollstĂ€ndiger Implementierung des DomĂ€nencontrollers und des Active Directory-Dienstes, der mit der Implementierung von Windows 2000 kompatibel ist und alle von Microsoft unterstĂŒtzten Windows-Client-Versionen, einschlieĂlich Windows 10, bedienen kann. Samba 4 ist ein multifunktionales Serverprodukt, das auch eine Implementierung eines Datei-Servers, Druckdienstes und IdentitĂ€tsservers (winbind) bereitstellt.
SchlĂŒssige in Samba 4.12:
- Die integrierten Implementierungen von kryptografischen Funktionen wurden aus dem Code entfernt, um auf externe Bibliotheken zurĂŒckzugreifen. Als Hauptkryptobibliothek wurde GnuTLS gewĂ€hlt (mindestens Version 3.4.7 erforderlich). Neben der Reduzierung möglicher Bedrohungen durch die Entdeckung von Schwachstellen in den integrierten Implementierungen von Kryptographie-Algorithmen ermöglicht der Umstieg auf GnuTLS auch eine signifikante Steigerung der Leistung beim Einsatz von VerschlĂŒsselung in SMB3. Bei Tests mit der CIFS-Client-Implementierung im Linux-Kernel 5.3 wurde eine Schreibgeschwindigkeit von 3-fach und eine Lesegeschwindigkeit von 2,5-fach festgestellt.
- Ein neuer Backend fĂŒr die Suche auf SMB-Volumes wurde hinzugefĂŒgt, der das Protokoll verwendet , basierend auf der Suchmaschine (frĂŒher wurde ein Backend auf Basis von ). Ebenfalls enthalten ist das Utility âmdfindâ mit einer Implementierung des Clients, das es ermöglicht, Suchanfragen an jeden SMB-Server zu senden, auf dem der RPC-Dienst Spotlight lĂ€uft. Der Standardwert der Einstellung âspotlight backendâ wurde auf ânoindexâ geĂ€ndert (fĂŒr Tracker oder Elasticsearch sollten die Werte âtrackerâ oder âelasticsearchâ explizit festgelegt werden).
- Das Verhalten der Operationen ânet ads kerberos pac saveâ und ânet eventlog exportâ wurde geĂ€ndert. Jetzt wird die Datei nicht mehr ĂŒberschrieben; bei einem Export in eine bereits vorhandene Datei wird ein Fehler ausgegeben.
- In samba-tool wurde die HinzufĂŒgung von Kontaktposten fĂŒr Gruppenmitglieder verbessert. FrĂŒher konnte man mit dem Befehl âsamba-tool group addmemersâ nur Benutzer, Gruppen und Computer als neue Mitglieder hinzufĂŒgen, nun gibt es auch die UnterstĂŒtzung fĂŒr das HinzufĂŒgen von Kontakten als Gruppenmitglieder.
- In samba-tool ist jetzt eine Filterung nach organisatorischen Einheiten (OU, Organizational Unit) oder UnterbĂ€umen erlaubt. Neue Flags ââbase-dnâ und ââmember-base-dnâ wurden hinzugefĂŒgt, um die Operation nur mit einem bestimmten Teilbaum des Active Directory durchzufĂŒhren, zum Beispiel nur innerhalb einer einzigen OU.
- Ein neues VFS-Modul âio_uringâ wurde hinzugefĂŒgt, das eine neue Schnittstelle des Linux-Kernels verwendet. fĂŒr asynchrone Ein-/Ausgabe. Io_uring unterstĂŒtzt das Polling von Ein-/Ausgabe und kann mit Puffern arbeiten (das zuvor angebotene âaioâ-Mechanismus unterstĂŒtzte kein gepuffertes Ein-/Ausgabe). Bei aktiviertem Polling ĂŒbertrifft io_uring die Leistung von aio erheblich. Derzeit wird in Samba auf Basis von io_uring die UnterstĂŒtzung fĂŒr SMB_VFS_{PREAD,PWRITE,FSYNC}_SEND/RECV implementiert, und die Overhead-Kosten fĂŒr die Wartung eines Thread-Pools im Benutzerraum wurden bei Verwendung des standardmĂ€Ăig vorgeschlagenen VFS-Backends reduziert. Zum Kompilieren des VFS-Moduls âio_uringâ ist die Bibliothek und der Linux-Kernel 5.1+ erforderlich.
- Im VFS besteht die Möglichkeit, einen speziellen Zeitwert UTIME_OMIT anzugeben, um die Notwendigkeit zu kennzeichnen, die Zeit in der Funktion SMB_VFS_NTIMES() zu ignorieren.
- In smb.conf wurde die UnterstĂŒtzung der Option âwrite cache sizeâ eingestellt, die nach der EinfĂŒhrung der UnterstĂŒtzung fĂŒr io_uring ihren Sinn verloren hat.
- In Samba-DC und Kerberos wurde die UnterstĂŒtzung der VerschlĂŒsselung mit dem DES-Algorithmus eingestellt. In Heimdal-DC wurde der Code weak-crypto entfernt.
- Das Modul vfs_netatalk wurde entfernt, da es nicht mehr gepflegt wurde und nicht mehr relevant ist.
- Die BIND9_FLATFILE Backend wurde als veraltet erklÀrt und wird in einer der nÀchsten Versionen entfernt.
- Die zlib-Bibliothek ist nun Teil der Build-AbhĂ€ngigkeiten. Die eingebettete Implementierung von zlib wurde aus dem Code entfernt (der Code basierte auf einer alten Version von zlib, bei der die UnterstĂŒtzung fĂŒr VerschlĂŒsselung nicht richtig funktionierte).
- Das Fuzzing-Testing der Codebasis wurde eingerichtet, einschlieĂlich im Dienst
oss-fuzz. WĂ€hrend des Fuzzing-Tests wurden viele Fehler entdeckt und behoben. - Die Anforderungen an die minimale Python-Version wurden von Python
3.4 auf Python 3.5 erhöht. Die Möglichkeit, den Dateiserver mit Python 2 zu bauen, bleibt vorerst erhalten (stellen Sie vor dem AusfĂŒhren von './configure' und 'make' die Umgebungsvariable 'PYTHON=python2' ein).
Quelle: opennet.ru
