Veröffentlichung von Samba 4.24.0

Nach 6 Monaten Entwicklung wurde die Version Samba 4.24.0 veröffentlicht, die die Entwicklung des Samba 4-Zweigs mit einer vollständigen Implementierung des Domänencontrollers und des Active Directory-Dienstes fortsetzt, der mit der Windows Server-Implementierung kompatibel ist und alle von Microsoft unterstützten Versionen von Windows-Clients, einschließlich Windows 11, bedienen kann. Samba 4 ist ein vielseitiges Serverprodukt, das auch Implementierungen für Datei-, Druck- und Identifizierungsdienste (winbind) bereitstellt. Der Code des Projekts ist in C geschrieben und wird unter der GPLv3-Lizenz veröffentlicht.

Hauptänderungen in Samba 4.24:

  • Ein neuer VFS-Modul vfs_aio_ratelimit wurde hinzugefügt, um die Intensität (rate-limit) von asynchronen Ein-/Ausgabeoperationen (AIO) zu begrenzen. Die Beschränkungen können in Bytes pro Sekunde oder in Operationen pro Sekunde festgelegt werden. Wenn das festgelegte Limit überschritten wird, beginnt das Modul, künstliche Verzögerungen in asynchrone Operationen einzufügen, um den festgelegten oberen Grenzwert einzuhalten.
  • Im VFS-Modul vfs_ceph_new wurde die Unterstützung für das RPC-Protokoll Keybridge und den FSCrypt-Modus zur Verschlüsselung von Daten und Dateinamen im Dateisystem CephFS hinzugefügt. Die Verschlüsselung kann auf Ebene einzelner Verzeichnisse aktiviert werden.
  • Im VFS-Modul vfs_streams_xattr, das die Speicherung alternativer Datenströme (NTFS alternate data stream) in den erweiterten Attributen von Dateien (xattr) unter Linux ermöglicht, wurde die Einstellung „streams_xattr:max xattrs per stream“ hinzugefügt, die die zulässige Anzahl von xattr definiert, die zur Speicherung von Daten verwendet werden können. Unter Linux ist die Größe von xattr auf 65536 Bytes begrenzt, jedoch ermöglicht das XFS-Dateisystem, mehreren xattr an eine Datei zu binden, was die Verwendung mehrerer xattr zur Speicherung von bis zu 1 MB alternativen Daten erlaubt.
  • Die Unterstützung für die Protokollierung von Informationen im Zusammenhang mit der Authentifizierung wurde implementiert. Debugging-Klassen wie „dsdb_password_audit“ und „dsdb_password_json_audit“ wurden hinzugefügt, um Änderungen an den Attributen des Active Directory wie altSecurityIdentities, dNSHostName, msDS-AdditionalDnsHostName, msDS-KeyCredentialLink und servicePrincipalName im Log zu protokollieren.
  • Die Unterstützung für externe Passwortverwaltungssysteme wie Microsoft Entra ID und Keycloak wurde hinzugefügt, die bei der Passwortänderung eine Passwortzurücksetzungsoperation (SSPR, password reset) durchführen, ohne das alte Passwort an den Controller zu übergeben. Nach Abschluss des Transfers kann die Domain auf unser Hosting gerichtet werden.. Um die Richtlinien zur Passwortgültigkeit zu erfüllen, werden beim Zurücksetzen des Passworts zusätzliche Parameter ("password policy hints") übermittelt, die eine Verarbeitung des Vorgangs wie bei einer regulären Passwortänderung ermöglichen. Samba berücksichtigt jetzt solche Parameter beim Anwenden von passwortbezogenen, lokalen Richtlinien.
  • Die Unterstützung für das Authentifizierungsprotokoll Kerberos PKINIT KeyTrust wurde hinzugefügt, wodurch es möglich ist, auf Samba- und Heimdal-KDC-basierten Domänencontrollern die Methode "Windows Hello for Business Key-Trust Logins" zur Anwendung des PKINIT-Authentifizierungsmechanismus mit selbstsignierten Schlüsseln zu nutzen. Um den öffentlichen Schlüssel in das Tool samba-tool hinzuzufügen und anzuzeigen, wurde der Befehl "user|computer keytrust" hinzugefügt. Informationen über den öffentlichen Schlüssel werden in dem Konto mit dem Attribut msDS-KeyCredentialLink gespeichert.
  • In den Samba- und Heimdal KDC-basierten Domänencontrollern wurde die Unterstützung für die Kerberos PKINIT-Protokollerweiterung zur Schlüsselzuordnung ('Windows Strong and Flexible key mappings') hinzugefügt, die bei der Authentifizierung mit öffentlichen Schlüsseln verwendet wird. Standardmäßig ist nur eine exakte Zuordnung von Zertifikaten zulässig ('strong certificate binding enforcement = full'), jedoch ist auch eine flexible Zuordnung ('strong certificate binding enforcement = compatibility') möglich, die Zertifikate erlaubt, die neuer sind als das Benutzerkonto. Informationen zur Zertifikatszuordnung für das Benutzerkonto werden im Attribut altSecurityIdentities gespeichert.
  • Die Unterstützung für die Protokollerweiterung 'Kerberos PKINIT SID' wurde hinzugefügt, die es ermöglicht, bei der Authentifizierung Zertifikate mit der Object SID zu verwenden. Der Befehl 'user|computer generate-csr' wurde zur Samba-Tool-Anwendung hinzugefügt, um Zertifikate zu signieren.
  • In der KDC (Key Distribution Center)-Implementierung wird standardmäßig die PAC (Privilege Attribute Certificate)-Struktur zurückgegeben, die Informationen zu den Berechtigungen des Benutzers enthält, unabhängig davon, ob das Feld PA-PAC-REQUEST in der Clientanfrage angegeben ist. Um das alte Verhalten wiederherzustellen, gibt es die Einstellung 'kdc always generate pac = no'.
  • Im KDC wurde die Einstellung „kdc require canonicalization“ hinzugefügt. Wenn diese auf „ja“ gesetzt ist, muss der Kunde die Ausführung der Kanonisierung des Benutzernamens bei der Authentifizierung (AS_REQ) anfordern. Server Wird die Kanonisierung nicht angefordert, gibt der Server den Fehler „Benutzer unbekannt“ zurück. In Netzwerken mit Benutzern, die Windows-Betriebssysteme verwenden, sollte die Aktivierung der neuen Einstellung keine Probleme verursachen, da Windows-Clients standardmäßig immer die Kanonisierung anfordern.

    Die verpflichtende Kanonisierung schützt vor Attacks der Klasse „Dollar Ticket“, bei denen Benutzername unterschiedlich angegeben werden können („user“ und „user$“) und unterschiedlich in kanonischer und gewöhnlicher Darstellung verarbeitet werden. Das Wesen des Angriffs besteht darin, dass ein Angreifer beispielsweise im AD ein Computer-Konto mit dem Namen „root$“ erstellen könnte und dieses verwenden kann, um beim KDC ein Ticket anzufordern, indem er in der Anfrage den Benutzernamen „root“ anstelle von „root$“ angibt. Da der KDC den Benutzer „root“ nicht findet, würde die Anfrage im Kontext des Benutzers „root$“ verarbeitet werden und ein Ticket ausgeben, das verwendet werden kann, um sich als Benutzer root über SSH oder NFS mit dem Linux-Server mit SSSD zu verbinden.

  • Im KDC wurde eine Umgehung für den Schutz gegen «Dollar Ticket»-Angriffe hinzugefügt, die für Konfigurationen mit deaktivierten obligatorischen Anfragen zur Kanonisierung von Namen gilt («kdc require canonicalization = no», dieser ist standardmäßig aktiv). Wenn der Client keine Kanonisierung anfordert und der überprüfte Name nicht gefunden wird, führt der Server standardmäßig eine zusätzliche Überprüfung durch, indem er das Zeichen „$“ an den Namen anhängt. Mit der neuen Einstellung «kdc name match implicit dollar without canonicalization = no» kann dieses Verhalten deaktiviert werden, sodass nur exakte Überprüfungen durchgeführt werden (im Kontext des vorgenannten Angriffs wird der Server den Namen „root$“ bei der Anfrage „root“ nicht überprüfen).
  • Im Heimdal KDC ist standardmäßig die Übermittlung von nur kanonisierten Namen (sAMAccountName aus dem PAC) an Kerberos-Dienste aktiviert, anstelle des ursprünglichen Wertes cname. Um das alte Verhalten wiederherzustellen, gibt es die Einstellung «krb5 acceptor report canonical client name = no».
  • Um einen vollständigen Schutz gegen «Dollar Ticket»-Angriffe zu gewährleisten, wird empfohlen, folgende Einstellungen vorzunehmen: strong certificate binding enforcement full, kdc always include pac yes, kdc require canonicalization yes.
  • Um die Schwachstelle CVE-2026-20833 zu beheben, wurde die Standardverschlüsselungsmethode für die Domäne in den KDC-Einstellungen auf AES geändert (Die Einstellung „kdc default domain supported enctypes“ wurde auf „aes128-cts-hmac-sha1-96 aes256-cts-hmac-sha1-96“ gesetzt).

Quelle: opennet.ru

Купить надежный хостинг для сайтов с защитой от DDoS, VPS VDS серверы 🔥 Купить надежный хостинг для сайтов с защитой от DDoS, VPS VDS серверы | ProHoster