Apache et protection du public_html

Apache et protection du public_html - Linux et OS Alternatifs

Marsh Posté le 17-04-2006 à 02:16:53    

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...
 
Une solution ? merci :jap:  
 
Config: Apache - linux
 

Reply

Marsh Posté le 17-04-2006 à 02:16:53   

Reply

Marsh Posté le 17-04-2006 à 11:01:51    

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

Reply

Marsh Posté le 17-04-2006 à 12:03:04    

je déplace dans la cat appropriée. :)


---------------
Filmstory : gardez trace des films que vous avez vu ! :D
Reply

Marsh Posté le 17-04-2006 à 13:05:46    

Je ne comprends pas vmt.
faire un chown pour www-data ?
L'user n'aura alors plus accès à ce dossier ? me trompe-je ?

Reply

Marsh Posté le 18-04-2006 à 14:08:52    

up

Reply

Marsh Posté le 18-04-2006 à 14:57:08    

Si tu n'autorise la lecture que pour son propriétaire, alors els autres utilisateurs n'y auront plus accès

Reply

Marsh Posté le 20-04-2006 à 04:52:50    

D'accord mais erreur 403 dans le navigateur dans ce cas :sarcastic:

Reply

Marsh Posté le 20-04-2006 à 07:40:26    

Un ptit .htaccess et en voiture Simone ?


---------------
Décentralisons Internet-Bépo-Troll Bingo - "Pour adoucir le mélange, pressez trois quartiers d’orange !"
Reply

Marsh Posté le 20-04-2006 à 08:53:25    

Fork Bomb a écrit :

Un ptit .htaccess et en voiture Simone ?


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)

Reply

Marsh Posté le 21-04-2006 à 05:01:51    

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".

 

D'accord avec moi ?  :wahoo:

 


Merci l0ky

Reply

Marsh Posté le 21-04-2006 à 05:01:51   

Reply

Marsh Posté le 21-04-2006 à 05:14:53    

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:


Message édité par Cytelis le 21-04-2006 à 05:22:15
Reply

Marsh Posté le 21-04-2006 à 07:51:43    

Cytelis a écrit :

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.

Reply

Marsh Posté le 21-04-2006 à 13:54:07    

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 ?

Reply

Marsh Posté le 21-04-2006 à 13:56:28    

bah si tu mets www-data proprio de public_html, non toto ne sera pas proprio de public_html [:mrbrelle]
logique non [:opus dei]

Reply

Marsh Posté le 21-04-2006 à 14:19:30    

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)

Reply

Marsh Posté le 21-04-2006 à 14:21:52    

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.

Reply

Marsh Posté le 21-04-2006 à 14:34:14    

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 ?

Reply

Marsh Posté le 21-04-2006 à 14:38:35    

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é.

Reply

Marsh Posté le 21-04-2006 à 14:59:48    

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é

Reply

Marsh Posté le 21-04-2006 à 15:13:31    

Bien,
 
Merci pour votre aide, j'ai déjà bien avancé...

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed