2.4.5 Un autre serveur simple en mode user (le même que le précédent (sauf le mode))
Devoir ressaisir son mot de passe alors qu'on l'a déjà fourni
au login est pénible.
Il suffit de passer en mode security = userdans
/etc/samba/smb.conf pour régler ce problème:
#========= Global Settings ========= [global] workgroup = MaMaison netbios name = LeJoliServeur hosts allow = 192.168.52. 127. security = user client code page = 850 character set = ISO8859-1 #======== Share Definitions ======== [public] comment = Dossier public path = /home/samba/public browseable = yes public = yes writable = yes [homes] comment = Home Directories browseable = no writable = yes [profs] comment = Ressources profs path = /home/samba/profs browseable = yes ;public = no writable = yes valid users = @professeurs [instructions] comment = Ressources et instructions à disposition des élèves path = /home/samba/ressources browseable = yes ;public = yes writable = no write list = @professeurs |
Créer de nouveaux utilisateurs au cas où les précédents auraient eu des .PWL créés (et
constater ce qui change lors de l'accès aux partages).
[root@DeepGlue steph]# useradd bonpoil
-g professeurs |
Utiliser la commande testparm qui lit le fichier smb.conf et permet de vérifier qu'il n'y a pas d'erreur de syntaxe.
Et on redémarre le serveur:
[root@DeepGlue steph]# samba restart |
Après la saisie du couple utilisateur/mot
de passe au login, plus aucun mot de passe n'est demandé.
C'est le couple saisi au login qui est utilisé pour les autorisations
qui suivent.
Ainsi, bonpoil n'a plus à saisir
de mot de passe pour accéder aux ressources ([bonpoil], [profs], [public], [instructions])
et parvient à y créer des fichiers et dossiers.
De même, tata n'a pas de mot de passe
à fournir pour accéder aux ressources ([tata], [public], [instructions]), mais il ne peut écrire
que dans \\LeJoliServeur\tataet \\LeJoliServeur\public.
Pour \\LeJoliServeur\instructions, il se voit
opposer un "Accès refusé" à
toute tentative d'écriture.
Pour le partage \\LeJoliServeur\profs, il
se voit demander un mot de passe qui ne peut pas convenir et se solde toujours
par "Mot de passe incorrect. Essayer de nouveau".
(avec un Wnt,W2k ou Wxp il se verrait
proposer une fenêtre avec nom d'utilisateur et mot de passe).
Remarque:
Les combinaisons writable = yes et valid users = @professeurs d'une part
et writable = no et write
list = @professeurs d'autre part ont sensiblement les mêmes
effets, mais il serait possible d'avoir:
[partage] comment = Ressources fournies par martin à destination des professeurs path = /home/samba/partage browseable = yes writable = no write list = martin valid users = @professeurs |
Seuls les professeurs y accéderaient et parmi eux, seul martinpourrait y écrire.
Remarque:
En mode security = user, un utilisateur inconnu
de samba se voit opposer une demande de mot
de passe pour une ressource IPC$.
Il n'est pas possible d'y fournir une bonne réponse.
L'utilisateur doit donc dans ce mode être déclaré dans
/etc/samba/smbpasswd pour accéder aux
ressources du serveur.
Pour permettre à un utilisateur non déclaré d'accéder
aux partages déclarés publics (public =
yes ou guest ok = yes), il faut déclarer
un utilisateur invité de la façon suivante:
guest account = nobody
map to guest = bad user
Un utilisateur invité aura les droits de l'utilisateur nobody dont les droits sont extrêmement
réduits.
Remarque sur le partage [public]:
Problèmes de droits:
En mode security=share, tous les fichiers et
dossiers créés dans le dossier [public](que ce soit par un utilisateur déclaré dans
smbpasswd ou non) ont pour propriétaire nobody et pour groupe propriétaire nogroup.
Dans ces conditions, chaque utilisateur peut supprimer les fichiers et dossiers
créés par son voisin.
En mode security=user par contre, un fichier créé par toto dans ce partage aur pour propriétairetoto et pour groupe propriétaire eleves (le groupe principal de toto).
Un fichier créé par toto dans \\LeJoliServeur\public pourra être supprimé par l'utilisateur martin, mais l'utilisateur martin ne pourra pas le modifier (ou alors il faudra l'enregistrer sous un autre nom). Ci-contre, la modification est refusée avec un message qui
ne traduit pas clairement la situation. |
![]() |
Cette astuce pose un problème:
Si toto écrit une lettre d'injures
à propos de son professeur bonpoil,
seul toto peut supprimer le fichier.
Il peut être intéressant d'autoriser les membres du groupe professeurs à administrer le partage
[public] (c'est-à-dire
qu'ils ont tous les droits (rwx) sur le contenu de ce partage).
Pour cela, ajouter admin users = @professeurs
dans la partie partage [public]du fichier smb.conf.
Si vous voulez en plus autoriser un utilisateur particulier duduche à administrer le partage:
admin users = @professeurs,duduche
Remarque: Forcer les droits par défaut:
Il est possible de modifier les droits par défaut sur les fichiers
créés par un utilisateur au niveau de Linux, à l'aide de la commande umask
(voir les pages liées: http://yannick.plassiard.free.fr/linux/combase-user.htm
ou http://ourworld.compuserve.com/homepages/jp_perroud/memo.htm)
Il est préférable de le faire au niveau de samba pour un accès depuis un client window$:
Voir force mask, user, group,... dans le paragraphe
2.4.7.8
D'autres paramètres...
Ressources:
Le fichier smb.conf (avec
les fins de lignes UNIX): smb.conf.version7 (qu'il faudra renommer en smb.conf).
Sommaire - | Précédent - | Suivant |