Samba, partages et comptes utilisateurs - réseaux et sécurité - Linux et OS Alternatifs
Marsh Posté le 08-03-2009 à 13:20:18
Code :
|
Donc c'est bien un problème de droit.
User1 et User2 sont-ils bien des utilisateurs Samba ?
Code :
|
Marsh Posté le 08-03-2009 à 19:16:20
Oui, je les ai bien rajoutés comme ça
Y a-t-il un moyen de vérifier ? Tu vois autre chose
Marsh Posté le 08-03-2009 à 21:46:50
ReplyMarsh Posté le 09-03-2009 à 17:27:24
Gavrinis a écrit : Pour vérifier si ils sont présent :
|
ce fichier ne contient que des alias ...
Code :
|
Marsh Posté le 09-03-2009 à 23:54:47
Merci pour vos idées ! Hélas, ils sont bien dans smbpasswd, et pdbedit --list me les affiche bien.
Je résume le smb.conf :
[global]
workgroup = WORKGROUP
server string = %h server
wins support = no
include = /etc/samba/dhcp.conf
dns proxy = no
interfaces = 127.0.0.0/8 eth1
bind interfaces only = yes
log file = /var/log/samba/log.%m
max log size = 1000
syslog only = no
syslog = 0
panic action = /usr/share/samba/panic-action %d
security = user
encrypt passwords = true
passdb backend = smbpasswd
obey pam restrictions = yes
unix password sync = no
passwd program = /usr/bin/passwd %u
passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
pam password change = yes
+ le reste du premier post.
Je suis un peu perdu
Marsh Posté le 10-03-2009 à 11:03:02
quels sont les droits sur ton dossier parent /storage
et sinon, tu n'as pas mis le droit d'exécution "x" sur tes dossiers user1, user2 et common
Droit d'exécution (bit de poids faible = 1 en décimal = "x" en représentation symbolique) = droit d'entrer dans le répertoire !!!
Marsh Posté le 10-03-2009 à 13:22:36
fighting_falcon a écrit : quels sont les droits sur ton dossier parent /storage |
il est en 777, avec proprio et groupe = root
Je pensais pas que ça pouvait avoir une incidence pour ça le x
Bon, il faudrait que je mette tout en 777 et que je retire les permissions pour voir. Normalement, l'utilisateur samba correspond bien au compte unix hein ? Dans mon cas, j'ai l'impression que les users tombent pas dans la case des propriétaires mais plutôt dans la case "others".
En tout cas merci, ça me fait des pistes
Marsh Posté le 10-03-2009 à 14:11:07
au niveau droit, perso je mettrais ça :
Les dossiers :
drwxr-x--- ... root family ..................... storage
drwxrws--- 3 root family 3 Mar 7 17:16 common
drwx------ 2 user1 user1 3 Mar 7 16:36 User1
drwx------ 2 user2 user2 3 Mar 7 16:36 User2
avec user1 et user2 membre du groupe family
le "s" sur les droits du groupe pour le répertoire common, s'obtient en faisant "chmod g+s" ou "chmod 2770" et permet de conserver le groupe propriétaire pour tous les fichiers / sous dossiers créés
Marsh Posté le 10-03-2009 à 20:48:27
Arf, avec le x, je peux accéder aux dossiers ! Merci
Mais je ne vois pas très bien le rapport entre ce bit d'execution et l'autorisation d'accès, aurais-tu une explication
Par ailleurs, à quoi sert ce "s" ici ? Je ne trouve rien de clair à ce sujet...
Marsh Posté le 11-03-2009 à 08:43:32
bon, aller, cours de base en linux, ultra rapide ...
droits (de base, je n'évoque pas ici les acl) sur les fichiers (les dossiers n'étant que des fichiers particuliers) :
* divisés en 3 parties : propriétaire, groupe propriétaire, reste du monde
* pour chaque partie, 3 droits possibles : lecture ( notée "r", correspond au 3ème bit de valeur 4), écriture (notée "w", correspond au 2ème bit, de valeur 2) et exécution ( notée "x", correspond au 1er bit, de valeur 1)
* il y a en fait une 4ème partie, qui correspond aux droits "spéciaux" : setuid ( notée "S", correspond au 3ème bit, valeur 4), setgid (notée "S" également, correspond au 2ème bit, valeur 2) et sticky-bit (notée "t", correspond au 1er bit, valeur 1)
Bien, maintenant à quoi ça sert tout ça :
* un fichier a les droits 644, ou autrement 110 100 100, ou encore rw- r-- r-- (en complet, avec les droits spéciaux, on noterai 0644, soit 000 110 100 100, ou --- rw- r-- r--) : le propriétaire peut lire et écrire ( "r" et "w" ), le groupe propriétaire et le reste du monde ne peuvent que lire ( "r" )
* un dossier avec des droits 755 = 111 101 101 = rwx r-x r-x : tout le monde peut lire et éxécuter, seul le propriétaire peut écrire.
Les subtilités :
* exécuter un fichier, bah c'est l'exécuter, s'il s'agit d'un script ou d'un binaire
* exécuter un dossier, c'est pouvoir "rentrer dedans". Quand tu fais cd mon_dossier, il faut que tu aies les droits d'exécution sur le dossier "mon_dossier" pour que la commande "cd" réussisse, c'est comme ça
* lire un fichier, ça me parait évident
* lire un dossier, c'est lister les fichiers qu'il contient ...
si tu as les droits d'exécution sur "mon_dossier" tu pourras faire "cd mon_dossier", par contre si tu n'as pas les droits de lecture sur "mon_dossier", la commande "ls mon_dossier" renverra une erreur ...
* le setuid, setgid sur un fichier exécutable (sur un non exécutable, je ne vois pas l'intérêt) permet de spécifier que lors de son exécution, ce programme conserve son propriétaire / groupe propriétaire. Sans cela, lorsque tu lances un programme alors que tu es identifié comme "toto", le programme tourne sous ton compte "toto", avec les droits de "toto", et ce, même si le propriétaire (au sens système de fichier) du programme est "root"
C'est grâce à cela que des commandes comme "passwd" peuvent fonctionner, et modifier le fichier /etc/shadow alors que c'est toi qui lance la commande ...
* le setuid / setgid sur un dossier, ça permet de spécifier que lorsque tu crées un sous dossier d'un dossier avec setuid / setgid, le propriétaire / groupe propriétaire du sous-dossier n'est pas toi, mais celui du dossier parent et ce paramétrage se conserve ...
* le sticky-bit sur un fichier n'a pas de sens (sauf si je dis des bêtises), sur un dossier, ça permet (exemple : /tmp) que même si tout le monde a tous les droits sur un dossier, que seul le propriétaire d'un fichier peut le supprimer, les autres ne pourront pas
Marsh Posté le 08-03-2009 à 11:43:26
Hello les gens!
J'ai un petit souci avec samba. Je compte partager quelques dossiers sur ma debian pour des PC sous Vista.
Dans mon fichier /etc/samba/smb.conf, je mets donc :
[common]
comment = Public directory
path = /storage/common
valid users = @family
public = no
writable = yes
printable = no
[User1]
comment = User1's private directory
path = /storage/User1
valid users = user1
public = no
writable = yes
printable = no
[User2]
comment = User2's private directory
path = /storage/User2
valid users = user2
public = no
writable = yes
printable = no
Les dossiers :
drw-rw-rw- 3 user1 family 3 Mar 7 17:16 common
drw------- 2 user1 user1 3 Mar 7 16:36 User1
drw------- 2 user2 user2 3 Mar 7 16:36 User2
=> Sous Vista, je me loge en tant que user1. Je vois bien les trois dossiers , mais j'arrive à accéder à aucun d'entre eux car il me dit que j'ai pas les droits nécéssaires.
Si je rajoute pour chaque partage, la ligne :
admin users = LENOMQUIVABIEN (@family dans le premier partage, user1 dans le deuxième, user2 dans le troisième)
=> Tout rentre dans l'ordre : je peux veux voir et faire des trucs sur le dossier Common et User1, mais pas sur sur User2.
Qu'est-ce que j'ai raté ? Pourquoi ça ne marche pas sans ces lignes
---------------
iteme.free.fr | Mon feedback