# [SSH] Partager des dossiers (résolu)

## masterinferno

Salut tout le monde !  :Smile: 

Je souhaite faire quelque chose de simple. Mais ayant parcouru les pages du forum et Google, je trouve des choses un peu trop détaillées, complexes.

En fait, j'ai 4-5 dossiers dans mon /home/~/ que je souhaite partager avec uniquement 3-4 personnes en France, et qui utiliseront WinSCP sous XP.

J'aimerais qu'ils puissent accéder à ces dossiers, envoyer des fichiers, en récupérer, mais ni effacer, et renommer.. (possible ça ?)

ll faudrait créer un utilisateur unique+password et le donner à chacune de ces personnes, qui pourra se loguer (afin d'éviter d'avoir 36000 users).

Et si possible sans créer d'autres dossiers dans mon /home actuel.

Bref, je sais faire un useradd trucbidule, mais je le rajoute à quel groupe ? et puis comment leur laisser de tels droits grâce à chmod ?

Je suis un peu perdu il faut dire...

Autre petite question: est-il possible de "monitorer" les personnes connectées ? en mode console..ou avec un GUI ? et éventuellement, kicker, bannir, etc...

Je précise que OpenSSH est ajouté au runlevel par défaut, et qu'il se lance sans aucun problème, et que j'ai pu accéder avec un machine locale sous Windows (mais bien évidemment en me loguant grâce à mon identifiant et mot de passe de tous les jours, et ayant un accès total, complet sur tous les dossiers/sous-dossiers)

Merci d'avance pour vos réponses  :Razz: 

----------

## kangal

Salut!!!

Alors en fait, a ta place je creerais un groupe share ou un truc comme ca, et je gererait ca comme ca...voila comment je ferait

imagine que je liste mon rep courant:

-rw------- tongroupe share fichierun     Ce fichier te sera reserver, ils ne pourront rien y faire.

-rw-r-----tongroupe  share fichierdeux  Ils pourront lire se fichier, mais pas l'effacer.

-rw-rw---ton groupe share fichiertrois   Ils peuvent lire et ecrire/effacer ce fichier...

en gros je te conseille de creer le groupe share. et de faire un chgrp share de tout les fichiers que tu veux partager, et ensuite mettre le bon droits, par contre imagine que ce soit un d'eux qui creer un fichier, tu ne peux rien faire pour qu'un autre d'entre eux ne puisse pas le supprimer....Car ils auront le meme user, C'est pour ca que tu pourrais peut etre creer plusieur user et les mettre tous dans le groupe share, comme ca ils auront tous leurs liberte, et tu pourras tout reguler en root...

n'oublie pas que ton home devra avoir ces permissions: -rw-rw-rw pour qu'ils puisse ecrire dessus, il faut donc que tu fasse bien attention a mettre les bons droits sur les fichier qui t'appartienne a toi uniquement

(note que si ca te derange pas de creer un nouveau repertoire pour les fichiers a partager, il serait plus simple que tu mettre les permissiosn minimal a ton home, les bonnes permissions a ce dossier, et que tu mettre comme home a ce user le chemin du bon fichier...)

Pour verifiez qui est loguer, je ne sais pas trop, moi je fais un who, mais c'est pas top...

Laisse moi savoir si j'ai pas ete clair (probable) sur certains points, y aucun probleme je te reexplique:wink:

----------

## masterinferno

merci de ta réponse

En fait, je veux permettre de partager des dossiers déjà créés, et déjà remplis (sous-répertoires compris)

Je ne te cache pas qu'il s'agit de musique, de vidéos, et d'images que j'ai actuellement sur mon DD.  :Embarassed: 

Donc, est-ce que dans ce cas, comme tu dis, il faut obligatoirement créer de tels répertoires, ou c'est faisable avec ces répertoires déjà existants ?

Pour simplifier:

Permettre à ces utilisateurs de prendre et déposer des fichiers dans

~/Musique

~/Vidéos

~/Images

Ainsi que sous-répertoires...j'avoue que ça m'embêterait de devoir tout recopier dans un nouveau répertoire spécialement pour eux...

Sinon, si ça peut aider, je peux enlever le fait qu'ils ne peuvent pas supprimer...je leur fait entièrement confiance..

----------

## kangal

A ce moment c'est beaucoup plus simple.

A ce moment tu creer le groupe SHARE, et un user qui appartient a ce groupe

Et tu met 660 en permission a chacun des repertoires que tu veux partager, ils pourront comme ca deposer des fichier et aussi en prendre

Chacun des fichiers presents dans ses repertoires devront etre en 750, ils pourront donc les copiers sur leurs durs mais pas les supprimer.

Note que pour prendre les fichiers que tes amis deposeront, tu devras te logguer en root ou alors mettre ton user dans le groupe SHARE...

Dit moi si c'est pas clair

----------

## masterinferno

Wouahou...d'accord ok ok 

je vais tester ça sur le champ, et je te tiens au courant

C'était très clair, merci à toi  :Very Happy: 

----------

## Pachacamac

C'est très clair.  :Wink: 

----------

## masterinferno

Donc...

groupadd partage

useradd woofer -G partage

passwd woofer (changé le mot de passe)

En root, j'ai fait un chown xav /home/xav/ -R (pour remettre à plat les permissions un peu bizarres)

Puis sous xav, j'ai fais chmod -R 700 /home/xav (<- ça c'est une habitude que j'ai prise  :Sad: )

chmod -R 660 /home/xav/Images

chmod -R 660 /home/xav/Musique

chmod -R 660 /home/xav/Vidéos

Je me logue correctement grâce à WinSCP, mais le souci c'est qu'il m'affiche la racine et quand je vais dans le /home/xav/, il me dit que j'ai pas les permissions nécessaires pour y accéder...  :Crying or Very sad: 

----------

## kangal

Je te conseille de faire un rep : divers, qui a comme droit 640 , et qui contient des liens vers les repertoires videos , musique etc...

Et apres il faut que tu specifie a l'user partage que ca racine se trouve a divers, je ne me rappelle plus de la commande mais je te la retrouve et je post:P

EDIT: J'ai pas retrouver la commande mais j'ai un moyen beaucoup plus rapide, un peu crade mai bon,

edit ton /etc/passwd (en root), et trouve la ligne qui parle de ton user partage, tu verras a un moment il donne le path de l'home, change le pour mettre le chemin de repertoire divers  :Cool: 

----------

## masterinferno

Alors j'ai créé ce répertoire Divers, ainsi que les liens. J'ai changé les permissions comme tu m'as indiqué, j'ai édité le /etc/passwd:

```
cat /etc/passwd | grep woofer
```

```
woofer:x:1001:100::/home/xav/Divers:/bin/bash
```

Et pareil...je tombe sur la racine / et je peux pas accéder au /home/xav/  :Sad: 

Au passage, le groupe s'appelle partage, et l'utilisateur woofer...

----------

## kangal

verifie que tes permissions sont suffisantes pour aller jusque la...

