Enfin ou alors tu t'embetes pour rien, si ce n'est que les ficheirs config.php que tu veux cacher, tu met comme propriétaire www-data sur ces fichiers et tu nautorise la elcture quau propriétaire, et c'est réglé
debazande
Le problème est que public_html doit être accessible à Apache (user www-data, nobody ou apache, selon la distrib). Or il est souvent facile, surtout avec un accès ssh, d'obtenir les droits de cet utilisateur (vulnérabilité locale, en passant par un script php, etc.).
Une solution serait de configurer Apache pour qu'il prennent les droits de l'utilisateur courant, lorsqu'il doit afficher un userdir. De cette façon, on peut configurer les droits d'accès de public_html pour qu'il ne soit accessible qu'à l'utilisateur en question (700). Il sera donc accessible à Apache pour servir du contenu, et inacccesible aux autres utilisateurs.
On peut faire ça avec des modules (mod_suphp, etc.), cependant je n'ai jamais essayé.
Cytelis
Je résume donc ce que j'ai fait :
_ chown toto public_html
_ chgrp www-data public_html
_ chmod 770 public_html (j'ai hésité: 770 ou 750 ?!)
Actuellement les fichiers contenu dans public_html :
-rwxrwxr-x 1 toto toto 839 2006-04-21 04:18 index.php
Le problème d'include ne semble pas résolu, cela ne viendrait-il pas des droits pour "les autres" qui sont nulles ?
l0ky
personnellement j'aurais plutot donné l'appartenance a toto et le groupe www-data
www-data n'as pas besoin d'ecrire dedans. par contre toto oui.
Cytelis
C'est donc pour cela que j'ai rajouté les droits d'écriture à public_html, puisqu'il a pour groupe "toto".
Maintenant, plusieurs petits problèmes se présentent :
_ Lors du deluser, le dossier dans home, n'est plus supprimé ?!
_ Certains scripts php n'arrivent pas à include (permission denied)
l0ky
bah si tu mets www-data proprio de public_html, non toto ne sera pas proprio de public_html [:mrbrelle]
logique non [:opus dei]
Cytelis
Si je met en propriétaire du dossier "www-data" et que ce public_html est dans toto, toto n'est donc pas propriétaire de public_html, il ne peut donc pas créer à l'interieur ?
l0ky: En effet on ne peut plus lister le contenu (depuis un autre utilisateur), mais :
_ l'utilisateur, ne peut plus créer de fichiers dans son public_html
Ok, j'ai modifié les droits en 770.
Heu... avec 750 (rwxr-x---) l'utilisateur (le propriétaire du dossier) doit pouvoir créer tout ce qu'il veut dedans.
Les gens du meme groupe que le dossier doivent pouvoir lister et consulter le contenu de ce répertoire.
Cytelis
Dernières questions:
J'ai actuellement un dossier "public_html" dans /etc/skel histoire qu'il soit automatiquement ajouté lors d'un adduser.
Est-il possible de lui attribuer les bons droits (770), et le bon propriétaire (www-data) lors de l'adduser ?
Lors d'un deluser, le repertoire de l'utilisateur dans /home ne se supprime pas ; je pense que c'est à cause de ce www-data, puisque sans cette modif, le repertoire est bien supprimé lors d'un deluser :heink:
Cytelis
l0ky: En effet on ne peut plus lister le contenu (depuis un autre utilisateur), mais :
_ l'utilisateur, ne peut plus créer de fichiers dans son public_html Ok, j'ai modifié les droits en 770.
Chaque nouveau fichier créer, appartient à l'utilisateur (bye www-data). D'après mes tests, cette solution semble "sécurisante", puisque le dossier "public_html" a pour propriétaire "www-data".
non, il veut empecher les autres utilisateurs d'avoir acces à ce répertoire en SSH !
solution:
droit: 750 ie: rwxr-x---
Owner: l'utilisateur groups: www-data (ou le groupe sous lequel s'execute apache)
Fork Bomb
Un ptit .htaccess et en voiture Simone ?
Cytelis
D'accord mais erreur 403 dans le navigateur dans ce cas :sarcastic:
Proxounet
Si tu n'autorise la lecture que pour son propriétaire, alors els autres utilisateurs n'y auront plus accès
Cytelis
up
Cytelis
Je ne comprends pas vmt.
faire un chown pour www-data ?
L'user n'aura alors plus accès à ce dossier ? me trompe-je ?
freds45
je déplace dans la cat appropriée. :)
Proxounet
tu peux changer le propriétaire de public_html, mettre apache (je ne sais plus son utilisateur), et ne mettre que des drotis pour son proprio
Cytelis
Bonjour,
est-il possible d'empecher l'accès au /home/*/public_html par les autres utilisateurs en ssh ?
Si j'enleve le droit de lecture au public_html, le site n'est plus visible.
Je trouve cela embetant que le public_html puisse être lister, pour les fichiers de config.php...