Onglet Samba : Configuration du serveur de fichiers
EOLE propose un contrôleur de domaine Active Directory[1] situé dans le conteneur[2] nommé addc
couplé à un serveur de fichiers en mode membre sur la partie "maître" du serveur.
Cela signifie qu'il permet une authentification centralisée des ouvertures de session sur les postes clients et qu'il fournit un ensemble de partages aux utilisateurs (dossier personnel, dossier de groupes, partages communs, d'icônes, etc.).
Les droits d'accès sont différents suivant les groupes auxquels l'utilisateur appartient.
Sur le module Scribe, un professeur aura globalement plus de droits qu'un élève. Il a également à sa disposition des outils lui permettant d'interagir avec les élèves (observation, blocage, distribution de documents, etc.).
Les variables proposées dans l'onglet Samba
de l'interface de configuration agissent principalement sur la partie serveur membre du module.
Nom du serveur de fichiers
Le champ Nom du serveur de fichiers
(nom du serveur dans le domaine AD) est le nom qui pourra être utilisé pour accéder au serveur de fichiers avec la syntaxe \\machine
.
Attention
Sa taille maximale est fixée à 15 caractères et il ne doit pas être modifié une fois le module instancié.
ComplémentCaractères autorisés et non autorisés
Les noms d'ordinateur au format NetBIOS[3] peuvent contenir tous les caractères alphanumériques à l'exception des caractères étendus suivants :
- la barre oblique inverse (\) ;
- marque de barre oblique (/) ;
- signe deux-points (:) ;
- astérisque (*) ;
- point d'interrogation (?) ;
- guillemet (") ;
- inférieur à (<) signe ;
- signe supérieur à (>) ;
- barre verticale (|).
Attention, les noms peuvent contenir un point, mais ne peuvent pas commencer par un point.
Pour en savoir plus sur les conventions de nommage dans un domaine, vous pouvez consulter la page :
Fichiers invisibles sur les partages
Tous les noms de fichiers commençant par un point sont invisibles dans les partages Windows.
Dans la configuration de Samba, plusieurs types de fichiers ont été ajoutés pour les rendre invisibles des utilisateurs :
desktop.ini : les fichiers
desktop.ini
générés par le fonctionnement de Windows sont cachés à l'utilisateur (hide files = /desktop.ini/ dans le fichiersmb.conf
). En mode expert, la liste des fichiers cachés peut être personnalisée grâce à la variableFichiers à masquer dans le partage
;$recycle.bin : les fichiers
$recycle.bin
générés par le fonctionnement de Windows sont cachés et inaccessibles par l'utilisateur (veto files = /$RECYCLE.BIN/ dans le fichiersmb.conf
).
Mode multi-établissement
Pour certaines structures, une communauté de communes par exemple, il peut être intéressant de n'avoir qu'un seul module Scribe ou AmonEcole pour gérer plusieurs établissements.
Pour activer le support du mode multi-établissement il faut passer la variable Support du multi-établissement
à oui
.
Le paramétrage du mode multi-établissement s'effectue ensuite dans l'interface d'administration EAD.
Attention
Sur les serveurs en production, l'ajout des groupes profs-etab
et eleves-etab
nécessite l'application du script /usr/share/eole/backend/creation_etab_eleves_profs.py
.
Configuration avancée du serveur Samba
Création des comptes
Un utilisateur type "élève" est associé à une classe et à des options.
Écran
- 1 Dossier options
- 2 Répertoire
- 3 Identifiants
À partir d'EOLE 2.8.1, il est possible :
- de désactiver la création automatique des groupes "options" lors de l'importation des comptes ;
- de désactiver la création du dossier privé qui est accessible uniquement par l'élève.
Toujours à partir d'EOLE 2.8.1, il est possible de modifier l'identification des élèves présentée aux enseignants au niveau des dossiers classes et options.
Afin de faciliter les interactions, la possibilité d'inverser le prénom et le nom dans le login à été implémenté.
Truc & astuce
Le script de secours suivant permet de re-générer les liens présents dans les sous-dossiers du répertoire /home/classes
:
/usr/share/eole/backend/regen_class_link.py
Une fonctionnalité équivalente a été implémenté au niveau du nommage des devoirs élèves ramassés par les enseignants.
Écran
Attention
L'inversion prénom/nom ne peut être fonctionnelle que dans le cas où les login sont générés avec un "."
Soit au format : prenom.nom, p.nnn ou prenom.n
Concrètement, sur les postes clients cela se traduit uniquement par un changement du nom des répertoires des élèves dans le partage "classe" et/ou le nom des fichiers de "devoir".
Libellé du serveur Samba
Par défaut le libellé est le nom de l'établissement, il apparaît sur les stations clientes, il peut être modifié à votre convenance.
Activer la corbeille Samba
Par défaut lorsque l'on supprime un fichier depuis un partage Samba, il est directement supprimé.
L'option Activer la corbeille Samba
permet de paramétrer Samba pour que les fichiers supprimés soient déplacés dans un répertoire "corbeille".
Le nom proposé par défaut (.corbeille
) définit un répertoire qui sera masqué pour les utilisateurs.
Il est possible de rendre ce répertoire accessible en lui donnant un autre nom (exemple : corbeille
).
La durée de conservation des fichiers supprimés est également paramétrable.
Remarque
Les fichiers déplacés dans la corbeille sont inclus dans le calcul de l'espace disque occupé par l'utilisateur. Pour limiter les dépassements de quota disque, il est conseillé de paramétrer une durée de conservation assez courte.
Écran
Nombre de minutes d'inactivité avant déconnexion automatique d'accès à un fichier
Cette option globale définit le nombre de minutes que Samba va attendre un client inactif avant de fermer sa session avec le serveur Samba. Un client est considéré comme inactif quand il n'a pas de fichiers ouverts et qu'il n'envoie aucune donnée.
Si la valeur de cette option est mise à 0
, cela qui signifie que Samba ne fermera jamais aucune connexion et cela peut conduire à une consommation inutile des ressources du serveur par les clients inactifs.
Pour la plupart des réseaux, l'utilisation de cette option ne posera pas de problème car la reconnexion du client sera réalisée de manière transparente pour l'utilisateur.
Fichiers à masquer dans le partage
Cette option permet de personnaliser la liste des fichiers qui doivent être cachés à l'utilisateur.
Attention
Il est impératif de respecter le format attendu par le fichier de configuration de Samba à savoir :
/desktop.ini/fichier2/fichier3/
Activer les verrous opportunistes (oplocks)
Les verrous opportunistes augmentent les performances du serveur en activant un accès exclusif aux fichiers.
Option à non
par défaut. Les verrous sont gérés côté client et certaines applications ne gèrent pas les verrous.
Annoncer Spoolss comme architecture x64
Le service d'impression de Samba se présente par défaut comme étant 32-bit ("Windows NT x86"). Annoncer Spoolss comme architecture x64
, disponible à partir de la version 2.5.2 d'EOLE, permet au serveur d'impression de se présenter comme étant 64-bit (Architecture = x64 de Windows) ce qui permet d'ajouter des pilotes d'imprimante 64 bits.
Activer des partages supplémentaires
Passer Activer des partages supplémentaires
à oui
permet d'activer un ou plusieurs nouveaux partages. Pour ajouter un ou plusieurs partages il faut cliquer sur le bouton + Nom du partage
.
Les options à saisir pour chaque partage supplémentaire sont :
le
Nom du partage
;le
Nom absolu du répertoire à partager
= chemin Unix du répertoire à partager ;la
Visibilité du partage
= visibilité dans le voisinage réseau ;le
Partage est en lecture/écriture
:- si la variable est à
oui
→ lecture/écriture ; - si la variable est à
non
→ lecture seule.
- si la variable est à
Attention
L'activation et la déclaration d'un partage supplémentaire ne crée pas le répertoire sur le disque. Il faut réaliser cette opération manuellement et affecter des droits adaptés sur le répertoire.
Partages manuels
Le fichier smb.conf
est re-généré à chaque reconfiguration du serveur (commande reconfigure
) et également lors de l'ajout d'un partage ou d'un groupe avec partage.
Ce fichier est généré à partir du template : /usr/share/eole/creole/distrib/smb.conf
et des partages déclarés dans l'annuaire LDAP.
Le template, qui contient principalement la section [global]
, peut éventuellement être patché.
La gestion des ACLs en elle-même est totalement indépendante de la configuration de Samba.
Il est possible de déclarer un partage supplémentaire manuellement en plaçant un fichier (possédant l'extension .conf
) décrivant le partage dans le répertoire /etc/samba/conf.d/
.
Sa prise en compte nécessite un reconfigure
.
Complément
Pour plus d'informations, vous pouvez consulter la page de manuel :
# man smb.conf
ou
https://manpages.ubuntu.com/manpages/jammy/en/man5/smb.conf.5.html
Autoriser l'ouverture de flux à partir d'un port source
Lors de diagnostic il peut être utile d'utiliser la commande nmblookup
pour déterminer l'adresse IP du ou des serveurs contrôleurs de domaine sur le réseau local.
Pour que l'échange puisse se faire en UDP via le port 137 il est nécessaire que le serveur EOLE puisse en autoriser l'accès.
Pour activer cette fonctionnalité il faut passer Autoriser l'ouverture de flux à partir d'un port source
à oui
.
Les options pour le port autorisés et le protocole peuvent être laissés par défaut. Par contre il est important de choisir l'interface sur laquelle aura lieu cette autorisation.
Il est possible d'ajouter des autorisations sur plusieurs interfaces en cliquant sur le bouton Port source à partir duquel les flux sont autorisés
.
Paramètres système
Écran
- 1
- 2
- 3
- 4
- 5
- 6
quota_hard_limit_percent
Valeur permettant le calcul de la limite dure du quota associé aux nouveaux utilisateurs.
En cas de forte sollicitation d'accès à un partage Samba (nombre de fichiers ouverts par Samba supérieur à 20000) l'augmentation des valeurs sur les 3 paramètres ci-dessous permet d'éviter les pertes d'accès au partage :
Nombre maximum d'instances inotify pour un UID réel
Nombre maximum de surveillants associés à une instance inotify
Nombre maximum d'événements mis en file d'attente dans une instance inotify
Remarque
Ces variables sont utilisées dans /etc/sysctl.conf
et /etc/sysctl.d/99-sysctl.conf
.
Chaque inotify utilisée occupe 540 octets (système 32 bits) ou 1 ko (double sur 64 bits).
La variable Optimisations réseau
permet de personnaliser les options de la directive Samba : socket options.
Cette option vous permet de définir les options de socket à utiliser lors des échanges avec le client. Les options de socket sont des contrôles sur la couche réseau des systèmes d'exploitation qui permettent de régler la connexion.
Activer l'envoi de courriel en cas de dépassement des quotas
Un envoi de courriel peut être activé en cas de dépassement de quotas. L'envoi se fait une fois par jour durant les 7 jours alloués pour résoudre le problème d'espace disque.