Il faut que /home soit en 744 (en supposant qu'elle soit root root)

----------

## masterinferno

Alors, en root:

chmod -R 744 /home

Pareil, je tombe sur la racine, et dès que j'accède au /home par exemple, il (WinSCP) me dit "Le serveur a renvoyé une liste vide pour le répertoire /home"

Ya pas un truc à changer dans /etc/ssh/sshd_config ?

----------

## kangal

A tout hazard essaye de mettre home en 755..

----------

## Pachacamac

Et pourquoi pas 755 sur ton home ?

----------

## masterinferno

Effectivement en 755 ça marche !!

je tombe sur le répertoire Divers et donc, les raccourcis  :Very Happy: 

Mais ce répertoire Divers qui contient les liens est-il vraiment nécessaire ?

N'est-il pas possible de tomber directement sur le /home/xav/ où ne s'affiche uniquement les 3 dossiers partagés ?

Mince...  :Sad:  quand on veut remonter d'un dossier, on arrive à parcourir tout le reste du disque dur...

(si je ne reponds pas ce soir, c'est ma connexion Internet qui coupe, je répondrai au pire demain matin)

----------

## Pachacamac

De justesse kangal !

J'ai pas compris le coup des divers.

----------

## kangal

Ben tu peux le faire tomber sur ton home a toi, mais je pensais que tu voulais pas qu'il ait acces a tes fichiers... Si tu fais ca il pourront lister ton repertoire racine...Alors que dans cette configuration la, tu les cloisonne bien...

----------

## masterinferno

Ben j'ai édité mon post...  :Sad: 

Ils peuvent tout de même accéder à tout mon /home/xav  :Rolling Eyes: 

pffouu faut que je revois les chmod là... ça se complique  :Confused: 

----------

## Pachacamac

Si tes users xav et woofer appartiennent au groupe user c'est normal...

----------

## kangal

si jamais tu laisse ce rep divers, tu peux mettre ton /home/xav en 700, ce qui les cloisonnent entre le dossier divers et les repertoires que tu lui link...

en gros ils sont sur leur racine /home/xav/divers.

il peuvent faire un ls, et acceder au fichiers/rep donc tu places le liens, mais ils ne peuvent pas faire de cd .. et lister ta racine...

C'est juste pour securiser un peu le truc, apres si c'est pas necessaire selon toi, tu peux faire comme on a dit au debut:)

----------

## masterinferno

Ahhhhhh .....  :Evil or Very Mad: 

ça me stresse... :Laughing: 

Donc, j'ai refais tout au propre, dans l'ordre (et en root):

chmod -R 777 /home

chmod -R 700 /home/xav

chmod -R 660 /home/xav/Images/

chmod -R 660 /home/xav/Musique/

chmod -R 660 /home/xav/Vidéos/

Histoire que ça soit chronologique. J'ai rien changé dans /etc/passwd, et j'atterris toujours sur la racine, avec impossibilité de parcourir la /home.

Donc, kangal, si possible, on peut reprendre la méthode sans le Divers (et les raccourcis) ?

Concrètement:

Dès qu'un utilisateur se connecte avec WinSCP, il atterrit à sa racine (la mienne, c'est-à-dire /home/xav/) mais dans la fenêtre de droite (toujours du logiciel WinSCP) il puisse voir uniquement mes 3 répertoires Vidéos, Musique, et Images

Vous voyez ?

edit: au fait, quelle est la commande qui permet de voir à quel(s) groupe(s) appartient tel utilisateur ?

----------

## Pachacamac

id -Gn

EDIT : Pourquoi tu ne met jamais l'option exécutable sur tes dossiers ? 

770 à la place de 660Last edited by Pachacamac on Sun Aug 07, 2005 6:40 pm; edited 1 time in total

----------

## kangal

Tu ne peux pas choisir quel fichiers peut voir un user ou non, soit il liste toute ta racine, soit il ne peut pas la lister...

Met ton home en 755, pas en 777

met xav en 644

met musique image etc en 644 aussi a ce moment la...

----------

## masterinferno

@ Pachacamac: woofer appartient au groupe users et partage  :Sad: 

@ Kangal:  *Quote:*   

> Tu ne peux pas choisir quel fichiers peut voir un user ou non, soit il liste toute ta racine, soit il ne peut pas la lister... 

 

ok...donc la méthode Divers avec les liens semble plus appropriée...

Je vais essayer de revoir les permissions comme tu le précisess

----------

## Pachacamac

Si tu n'a pas x sur un dossier, normalement tu n'a pas le droit de le lister.

----------

## masterinferno

euh x ? c'est-à-dire ?

