Apache et FTP

Salut à tous,

J’ai une suite LAMP avec Vsftpd sur un serveur dédié Debian qui héberge un site.

Je rencontre un petit problème avec l’utilisateur Apache www-data et l’utilisateur du FTP (appelons le toto).
Lorsque des fichiers sont téléchargés via l’interface web du site, le propriétaire de ces fichiers devient www-data (www-data du groupe toto), ce qui fait que toto ne peut pas supprimer avec son client FTP les fichiers appartenant à www-data.

Comment faire pour que toto puisse modifier ou supprimer des fichiers appartenant à www-data.
Pour info toto est n’est pas un utilisateur virtuel FTP mais un utilisateur système chrooté dans son répertoire FTP.

J’avoue ne pas être très à l’aise en admin Linux.

Merci de votre aide

Il est normal que les fichiers chargés depuis l’interface web soient identifiés www-data.
De ce que je comprends, tu as déclaré www-data comme étant également dans le groupe toto ?
Quels sont les droits du groupe toto sur les fichiers créés par www-data ? As tu les droits d’écriture et d’excecution (les mêmes que ci c’était toto qui vaiat créé les fichiers ?)

Merci d’avoir pris le temps de m’aider.

Dans mon fichier /etc/group j’ai toto:x:1000:
Il n’y a pas d’utilisateur www-data dans le groupe toto mais peut être que je me trompe.

Je sais pas trop comment faire pour connaitre les droits d’un groupe.
Excusez-moi.

L’utilisateur toto ne peut rien à faire à part lire les fichiers appartenant à www-data.

ok, donc vas dans le répertoire où toto et www-data écrivent les données recues:
avec la commande cd /chemin (comme sous le bon vieux dos)
là tu fais un ls -l, qui va lister les fichiers ainsi que les droits associés (tu as déja du le faire je pense)

Je te laisse chercher sous google pour trouver les infos sur “la gestions des droits sous linux” ce là sera plus efficace que mon explication.

Familiarise toi un peu avec les commandes adéquates:
chmod pour la gestion des droits
chown pour la gestion des propriétaires sur les fichiers/répertoire.

En relisant le premier message, je comprends que les fichiers en questions sont indiqués www-data (propriétaire) et toto (group).
Les membres de toto devraient pouvoi agir sur le fichier, mais il doivent en avoir le droit.

Pour ce qui est d’essayer de résoudre ces soucis, j’ai l’habitude de remonter au répertoire de niveau supérieur et e fair un chmod g+s -R /chemin du repertoire_à_traitrer. Ce n’est à mon avis, pas la meilleur facon de faire, mais j’ai pas trouvé mieux…

C’est ce que je fais aussi mais le changement s’applique uniquement au répertoire de niveau supérieur et non pas à ceux d’en dessous (ceux appartenant à www-data du groupe toto). Pourtant j’ai bien mis le paramètre -R. Du coup, même en faisant cette manip, toto ne peut toujours pas supprimer les fichiers appartenant à www-data via le client FTP. Ca me rend fou.

tu fais ca en tant que root ou en tant qu’utilisateur lambda?
verifie aussi que les “autrres” utilisateurs peuvent parcourir les sous répertoires (chmod o+x ou o+s).
isalo.org/wiki.debian-fr/Co … et_groupes

Salut,

$ ls -la /le/ $ ls -la /le/répertoire/ $ ls -la /le/répertoire/la_bas $ ls -la /le/répertoire/la_bas/.../

Serait bien plus parlant, pour tous.

Bon ok, depuis la racine du site (répertoire www appartenant à toto dans son home). Mais le répertoire qui doit recevoir les fichiers de www-data est le répertoire projets

Racine www :

drwxrwsr-x 10 toto toto 4096 juil.  1 14:09 .
drwxrwsr-x  3 toto toto 4096 juin  27 12:05 ..
drwxrwsr-x  2 toto toto 4096 juil.  1 14:09 bin
drwxrwsr-x  2 toto toto 4096 juil.  1 14:09 configuration
drwxrwsr-x  5 toto toto 4096 juil.  1 14:09 controleur
-rwxrwxr-x  1 toto toto 4650 juil.  1 16:02 index.php
drwxrwsr-x  3 toto toto 4096 juil.  1 14:00 librairie
drwxrwsr-x  2 toto toto 4096 juil.  1 14:01 modele
drwxrwsr-x 12 toto toto 4096 juil.  1 14:08 vue

répertoire vue :

drwxrwsr-x 12 toto toto 4096 juil.  1 14:08 .
drwxrwsr-x 10 toto toto 4096 juil.  1 14:09 ..
drwxrwsr-x  2 toto toto 4096 juil.  1 14:01 bloc
drwxrwsr-x  2 toto toto 4096 juil.  1 14:02 css
drwxrwsr-x  2 toto toto 4096 juil.  1 14:02 documents
drwxrwsr-x  2 toto toto 4096 juil.  1 14:04 extras
drwxrwsr-x  2 toto toto 4096 juil.  1 14:04 flash
drwxrwsr-x  5 toto toto 4096 juil.  1 16:19 images
drwxrwsr-x  2 toto toto 4096 juil.  1 14:08 js
drwxrwsr-x  2 toto toto 4096 juil.  1 14:08 menu
drwxrwsr-x  5 toto toto 4096 juil.  1 14:09 pages
drwxrwsrwx  4 toto toto 4096 juil.  2 20:10 projets

Répertoire projets

drwxrwsrwx  4 toto     toto 4096 juil.  2 20:10 .
drwxrwsr-x 12 toto     toto 4096 juil.  1 14:08 ..
drwxr-sr-x  2 www-data toto 4096 juil.  2 20:10 53b44afdce341
drwxr-sr-x  2 www-data toto 4096 juil.  2 20:10 53b44b066f5fa

Donc là, les deux répertoires incriminés sont 53b44afdce341 et 53b44b066f5fa. Ces deux répertoires ont été créés à l’aide d’un script PHP qui permet de télécharger via une page web des dossiers ZIP et de les décompresser (avec la classe PHP zipArhive) sur le serveur dans le répertoire projets. Ces répertoires et leurs contenus sont devenus www-data comme propriétaire (normal).

Sinon je viens d’avoir une idée : je peux peut être dire à PHP de changer les droits juste après l’upload pour que toto puisse faire ce qu’il veut sur les répertoires et les fichiers de www-data. Mais bon je trouve ça lourd.

Merci pour votre aide

PS : merci de ne pas tenir compte de mon message posté à : 02 Juil 2014 19:34 J’ai dit une grosse connerie.

[mono]/www[/mono] Group/propriétaire : toto

[quote=“tomix”]Racine www :

drwxrwsr-x 10 toto toto 4096 juil.  1 14:09 .

[mono]/www/répertoire_vue/[/mono] : Group/propriétaire : toto

[mono]/www/répertoire_vue/Répertoire_projets/[/mono] : Group/propriétaire : toto

[mono]/www/répertoire_vue/Répertoire_projets/53b44afdce341/[/mono] : Group/propriétaire : www-data

[mono]/www/répertoire_vue/Répertoire_projets/53b44b066f5fa/[/mono] : Group/propriétaire : www-data

À mon avis, hein, ce n’est pas concevable … :033

Et, tu t’étonnes … :think:


ps : un retour intégral, comprenant le prompt de départ et fin serait allègrement plus appréciable.

Je ne vois pas du tout où est le problème :unamused: