De release van Samba 4.14.0 is gepresenteerd, die de ontwikkeling van de Samba 4-tak voortzet met een volledige implementatie van de domeincontroller en Active Directory-service, compatibel met de implementatie van Windows 2000 en in staat om alle ondersteunde Microsoft versies van Windows-clients te bedienen, inclusief Windows 10. Samba 4 is een multifunctioneel serverproduct dat ook bestandsserver-, print- en identificatieserver (winbind) functionaliteit biedt.
Belangrijkste wijzigingen in Samba 4.14:
- Er is een aanzienlijke update van de VFS-laag uitgevoerd. Om historische redenen was de code met de bestandsimplementatie de server gebonden aan de verwerking van bestands paden, die ook voor het SMB2-protocol werd gebruikt, dat werd omgezet naar het gebruik van descriptors. In Samba 4.14.0 is de code die toegang tot het bestandssysteem van de server verleent, herschreven om bestand descriptors in plaats van bestands paden te gebruiken. Bijvoorbeeld, de fstat() oproep is gebruikt in plaats van stat() en SMB_VFS_FSTAT() in plaats van SMB_VFS_STAT().
- De betrouwbaarheid van het publiceren van printers in Active Directory is verhoogd en de informatie over printers die naar Active Directory wordt verzonden, is uitgebreid. Ondersteuning voor Windows-printerdrivers op ARM64-systemen is toegevoegd.
- Groepsbeleid (Group Policy) voor Winbind-clients is nu beschikbaar. De Active Directory-beheerder kan nu beleid definiëren dat de sudoers-instellingen wijzigt of regelmatig taken via cron uitvoert. Voor het inschakelen van groepsbeleidtoepassing voor de client in smb.conf is de instelling ‘apply group policies’ voorzien. Toepassing van beleid gebeurt elke 90-120 minuten. In geval van problemen is het mogelijk om wijzigingen ongedaan te maken met het commando “samba-gpupdate —unapply” of opnieuw toe te passen met het commando “samba-gpupdate —force”. Voor het bekijken van de beleidsregels die op het systeem zullen worden toegepast, kan het commando “samba-gpupdate —rsop” worden gebruikt.
- De vereisten voor de Python-taalversie zijn verhoogd. Voor het bouwen van Samba is nu minimaal Python versie 3.6 vereist. Ondersteuning voor bouwen met oudere Python-releases is beëindigd.
- In de samba-tool utility zijn middelen geïmplementeerd voor het beheren van objecten in Active Directory (gebruikers, computers, groepen). Om een nieuw object aan AD toe te voegen, is het nu toegestaan om de opdracht 'add' te gebruiken, naast 'create'. Voor het hernoemen van gebruikers, groepen en contacten is ondersteuning voor de opdracht 'rename' geboden. Voor het ontgrendelen van gebruikers is de opdracht 'samba-tool user unlock' voorgesteld. In de opdrachten 'samba-tool user list' en 'samba-tool group listmembers' zijn de opties '--hide-expired' en '--hide-disabled' geïmplementeerd om verlopen of uitgeschakelde gebruikersaccounts te verbergen.
- In de CTDB-component, verantwoordelijk voor clusterconfiguraties, zijn ongepaste termen verwijderd. In plaats van master en slave is bij het configureren van NAT en LVS voorgesteld om 'leader' te gebruiken voor de hoofdnode in de groep en 'follower' voor de overige groepsleden. De opdracht 'ctdb natgw master' is vervangen door 'ctdb natgw leader'. Om aan te geven dat een node geen leidinggevende is, wordt in plaats van 'slave-only' nu de vlag 'follower-only' weergegeven. De opdracht 'ctdb isnotrecmaster' is verwijderd.
Daarnaast is er een verklaring gegeven over de reikwijdte van de GPL-licentie waaronder de Samba-code wordt verspreid naar de VFS-componenten (Virtual File System). De GPL-licentie vereist dat alle afgeleide werken onder dezelfde voorwaarden worden opengesteld. In Samba is er een interface voor het aansluiten van plugins, waarmee externe code kan worden aangeroepen. Enkele van dergelijke plugins zijn VFS-modules, waarin dezelfde headerbestanden als Samba worden gebruikt met de API-definitie, via welke toegang kan worden verkregen tot de diensten die in Samba worden geïmplementeerd, waardoor Samba VFS-modules onder de GPL of een compatibele licentie moeten worden verspreid.
Onzekerheid ontstaat met betrekking tot externe bibliotheken waar VFS-modules naar verwijzen. In het bijzonder is er gesuggereerd dat in VFS-modules alleen bibliotheken onder GPL en compatibele licenties mogen worden gebruikt. De ontwikkelaars van Samba hebben verduidelijkt dat bibliotheken niet via de API naar Samba-code aanroepen en niet naar interne structuren verwijzen, waardoor ze niet als afgeleide werken kunnen worden beschouwd en niet onder de vereiste licenties die compatibel zijn met GPL hoeven te worden verstrekt.
Bron: opennet.ru
