Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[vsftp] restreindre les droits sur des répertoires
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index French
View previous topic :: View next topic  
Author Message
Gil galad
Tux's lil' helper
Tux's lil' helper


Joined: 26 Mar 2004
Posts: 94
Location: Switzerland

PostPosted: Tue Dec 28, 2004 1:08 pm    Post subject: [vsftp] restreindre les droits sur des répertoires Reply with quote

Hello!

J'ai à la maison, un server vsftp. Actuellement les utilisateurs anonymes n'ont pas de droit d'accès, et pour tous les users write_enable=NO.
Mais j'aimerais laisser juste un repertoire ('upload') avec des droits d'écriture. Comment je peux faire ca? Je précise qu'en interne le disque de donnée du ftp est exporté via samba, donc je peux pas compter sur les droits unix... :(
Back to top
View user's profile Send private message
gim
Guru
Guru


Joined: 29 Apr 2003
Posts: 418
Location: milky-way

PostPosted: Tue Dec 28, 2004 2:03 pm    Post subject: Re: [vsftp] restreindre les droits sur des répertoires Reply with quote

Gil galad wrote:
Je précise qu'en interne le disque de donnée du ftp est exporté via samba, donc je peux pas compter sur les droits unix... :(


Je ne vois pas le problème... tu peux tout de même appliquer les bonne permissions (même si samba n'en tiens pas compte).

A moins que tu voulais dire "importé", mais dans ce cas faire un serveur ftp qui fait relais c'est pas forcement très glop niveau performances...
Back to top
View user's profile Send private message
Gil galad
Tux's lil' helper
Tux's lil' helper


Joined: 26 Mar 2004
Posts: 94
Location: Switzerland

PostPosted: Tue Dec 28, 2004 3:01 pm    Post subject: Reply with quote

Ben mon souci, c'est que Samba écrit "comme il veut". Et que si write_enable=YES dans vsftp, l'utilisateur ftp peut effacer les fichiers créés par samba.
Mon problème est que je ne peux pas garantir que les droits unix sont tout à fait correct pour tous les fichiers (un chmod 777 sur des fichiers de temps à autre par ex...)

J'aimerais, pouvoir mettre write_enable=NO sauf sur un répertoire. L'alternative, pour l'instant, c'est de créer un compte FTP avec l'accès à seulement un repertoire, write_enable=YES
Back to top
View user's profile Send private message
gim
Guru
Guru


Joined: 29 Apr 2003
Posts: 418
Location: milky-way

PostPosted: Tue Dec 28, 2004 10:48 pm    Post subject: Reply with quote

Gil galad wrote:
Ben mon souci, c'est que Samba écrit "comme il veut". Et que si write_enable=YES dans vsftp, l'utilisateur ftp peut effacer les fichiers créés par samba.


Même avec un chgrp groupe_de_ceux_qui_peuvent_uploader upload; chmod 1775 upload il y a des problèmes ?
Back to top
View user's profile Send private message
Gil galad
Tux's lil' helper
Tux's lil' helper


Joined: 26 Mar 2004
Posts: 94
Location: Switzerland

PostPosted: Wed Dec 29, 2004 1:33 pm    Post subject: Reply with quote

oui de cette manière ca devrait marcher :)
Mais je dois dire que je ne suis pas très à l'aise avec les droits unix, dans le sens, je ne sais jamais trop ce que le système fait. (J'écris un fichier avec mon user depuis ssh, nfs, samba, ftp, que ce passe-t-il avec les droits?)
Back to top
View user's profile Send private message
gim
Guru
Guru


Joined: 29 Apr 2003
Posts: 418
Location: milky-way

PostPosted: Wed Dec 29, 2004 2:07 pm    Post subject: Reply with quote

Gil galad wrote:
(J'écris un fichier avec mon user depuis ssh, nfs, samba, ftp, que ce passe-t-il avec les droits?)


Les fichiers créés sont créés avec des permissions par defaut qui dependent du umask courant.
En général c'est rw-r--r-- pour les utilisateurs et rw------- pour root.

Un flag "w" sur un répertoire permet aux utilisateurs associé d'y modifier le contenu à leur guise (modifier, suprrimer) independement du possesseur des fichiers qui se trouvent à l'intérieur. Mais avec le sticky bit ("t" avec ls -l) sur le répertoire qui les contient, on restreint l'access en écriture à la création de fichier et à la modification des fichiers par l'utilisateur qui les possède seulement.
Par exemple, /tmp à normalement les permissions rwxrwxrwt.

Perso, j'utilise en fait rwxrwx-wt sur mon répertoire upload. Pour qu'on puisse faire de l'upload (anonyme et authentifié) où les fichiers ne peut être modifiés (ou supprimés) que par l'utilisateur qui les a créés; et pour que les fichiers ne puissent être accedés en lecture que si l'on connait leur nom (pas de ls possible).
Back to top
View user's profile Send private message
Gil galad
Tux's lil' helper
Tux's lil' helper


Joined: 26 Mar 2004
Posts: 94
Location: Switzerland

PostPosted: Wed Dec 29, 2004 6:37 pm    Post subject: Reply with quote

3 questions:
Tu fais comment pour mettre le sticky bit? J'avais déjà remarqué que certain répertoires étaient comme ca, mais je ne sais pas comment le faire.

ok pour les droits par défaut, mais pour le group par défaut? Je remarques que chez moi, c'est 'games' en général. Alors qu'il pourrait très bien mettre 'wheel' ou 'user'

Pour le umask courant, tu parles bien de vsftp? Parce que là, c'est ok, j'ai compris comme il gère les droits. C'est plutot les autres services qui accède à la partition que je ne suis pas sûr. (Comme ssh, samba et nfs)

Merci pour toutes tes réponces en tout cas :)
Back to top
View user's profile Send private message
gim
Guru
Guru


