nouvo09
Apparemment tu n'en dis pas assez sur le but que tu recherches.
Si c'est juste un exercice et que ce serveur n'est pas relié à l'extérieur, tu peux tout te permettre. Alors regarde du côté des contextes SElinux
Mais dans le cas contraire, cette configuration n'est pas raisonnable. Tu permets à n'importe qui d'uploader n'importe quoi sans le moindre contrôle, et avec les droits à 777, tu permets à n'importe qui d'effacer n'importe quoi.
On est vraiment loin d'une configuration minimale !
madko
Ce qu'il faudrait c'est faire en sorte que les fichiers déposés par le ftp soient au moins lisibles par le groupe apache.
Le anon_mask semble marcher (vu que tu est en rw-------), mais c'est trop restrictif comme droit, il faudrait avec ces droits que le fichier n'appartienne plus à ftp mais à apache, ou comme je disais qu'il appartienne au groupe apache et donner plus de droits.
Pour ce que j'en comprend d'après la doc, le chown_upload_mode est à utiliser que si tu as aussi activé les options chown_uploads et chown_username.
Est-ce normal par contre de déposer des fichiers pour apache, via un ftp en anonymous?
MarbolanGos
madko wrote:Est-ce normal par contre de déposer des fichiers pour apache, via un ftp en anonymous?
Je pense que oui vu qu'il dit que c'est la configuration pour un utilisateur (voir :
http://doc.fedora-fr.org/wiki/Vsftpd_:_Installation_et_configuration#Attribution.2FPersonnalisation_des_droits)
En mettant :
chown_upload_mode=0755
Normalement apache devrait pouvoir lire le contenu. Après à voir avec les sécurités nécessaires pour ce réseau.
Nioute
Je vais essayer d'être plus precise.
Ce serveur et dédié a une utilisation internet, non test.
Soucis 1 = le dossier HTML doit avoir quelle droit CHOWN et quelle CHMOD = pour une utilisation public + permetre a vsFTPD d'uploader dedans ?
Soucis 2 = les dossier et fichier a l'intérieur doivent avoir quel droit eux aussi ( CHOWN et quelle CHMOD ).
Soucis 3 = comment je dois configurer le compte utilisateur vitrtuel de vsFTPD pour résoudre le soucis 2
Voila, pour info il n'y a pas accee anonyme, seulement 1 utilisateur a accee au dossier html, la config du debut du sujet et la config pour 1 utilisateur, sinon le ftp et verouiller contre les anonymes.
nouvo09
Perso je mettrais comme répertoire par défaut dans /etc/passwd pour ftp : /var/ftp/pub
avec les droits que tu voudras mais 660 me semble bien.
Et ensuite je ferais un lien soft de ce répertoire quelque part dans /html.
Nioute
Bon j'avance un peut
Dans la config utilisateur j'ai mis les droits suivant ->
file_open_mode=0777
anon_umask=022
Ce qui me donne des droits en -> rwxr-xr-x
Maintenant on vient au soucis des groupes.
Les fichier dans le dossier html pour apache doivent avoir quelle configuration ??
Pour l'instant ils sont en ftp:ftp (group de vsftp).
le dossier html est actuellement en ftp:ftp et les fichier dedans aussi. Je laisse comme sa ou dois-je metre ftp:apache ou root:ftp ou root:apache ou apache:ftp ?? c'est confus pour moi tout sa ??
madko
ya pas de réponse unique, c'est à toi de voir en fonction de ce que tu veux faire. Il faut juste être sur que apache puisse lire tes fichiers déposés par ftp. Eventuellement est-ce que apche doit pouvoir écrire à certains endoits? En tout cas vu que tes permissions sont identiques pour le groupe et pour le reste du monde, c'est pas du coup déterminant.
Nioute
j'ai besoin que apache et vsftpd ai les droits en écriture dans le /var/www/html ainsi que dans tout les sous répertoires et les sous dossier.
Pour l'instant je suis en ftp:ftp donc le ftp marche, mais je peut rien uploader via une page php par exemple.
madko
Soit tu change le groupe pour que le fichier/rep soit en ftp:apache, ou tu met apache dans le groupe ftp. Ensuite tu t'arrange pour que les droits groupe permettent l'écriture.
Nioute
Justement ma première idée été de metre dans mon compte utilisateur ftp (donc celui qui upload pour le dossier html).
chown_uploads=YES
chown_username=apache
Mais la j'ai un gros : 500 OOPS invalid fd in cmd_process_chown.
MarbolanGos
C'est normal de ne pouvoir faire ça l'utilisateur ftp c'est pas apache...
Quand on envoit un fichier avec ftp il faut donner les droits en écriture/lecture/execution au groupe ftp.
Ajouter apache dans le groupe ftp
Et là ça marchera.
Nioute
ok, mais je ne sait pas très bien comment faire, donc je vais dans le compte ftp et dans groupe secondaire je rajoute apache alors ???
Mais dans le dossier html tous reste en ftp:ftp c'est sa ??
madko
La tu ajoute ftp dans le groupe apache, c'est un peu l'inverse de ce qu'a suggéré MarbolanGos. Mais à la limite ça peut marcher aussi, mais faudra pas que tes fichiers soit en ftp:ftp. Est-ce que tu comprend au moins ce que veux dire ftp:ftp? Je pense qu'un peu de documentation sur les droits de base devrait vraiment t'aider.
Nioute
ba le premier ftp = le propriétaire
le second = le groupe
c'est écrit quand ont fait un clique droit/propriété permission.
Mais de la à savoir leur privilège ^^
madko
Quand tu as par exemple rwxr-w---, les 3 premiers (rwx) te donne les privilèges pour l'utilisateur propriétaire du fichier, les 3 suivants (r-x) pour le groupe propriétaire du fichier, et les 3 derniers pour tout le reste. Donc si tu laisse ton fichier en ftp:ftp, et que tu met apache dans le groupe ftp, quand apache accède au fichier, les privilèges utilisateurs n'entrent pas en compte vu que c'est l'utilisateur apache, c'est donc les privilèges du groupe qui sont utilisés (si tu as bien mis apache dans le groupe ftp, sinon ce serait les permissions pour le reste du monde). Il te faut donc au minium un r, et un w pour écrire. Le x pouvant aussi servir si tu veux autoriser apache à traverser un répertoire appartenant au groupe ftp.
Ce sont les notions de base des droits sous Unix et Linux, 3 privilèges (lecture, ecriture, execution), repartis sur 3 cibles (l'utilisateur, le groupe, le reste du monde). Si tu ne maitrise pas ce concept on risque de tourner en rond longtemps.
Nioute
Tout le monde débute bien un jour ^^ hummmm
Mais bon tout ca je connais déjà, et sa ne répond pas a ma question du départ. Car on peut bidouiller tout ca comme on veut.
Je demande qu'elle sont les standard, pour voir si ma config en est proche ou en est loin ^^
car :
1 = copie de fichier via ftp = ftp:ftp
2 = copie de fichier via php = apache:apache
3 = copie de fichier directement a partir du server = username:username
4 = copie de fichier à partir du terminal en root = root:root
Au final je me retrouve avec un dossier avec plein de fichier qui ont des propriétaires et des users différents.
Donc la question est : Je laisse comme sa ou j'essaie de metre tous le monde dans le même truc !!.
Et pour les droits tout les fichiers sont rwxr--r--
madko
encore une fois je le repète il n'y a pas de solution unique, c'est un peu comme tu veux, ça me choque pas plus que ça d'avoir des propriétaires différents sur des fichiers, tant que dans ton cas apache arrive à lire les bons fichiers, et peut écrire aux bons endroits ya pas à se casser plus la tête.
Nioute
Bon ba sa tout marche comme sa alors je vais pas chercher la petite bête !!
Merci pour votre aide !!
madko
Ya pas d'quoi! 🙂
Pense à marquer ton sujet comme résolu.