Droits d'accés

DRSBMM -  
dubcek Messages postés 18789 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,
on veut créer un répertoire nommé par exemple "rep" tel que les autres utilisateurs ne puissent pas lister son contenu mais puissent lire les fichiers qui y sont placés.
par exemple on obtient:
$ ls rep
ls:rep:permission denied
$ cat rep/fic # fic est un fichier dans rep
aaaaaaaaaaaaaaa
bbbbbbbbbbbbbbb
ccccccccccccccc

svp,je besoin votre aide.et merci...
A voir également:

4 réponses

mamiemando Messages postés 33774 Date d'inscription   Statut Modérateur Dernière intervention   7 883
 
Ce n'est pas possible, car pour accéder à un fichier, tu as besoin des droits en exécution sur chacun des répertoires dont il est fils.
(mando@aldur) (~) $ mkdir pouet
(mando@aldur) (~) $ cd pouet/
(mando@aldur) (~/pouet) $ touch plop.txt
(mando@aldur) (~/pouet) $ ls -l plop.txt
-rw-r--r-- 1 mando mando 0 fév 22 13:23 plop.txt
(mando@aldur) (~/pouet) $ cd ..
(mando@aldur) (~) $ cat pouet/plop.txt
(mando@aldur) (~) $ chmod 400 pouet
(mando@aldur) (~) $ ls -l | grep pouet
dr--------  2 mando mando    4096 fév 22 13:22 pouet
(mando@aldur) (~) $ cat pouet/plop.txt
cat: pouet/plop.txt: Permission non accordée

Bonne chance
0
lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 570
 
Salut,

Dans le cas classique, effectivement ce n'est pas possible.
En revanche tu peux toujours chercher d'autre solutions pour gérer les utilisateurs/groupes et leurs droits d'accès

Mais il faut savoir ce que tu fais, puisque la solution que je présente n'est pas très fiable, vu que l'accès sera interdit totalement.

Créer un groupe LS et le faire groupe principal de la commande /bin/ls
Attribuer les droits nécessaires et le tours est joué.

L'utilisateur peux faire cat mais il ne peux pas faire ls
Ce n'est pas une vraie solution, vu que l'utilisateur ne peux plus exécuter ls quelque soit le répertoire.

lami20j@debian:~/trash$ sudo groupadd LS
lami20j@debian:~/trash$ ls -l /bin/ls
-rwxr-xr-x 1 root root 92312 avr  4  2008 /bin/ls
lami20j@debian:~/trash$ sudo chgrp -v LS /bin/ls
Changement de groupe de `/bin/ls' vers LS
lami20j@debian:~/trash$ ls -l /bin/ls
-rwxr-xr-x 1 root LS 92312 avr  4  2008 /bin/ls
lami20j@debian:~/trash$ sudo chmod -v 0750 /bin/ls
Le mode d'accès de `/bin/ls' a été modifié à 0750 (rwxr-x---).
lami20j@debian:~/trash$ ls -l /bin/ls
bash: /bin/ls: Permission non accordée
lami20j@debian:~/trash$ ls /mnt/
all/   hda10/ hda5/  hda7/  hdc1/
lami20j@debian:~/trash$ ls /mnt/all/
a/ b/ c/
lami20j@debian:~/trash$ ls -l /mnt/all/a/
bash: /bin/ls: Permission non accordée
lami20j@debian:~/trash$ cat /mnt/all/a/fichier.txt
salut


Peut être avant de trouver une solution, il sera mieux de comprendre que veux tu obtenir exactement, les raisons pour interdire certains droits. Ca nous permettra peut être t'orienter vers une autre solution.

Pour qu'un utilisateur puisse exécuter ls il doit être même au groupe LS
lami20j@debian:~$ su - test2
Mot de passe :
test2@debian:~$ groups
test LS
test2@debian:~$ ls -al
total 24
drwxr-xr-x  2 test2 test 4096 jan 25 12:56 .
drwxr-xr-x 16 root  root 4096 fév 19 19:44 ..
-rw-------  1 test2 test  155 fév 22 17:50 .bash_history
-rw-r--r--  1 test2 test  220 mai 12  2008 .bash_logout
-rw-r--r--  1 test2 test 3116 mai 12  2008 .bashrc
-rw-r--r--  1 test2 test  675 mai 12  2008 .profile
test2@debian:~$ ls -l /mnt/all/
total 12
drwxr-xr-x 2 root root 4096 fév 22 12:44 a
drwxr-xr-x 2 root root 4096 fév 22 12:44 b
drwxr-xr-x 2 root root 4096 fév 22 12:44 c
test2@debian:~$ cat /mnt/all/a/fichier.txt
salut
test2@debian:~$


Mais l'exploration de fichiers on peu le faire avec plusieurs programmes. Interdire que l'utilisation ls n'est pas du tout une solution.
0
mamiemando Messages postés 33774 Date d'inscription   Statut Modérateur Dernière intervention   7 883
 
La vraie question c'est surtout pourquoi il veut faire ça... Ou plutôt ce qu'il cherche à faire...
0
dubcek Messages postés 18789 Date d'inscription   Statut Contributeur Dernière intervention   5 637
 
hello
il peut aussi donner au répertoire rep le droit x seulement : chmod 711 rep
créer un dossier rep/a avec le fichier fic dans a,
ls rep n'est pas possible, mais cat rep/a/fic est possible, avec a et fic qui sont chmod 755 a et chmod 644 fic
mais
cd rep/a ; ls
reste toujours possible
0