Joined: 29 Apr 2003
Posts: 418
Location: milky-way

PostPosted: Wed Dec 29, 2004 7:03 pm    Post subject: Reply with quote

Gil galad wrote:
3 questions:
Tu fais comment pour mettre le sticky bit? J'avais déjà remarqué que certain répertoires étaient comme ca, mais je ne sais pas comment le faire.

C'est le "1" dans chmod 1775, "2" et "4" servant eux au setuid et setgid bit (mais c'est autre chose). Avec la syntaxe avec des lettres ça donne chmod +t. Il faut aussi savoir que ls affiche un "T" a la fin (--------T) lorque ce bit est activé ou un "t" qui veut dire "T + x".
Il existait une page man qui décrivait tout ça, mais je ne la retrouve plus.

Gil galad wrote:
ok pour les droits par défaut, mais pour le group par défaut? Je remarques que chez moi, c'est 'games' en général. Alors qu'il pourrait très bien mettre 'wheel' ou 'user'

Le groupe par défaut c'est le groupe avec lequel est exécuté l'application qui crée le fichier.
Qui encore par défaut est le groupe principal auquel appartient l'utilisateur (spécifié dans /etc/passwd et que l'on peut changer en le mettant derière l'option -g de usermod).
Pour vsftpd avec un utilisateur authentifé c'est normalement ce groupe là qui est utilisé, et pour un utilisateur anonyme c'est souvent ftp ou nobody (selon la configuration de vsftpd).
Pour ssh et nfs ça doit être pareil si ça n'a pas été spécifié autrement dans des fichiers de config. Et pour samba c'est probablement du même accabi.

--edit: par contre, le groupe de création des fichier n'est pas très important dans ce cas: c'est surtout le groupe du répertoire upload qui est important si tu veux restreindre l'upload a un certain groupe. Dans le cas ou n'importe qui a le droit d'uploader il suffit de faire chmod 1777 ou chmod 1766 pour empêcher le listing, et basta ;)


Gil galad wrote:

Pour le umask courant, tu parles bien de vsftp? Parce que là, c'est ok, j'ai compris comme il gère les droits. C'est plutot les autres services qui accède à la partition que je ne suis pas sûr. (Comme ssh, samba et nfs)

Oui par exemple : ce umask est paramétrable dans le fichier de conf de vsftp, mais pour ssh c'est la même chose, les utilisateurs peuvent spécifier l'umask qu'il veulent utiliser a l'aide de la commande umask dans leurs .bashrc (ou autre), et un umask système utilisé par défaut est souvent spécifié dans /etc/profile.
Pour nfs et samba, ca doit pouvoir là aussi se spécifier qqpart.

Gil galad wrote:
Merci pour toutes tes réponces en tout cas :)

Di rien :)
Back to top
View user's profile Send private message
nuts
Veteran
Veteran


Joined: 10 Jan 2004
Posts: 1630

PostPosted: Tue May 31, 2005 7:36 am    Post subject: Reply with quote

bon plutot que de creer un topic je up celui la
j utilise donc vsftpd et jusque la j'en suis satisfait.
mais le fait d avoir ajouter un compte pour depanner un pote, j arrive sur une impasse.
j'ai deux utilisateurs.
le 1er a son home directory normal, l autre est en fait un partage d'une partition fat (car sous windows et linux, j ai besoin d'un truc en commun).
bref avant j'avais un WRITE_ENABLE=NO ce qui faisait que personne ne pouvait uploader sur la partition FAT. le hic c'est que mon pote qui a besoin d 'un compte ne peux pas uploader sur son compte.
je passe le WRITE_ENABLE=YES et hop il peut uploader, mais le hic c'est qu on peut modifier maintenant les ficheir sur la fat avec l'autre compte :(
comme je ne peux pas mettre de permission sur de la fat, je voulais savoir comment mettre un write_enable=yes pour mon potes tout en mettant un write_enable=no pour l'autre compte?

resolu grace a ca: http://www.labo-linux.org/index.php?page=pas&id=512
_________________
nuts
PC: AMD Phenom 2 bi-core 555 + Asus M4A77T/USB3 + 2Go de RAM + wifi Ralink RT61 + Radeon HD 3450 - Disque dur 500Go.
SGI Octane ip30 R10000
Back to top
View user's profile Send private message
niolou
n00b
n00b


Joined: 06 Jul 2004
Posts: 42
Location: Clermont Fd (63) - Choisy le Roi (94) / France

PostPosted: Tue May 31, 2005 9:30 am    Post subject: Reply with quote

Gil galad wrote:
Ben mon souci, c'est que Samba écrit "comme il veut". Et que si write_enable=YES dans vsftp, l'utilisateur ftp peut effacer les fichiers créés par samba.
Mon problème est que je ne peux pas garantir que les droits unix sont tout à fait correct pour tous les fichiers (un chmod 777 sur des fichiers de temps à autre par ex...)

J'aimerais, pouvoir mettre write_enable=NO sauf sur un répertoire. L'alternative, pour l'instant, c'est de créer un compte FTP avec l'accès à seulement un repertoire, write_enable=YES


J'interviens ici pour faire affront aux enormitées inscrite et dire que samba n'écrit pas "comme il veut" mais comme il le doit par défaut pour avoir un mask différent lors de la création de repertoire ou la copie de fichier il faut mettre la commande suivante ds les share:

Code:

force create mode = 0775
force directory mode = 0775

Bien entendu pour avoir les droit en 0775 voila voila ...
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index French All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum