La version Samba 4.14.0 a été lancée, poursuivant le développement de la branche Samba 4 avec une mise en œuvre complète du contrôleur de domaine et du service Active Directory, compatible avec l'implémentation de Windows 2000 et capable de prendre en charge toutes les versions de clients Windows prises en charge par Microsoft, y compris Windows 10. Samba 4 est un produit serveur multifonctionnel, fournissant également une implémentation de serveur de fichiers, de service d'impression et de serveur d'identification (winbind).
Les principales modifications de Samba 4.14 :
- Une modernisation significative de la couche VFS a été effectuée. Pour des raisons historiques, le code de mise en œuvre du serveur de fichiers de serveurs était lié à la gestion des chemins de fichiers, qui était utilisée notamment pour le protocole SMB2, adapté à l'utilisation de descripteurs. Dans Samba 4.14.0, le code assurant l'accès au système de fichiers du serveur a été révisé pour utiliser des descripteurs de fichiers plutôt que des chemins de fichiers. Par exemple, l'appel fstat() est utilisé à la place de stat() et SMB_VFS_FSTAT() à la place de SMB_VFS_STAT().
- La fiabilité de la publication des imprimantes dans Active Directory a été améliorée et les informations sur les imprimantes transmises à Active Directory ont été étendues. Le support des pilotes d'imprimante Windows sur les systèmes ARM64 a été ajouté.
- La possibilité d'utiliser des stratégies de groupe (Group Policy) pour les clients Winbind a été fournie. Un administrateur Active Directory peut maintenant définir des politiques modifiant les paramètres sudoers ou ajoutant un lancement périodique de tâches via cron. Pour activer l'application de politiques de groupe pour le client dans smb.conf, un paramètre ‘apply group policies’ est prévu. L'application des politiques est effectuée toutes les 90-120 minutes. En cas de problèmes, il est possible d'annuler les modifications avec la commande «samba-gpupdate —unapply» ou de les appliquer à nouveau avec la commande «samba-gpupdate —force». Pour visualiser les politiques qui seront appliquées au système, vous pouvez utiliser la commande «samba-gpupdate —rsop».
- Les exigences concernant la version du langage Python ont été élevées. Pour construire Samba, la présence de Python d'une version d'au moins 3.6 est désormais obligatoire. Le support de la construction avec des versions antérieures de Python est interrompu.
- L'outil samba-tool propose des moyens de gestion des objets dans Active Directory (utilisateurs, ordinateurs, groupes). Pour ajouter un nouvel objet dans AD, il est désormais permis d'utiliser la commande « add », en plus de « create ». La commande « rename » est prise en charge pour renommer les utilisateurs, groupes et contacts. La commande ‘samba-tool user unlock’ a été introduite pour débloquer les utilisateurs. Les commandes ‘samba-tool user list’ et ‘samba-tool group listmembers’ ont été dotées des options « —hide-expired » et « —hide-disabled » pour masquer les comptes d'utilisateurs expirés ou désactivés.
- Dans le composant CTDB, responsable des configurations de clusters, un nettoyage des termes inappropriés a été effectué. Au lieu de master et slave lors de la configuration de NAT et LVS, il a été proposé d'utiliser « leader » pour désigner le nœud principal dans le groupe et « follower » pour les autres membres. La commande « ctdb natgw master » a été remplacée par « ctdb natgw leader ». Pour indiquer qu'un nœud n'est pas le leader, le drapeau « follower-only » remplace désormais « slave-only ». La commande « ctdb isnotrecmaster » a été supprimée.
Un éclaircissement a également été donné sur les limites d'application de la licence GPL, sous laquelle le code Samba est distribué, concernant les composants VFS (Virtual File System). La licence GPL exige que toutes les œuvres dérivées soient ouvertes dans les mêmes conditions. Samba propose une interface pour connecter des plugins, permettant d'appeler du code externe. Parmi ces plugins se trouvent les modules VFS, qui utilisent les mêmes fichiers d'en-tête que Samba définissant l'API par laquelle il est possible d'accéder aux services réalisés dans Samba, ce qui signifie que les modules VFS de Samba doivent être distribués sous GPL ou une licence compatible.
L'incertitude concerne les bibliothèques tierces auxquelles font appel les modules VFS. En particulier, certains ont exprimé l'opinion que seuls les modules VFS utilisant des bibliothèques sous GPL et sous des licences compatibles peuvent être utilisés. Les développeurs de Samba ont précisé que les bibliothèques n'appellent pas le code Samba via l'API et n'accèdent pas aux structures internes, et donc elles ne peuvent pas être considérées comme des œuvres dérivées, échappant ainsi à l'exigence d'être fournies sous des licences compatibles avec la GPL.
Source : opennet.ru
