Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 15/04/2008, à 01:41

NiRaDo

Gestion des droits d'accès et répertoires parents

Bonjour, j'avoue avoir une soudaine incompréhension dans la gestion des droits d'accès.

J'explique la situation. J'ai un répertoire personnel, /home/dorian qui est en chmod 700.

Je crée un groupe "univ" :

sudo addgroup univ

Je crée un user, admettons "ramses" :

sudo adduser ramses

J'associe le groupe 'univ' à l'utilisateur ramses et dorian. Dans le fichier /etc/group j'ai donc :

...
mythtv:x:122:dorian
ntp:x:123:
ramses:x:1004:
univ:x:1005:ramses,dorian

Dans /home/dorian j'ai le répertoire 'universite' que j'associe au groupe 'univ'. pour cela :

sudo chgrp -R univ universite

J'associe à 'universite' le droit de lecture/consultation pour les utilisateurs du groupe 'univ' :

chmod -R 750 ~dorian/universite

Si je fais un ls -l j'obtiens bien :

drwxr-x--- 12 dorian univ      4096 2008-03-12 20:19 universite

Les sous-répertoires et fichiers ont le même chmod...

Pourtant, si je me connecte en tant que ramses et que je tente d'accéder au répertoire ~dorian/universite ... :

dorian@dorian-laptop:/home/ramses$ su ramses
Password: 
ramses@dorian-laptop:~$ cd ~dorian/universite/
bash: cd: /home/dorian/universite/: Permission denied
ramses@dorian-laptop:~$

J'obtiens :

bash: cd: /home/dorian/universite/: Permission denied

La question est : pourquoi ? Est-ce le répertoire parent dont on vérifie les droits d'accès ?

Il me semble que non, car si je fais un chmod 777 ~dorian/test/rep1 suivit d'un chmod 000 ~dorian/test et que je fais un cd ~dorian/test/rep1 ça fonctionne...

J'aimerais comprendre mon problème.

Si quelqu'un pourrait m'éclaircir, je lui en serais très reconnaissant.

Merci d'avance smile.

edit : je précise que si je fais un chmod 755 à mon /home/dorian ça fonctionne... mais ça devrait fonctionner en 700 aussi !

Dernière modification par NiRaDo (Le 15/04/2008, à 01:43)

Hors ligne

#2 Le 15/04/2008, à 08:53

snapshot

Re : Gestion des droits d'accès et répertoires parents

heuu.. oui ! il faut avoir des droits sur tous les répertoires sur lesquels on "passe".

Autrement dit, dans le chemin "/home/dorian/universite/" il ne sert à rien d'avoir des droits sur universite si on ne les a pas sur dorian... C'est un peu logique d'ailleurs : on ne peut pas aller lire une branche si on n'a pas accès au tronc.

Le seul truc que tu peux faire, c'est de donner le droix X mais pas le droit R au répertoire dorian (pour le (g)roupe ou les (o)autres) : ça donne ainsi le droit de "passer" dans le répertoire (R) tout en interdisant de faire un ls /home/dorian (X)


Pensez à mettre [Résolu] dans le titre une fois votre problème réglé !

Hors ligne

#3 Le 15/04/2008, à 13:26

NiRaDo

Re : Gestion des droits d'accès et répertoires parents

Coucou.
Merci pour ta réponse.

Je vois, mais c'est donc bien spécifique au fait de devoir "exécuter" le répertoire, parce que par exemple si j'ai :

~dorian/test en chmod 500
~dorian/test/rep en chmod 700

Je vais pouvoir écrire dans ~dorian/test/rep ...

Donc les répertoires fils n'héritent pas des droits de leurs parents SAUF pour le droit d'exécution apparemment.

C'est bien ça ?

Hors ligne

#4 Le 15/04/2008, à 23:30

snapshot

Re : Gestion des droits d'accès et répertoires parents

oui c'est exactement ça !

Autrement dit, à partir du moment ou il te manque un droit X dans un chemin, la branche est coupée.

Le système de sécurité des fichiers d'Unix, bien que se voulant simple, est finalement plein de surprises !


Pensez à mettre [Résolu] dans le titre une fois votre problème réglé !

Hors ligne

#5 Le 17/04/2008, à 21:55

NiRaDo

Re : Gestion des droits d'accès et répertoires parents

D'accord, merci pour cet éclaircissement.

Je ne sais pas si ça vaut le coup de créer un nouveau topic pour ça, mais je me demande : que se passe-t-il concrètement au niveau des droits de fichiers lorsqu'on en envoi un par mail par exemple ?

Imaginons : chmod 755 photo.jpg

Je l'envoie par mail à une personne.
Cette personne peut quand même modifier photo.jpg.

Dans ce cas là ça veut dire que lors d'un envoi les droits ne sont pas conservés ?

Si oui, est-ce valable dans toutes procédures de transfert ? Ça me semble louche.

Désolé, mais c'est assez vague dans ma tête.

Hors ligne

#6 Le 17/04/2008, à 22:01

dom.reboud

Re : Gestion des droits d'accès et répertoires parents

Effectivement, quand tu envoies ton fichier par email en pièce jointe, tu envoies une copie de ce fichier, et le protocole SMTP ne gère pas de permissions.
D'ailleurs, comment le pourrait-il ? Sur la machine réceptrice, c'est un autre monde avec d'autres users/groups.

Hors ligne

#7 Le 17/04/2008, à 22:06

iridaoc

Re : Gestion des droits d'accès et répertoires parents

Bonsoir,

Ce qu'il faut bien comprendre c'est que les droits sont associés au système de fichiers
et pas au fichier lui même.
Sous GNU/linux ubuntu le système de fichier par défaut est ext3 et c'est là que sont gérés les droits.

Sous windows il existe deux systèmes connus FAT et NTFS qui ont une gestion
des droits très différente. En copiant un fichier d'une partition  FAT vers une NTFS,
les droits après copie seront forcément différents.

Hors ligne

#8 Le 18/04/2008, à 00:20

snapshot

Re : Gestion des droits d'accès et répertoires parents

héhé smile ce problème a été nommé par les théoriciens de la sécurité. Je l'ai vu lors de mes études mais je ne me rappelle plus son nom... et sans nom, pas de recherche possible ! honte à moi roll

Le problème est le suivant : imagine dans une entreprise un fichier hautement confidentiel. Les droits d'accès sur ce fichier sont très restrictifs. Cependant, comme tu le décris, une personne ayant le droit de lecture sur celui-ci peut le lire, et écrire le flux de données dans un autre fichier.
Ce nouveau fichier lui appartenant, elle peut le diffuser à la terre entière, bien que la source soit très protégée.

En fait, ce problème ne se limite pas à l'informatique : pas besoin d'un mail pour divulguer un secret bien gardé. A partir du moment où tu disposes d'une information, tu en fais ce que tu veux, qu'elle soit secrète ou non.


Pensez à mettre [Résolu] dans le titre une fois votre problème réglé !

Hors ligne

#9 Le 18/04/2008, à 18:55

NiRaDo

Re : Gestion des droits d'accès et répertoires parents

Merci pour toutes vos réponses.

iridaoc a écrit :

Bonsoir,

Ce qu'il faut bien comprendre c'est que les droits sont associés au système de fichiers
et pas au fichier lui même.
Sous GNU/linux ubuntu le système de fichier par défaut est ext3 et c'est là que sont gérés les droits.

Dans ce cas, comme c'est géré par le système de fichier, si mon disque dur externe est en ext3 et que j'ai associé certains droits sur les fichiers (par exemple seul moi peut lire écrire exécuter), ça voudrait dire que si je branche ce fameux disque dur externe sur l'ordi d'un autre il ne pourra pas lire les fichiers ?

Hors ligne

#10 Le 18/04/2008, à 21:58

snapshot

Re : Gestion des droits d'accès et répertoires parents

non. c'est le système en cours d'exécution qui décide en fonction des drapeaux sur les fichiers s'il doit faire passer ou non les données du fichier à l'utilisateur qui le demande.

Si tu montes ton disque dur externe sur un autre système, c'est ce système qui va décider qui a le droit de lire les fichiers. Sur ce système étranger, seul les UID (une valeur numérique) restent ; les noms  « dorian » et « ramses » n'étant pas pas stockés. Admettons que Dorian ait l'UID 1001 et Ramses 1002. Si sur le nouveau système, Alice a l'UID 1001, alors le système croira que les fichiers de Dorian appartiennent à Alice... car ils ont le même UID. Et même si ce n'était pas le cas, n'importe qui ayant les droits root sur le nouveau système peut faire ce qu'il veut des fichiers. C'est bien le système en cours d'éxécution qui décide. Si la machine est éteinte ou le système différent, les fichiers sont nus est accessibles à tous.

Exemple : perte du mot de passe root. Pour résoudre ce problème, il suffit de booter avec le live cd (sur lequel le droit root est donné d'office), de monter la partition dans laquelle sont stockés les fichiers passwd et shadow, d'écraser le mot de passe, et de rebooter normallement... Je sais qu'il existe des CD linux qui le font automatiquement pour le mot de passe Administrateur de windows...

Si tu veux un moyen sûr d'empêcher l'accès à des fichiers sensibles, il n'y a qu'une seule et unique méthode : la cryptographie. Il existe des systèmes de fichiers autres que ext3fs, comme cryptofs, qui demandent une clé de décryptage quand tu les montes. Un système étranger pourra révéler les fichiers, mais leur contenu sera illisible à quiconque n'aura pas la clé.

Dans un monde idéal, tous les ordinateurs portables devraient avoir un système de fichiers crypté. On devrait aussi abandonner l'archaïque système FAT sur les clés USB pour quelque chose de crypté.


Pensez à mettre [Résolu] dans le titre une fois votre problème réglé !

Hors ligne

#11 Le 19/04/2008, à 16:28

NiRaDo

Re : Gestion des droits d'accès et répertoires parents

D'accord ! C'est plus clair maintenant tongue

Je vais me renseigner sur cryptofs, car bien que je n'ai rien à cacher je n'aime pas, par principe, qu'on puisse fouiller sans mon autorisation.

Je vais me renseigner pour le cryptages des mails d'ailleurs.

Enfait. N'y a-t-il pas une loi en France qui interdit le cryptage de données personnels ?

Hors ligne

#12 Le 21/04/2008, à 13:48

snapshot

Re : Gestion des droits d'accès et répertoires parents

pour les FS cryptés, il y a l'excellent tuto de cep

Et pour le mail, il faut s'orienter vers S/MIME ou enigmail


Pensez à mettre [Résolu] dans le titre une fois votre problème réglé !

Hors ligne