Veröffentlichung von Samba 4.12.0

Vorstellung Release Samba 4.12.0, die die Entwicklung des Zweigs fortsetzt Samba 4 mit einer voll funktionsfähigen Implementierung des Domänencontrollers und des Active Directory-Dienstes, der mit der Implementierung von Windows 2000 kompatibel ist und alle unterstützten Microsoft-Versionen von Windows-Clients, einschließlich Windows 10, bedienen kann. Samba 4 ist ein multifunktionales Serverprodukt, das auch die Implementierung eines Dateiservers, eines Druckdienstes und eines Identifizierungsservers (winbind) bereitstellt.

Hauptmerkmale Änderungen In Samba 4.12:

  • Die eingebetteten Implementierungen der kryptografischen Funktionen wurden aus dem Code entfernt zugunsten der Nutzung externer Bibliotheken. Als Hauptkryptobibliothek wurde entschieden, GnuTLS zu verwenden (mindestens Version 3.4.7 erforderlich). Neben der Verringerung möglicher Bedrohungen durch die Entdeckung von Schwachstellen in den eingebetteten Implementierungen von kryptografischen Algorithmen hat der Übergang zu GnuTLS auch zu einer erheblichen Leistungssteigerung beim Einsatz von Verschlüsselung in SMB3 geführt. Bei Tests mit der CIFS-Client-Implementierung aus dem Linux-Kernel 5.3 wurde eine Steigerung der Schreibgeschwindigkeit um das Dreifache und der Lesegeschwindigkeit um das 2,5-Fache festgestellt.
  • Ein neues Backend für die Suche auf SMB-Volumes unter Verwendung des Protokolls Spotlight, basierend auf der Suchmaschine Elasticsearch (früher gab es ein Backend auf Basis von GNOME Tracker). Zudem wurde das Dienstprogramm „mdfind“ mit einer Client-Implementierung hinzugefügt, 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“ ausdrücklich festgelegt werden).
  • Das Verhalten der Operationen 'net ads kerberos pac save' und 'net eventlog export' wurde geändert, sodass sie nun die Datei nicht überschreiben, sondern im Falle des Versuchs, in eine existierende Datei zu exportieren, einen Fehler ausgeben.
  • Im samba-tool wurde das Hinzufügen von Kontaktposten für Gruppenmitglieder verbessert. Während man früher mit dem Befehl 'samba-tool group addmemers' einfach Benutzer, Gruppen und Computer als neue Mitglieder von Gruppen hinzufügen konnte, gibt es jetzt die Unterstützung für das Hinzufügen von Kontakten als Mitglieder von Gruppen.
  • Im samba-tool wurde die Filterung nach organisatorischen Einheiten (OU, Organizational Unit) oder Unterbäumen ermöglicht. Neue Flags „—base-dn“ und „—member-base-dn“ wurden hinzugefügt, die die Ausführung der Operation nur mit einem bestimmten Teilbaum des Active Directory ermöglichen, beispielsweise nur innerhalb einer organisatorischen Einheit (OU).
  • Ein neues VFS-Modul 'io_uring' wurde hinzugefügt, das die neue Schnittstelle des Linux-Kernels nutzt. io_uring für asynchrone Ein-/Ausgabe. Io_uring unterstützt das Polling von Ein-/Ausgabe und kann mit Pufferung arbeiten (das zuvor angebotene „aio“-Mechanismus unterstützte keine gepufferte 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 von SMB_VFS_{PREAD,PWRITE,FSYNC}_SEND/RECV implementiert, und die Overheadkosten zur Aufrechterhaltung des Thread-Pools im Benutzermodus wurden reduziert, wenn der standardmäßig angebotene VFS-Backend verwendet wird. Für den VFS-Modul ‚io_uring‘ ist die Bibliothek erforderlich liburing und der Linux-Kernel 5.1+.
  • Im VFS wurde die Möglichkeit eingeführt, einen speziellen Zeitwert UTIME_OMIT anzugeben, um die Notwendigkeit zu kennzeichnen, die Zeit in der Funktion SMB_VFS_NTIMES() zu ignorieren.
  • In der smb.conf wurde die Unterstützung für den Parameter „write cache size“ eingestellt, der nach der Einführung der Unterstützung für io_uring obsolet wurde.
  • In Samba-DC und Kerberos wurde die Unterstützung für die Verschlüsselung mit dem DES-Algorithmus eingestellt. Im Heimdal-DC wurde der Code weak-crypto entfernt.
  • Das Modul vfs_netatalk wurde entfernt, da es nicht mehr gepflegt wird und an Relevanz verloren hat.
  • Das Backend BIND9_FLATFILE wurde als veraltet erklärt und wird in einer der nächsten Versionen entfernt.
  • Die zlib-Bibliothek wurde in die Build-Abhängigkeiten aufgenommen. Die integrierte zlib-Implementierung wurde aus dem Code entfernt (der Code basierte auf einer alten Version von zlib, in der die Unterstützung für Verschlüsselung nicht einwandfrei funktionierte).
  • Das Fuzzing-Testing der Codebasis wurde eingerichtet, einschließlich des Dienstes
    oss-fuzz. Während des Fuzzing-Tests wurden viele Fehler identifiziert und behoben.
  • Die Anforderungen an die Mindestversion von Python wurden von Python
    3.4 auf Python 3.5 erhöht. Die Möglichkeit, einen Dateiserver mit Python 2 zu erstellen, bleibt vorerst bestehen (vor dem Ausführen von ./configure und 'make' sollte die Umgebungsvariable 'PYTHON=python2' gesetzt werden).

Quelle: opennet.ru

60GB SSD 8Gb DDR4