(Pour l'instant j'administre via Putty, ça m'évite de faire des aller-retours entre les ordis)

Je fais donc:

chmod -R 755 /home

chmod -R 644 /home/xav

(au fait, il faut bien le faire de manière récursive non ? le tout en root ?)

Je me connecte avec WinSCP, et je tombe sur / et impossible de lister /home

```
Le serveur a renvoyé une liste vide pour le répertoire '/home/xav'.
```

----------

## Pachacamac

x c'est éxécuter. Si ce n'est pas mis sur un répertoire tu ne peux pas le lister d'où le message "Le serveur a renvoyé une liste vide pour le répertoire '/home/xav'."

----------

## masterinferno

```
drw-r--r--  37 xav   500 16384 aoû  7 18:45 xav
```

effectivement  :Sad: 

kangal: euhh..là je suis perdu... faut que je fasse un chmod -R 777 /home à la bourrin ?  :Embarassed: 

----------

## Pachacamac

Regarde le manuel.

Au lieu de faire :

"Je fais donc: 

chmod -R 755 /home 

chmod -R 644 /home/xav"

Tu change 644 par 755. Le flag x vaut 1

----------

## masterinferno

chmod -R 755 /home/xav/ me fait effectivement atterrir sur le Divers... et les sous-répertoire sont bien accessibles...

Maintenant, je ne suis pas "cloisoné" par ce répertoire Divers, je peux remonter tout en haut.. bin, dev, etc...

Je ne trouve pas les bons chiffres à passer à chmod pour empêcher de remonter, ne serait-ce que d'un dossier.. :Rolling Eyes: 

----------

## Pachacamac

C'est pas chmod qui va t'aider.

Enleve le groupe users de ton utilisateur woofer.

----------

## masterinferno

Euh tu veux dire...enlève l'utilisateur woofer du groupe users non ?  :Laughing: 

par quelle commande please ? (pas taper  :Crying or Very sad: )

----------

## Pachacamac

T'as un fichier de conf à modifier. Il est dans /etc...

EDIT : Ou alors tu utilise la commande usermod. 

Je te laisse chercher...  :Wink: Last edited by Pachacamac on Sun Aug 07, 2005 7:49 pm; edited 1 time in total

----------

## masterinferno

ouais ben...

cat /etc/group | grep woofer

me donne 

partage:x:412:woofer  :Rolling Eyes: 

Pourtant quand je fais id -Gn logué sous woofer, j'obtiens:

users partage

----------

## Pachacamac

C'est toujours la même histoire avec ces n00b. Faut croire qu'un man leur fait peur  :Razz: 

usermod -g partage woofer

EDIT : Maintenant laisse moi tranquille, je vais me matter un DVD  :Rolling Eyes: 

----------

## masterinferno

n00b pas tant que ça... ça fait plus d'un an que je suis sous Gentoo, je n'ai jamais eu besoin de faire appel à ces commandes dans la mesure où tout mon système fonctionnait convenablement.

Je t'avoue être un fan de tutos, man pages, wikis, et compagnie...mais là je sèche total.

Je te remercie pour ton petit coup de pouce.   :Wink: 

----------

## Pachacamac

Je faisai référence à ton statut sur le forum.

En tout cas si t'as un problème il y a touours qq qui traîne pas loin...

----------

## masterinferno

Allez...j'ai pas cherché à compliquer plus..

j'ai refais tout du début, j'ai fais un 

useradd woofer -m -G users

passwd

mkdir /home/woofer

histoire qu'il y ait un dossier de partage...

Donc, problème résolu... :Rolling Eyes: 

----------

## Pachacamac

Tout fini bien alors

----------

## bobbix

Salut,

J'ai lu tout ce topic et je me demande pourquoi tu as choisi cette configuration ? Un serveur ftp serait, à mon avis, bien plus adapté. Vsftp est très facile à configurer et te permettrait de chrooter les utilisateurs dans certains répertoires. 

De plus, tu peux également utiliser un tunnel avec ssh si c'est la sécurité qui t'as fait écarter cette solution.

Bobbix

----------

