#1 Le 30/11/2010, à 20:37
- ladymiss
Quels droits pour le répertoire www ?...
Bonjour
je voudrais savoir quelle est la bonne pratique (sécurisée) en matière de droits sur le répertoire /var/www pour une serveur web.
J'administre le serveur avec un compte user lady qui est dans le groupe root.
les droits sur www sont
drwxr-xr-x 3 root root 4096 nov 28 14:43 www
est-ce que je dois passer les droits en drwxrwxr-x ? est-ce sans risque ? comment font les gens normalement ?
Ma question doit être très naive mais je suis une grande débutante en gestion de serveur ...
merci d'avance
Miss L
Hors ligne
#2 Le 30/11/2010, à 21:02
- helly
Re : Quels droits pour le répertoire www ?...
Avec ces droits c'est très bien.
Ainsi, seul root pourra modifier les fichiers dans ce dossier.
Archlinux-wmii-dwb.
Un problème résolu ? Faites le savoir en mettant [résolu] à côté du titre de votre topic.
Un problème non résolu ? Faites le savoir en insultant ceux qui cherchent à vous aider.
Un site bleu super remasterised©, un wiki cherchant des volontaires pour traduire un site.
Hors ligne
#3 Le 30/11/2010, à 21:08
- ladymiss
Re : Quels droits pour le répertoire www ?...
ok mais ça nécessite à chaque fois que je modifie une page de mes sites de le faire en root ... ça m'embête. Mais c'est normal ?
Hors ligne
#4 Le 30/11/2010, à 21:12
- helly
Re : Quels droits pour le répertoire www ?...
Bha après ce que tu peux faire, c'est le dossier de ton site qui est contenu dans www, tu le met à tes droits .
Mais les droits de www, faut pas les toucher.
Archlinux-wmii-dwb.
Un problème résolu ? Faites le savoir en mettant [résolu] à côté du titre de votre topic.
Un problème non résolu ? Faites le savoir en insultant ceux qui cherchent à vous aider.
Un site bleu super remasterised©, un wiki cherchant des volontaires pour traduire un site.
Hors ligne
#5 Le 30/11/2010, à 21:17
- droopy191
Re : Quels droits pour le répertoire www ?...
Salut,
Créez un groupe userweb, ajoutez le user lady à ce groupe.
Puis attribuez les droits en écriture sur www au groupe userweb.
Hors ligne
#6 Le 30/11/2010, à 21:28
- alex.jdgworld
Re : Quels droits pour le répertoire www ?...
Hello
si tu veux modifier les fichiers de www-data il faut que www-data soit dans ton groupe
et que toi meme soit dans le groupe de www-data
et pour les droits sur /var/www tu met le propriétaire www-data du dossier avec les droit suivants :
sudo chown www-data:www-data /var/www
sudo chmod 775 /var/www
et ensuite :
gksudo gedit /etc/group
tu recherche www-data et quand tu vois dans le genre :
www-data:x:33:
tu rajoute a la suite ton nom de user soit :
www-data:x:33:alex
et ensuite tu recherche ton nom de user et sur la ligne :
alex:x:1001:
tu rajoute www-data ce qui donne :
alex:x:1001:www-data
et pour les droits sur les fichiers
sudo chown -R www-data:www-data ma_dir_joomla
pour que le proprietaire soit www-data
et
sudo chmod -R 775 ma_dir_joomla
pour le groupe www-data puisse avec lexture/ecriture/execution
c'est comme cela que je fonctionne sans souci
en espérant t'avoir aidé.
Alex
Hors ligne
#7 Le 30/11/2010, à 21:30
- ladymiss
Re : Quels droits pour le répertoire www ?...
@helly : donc je me mets en root, je crée un rep /var/www/monsite et lui je le mets en dwrxwxr-x c'est bien ça ?
en terme de sécurité ça change quoi en fait de laisser www en dwrx-xr-x si la racine de mon site est en dwrxwxr-x ? je suis désolée ça doit être une question très bête mais j'aimerais apprendre tu peux m'expliquer ?
@droopy : lady est déjà dans le groupe root donc ta solution reviendrait à la même chose que de mettre directement www en dwrxwxr-x non ? ou pas ? si oui a priori helly a l'air de dire que c'est pas une bonne idée (ce que je suis toute prête à croire même si je ne sais pas encore pourquoi )
Hors ligne
#8 Le 30/11/2010, à 21:45
- Jules Petibidon
Re : Quels droits pour le répertoire www ?...
La meilleure solution c'est de ne surtout toucher à rien concernant les droits sur ton répertoire www.
Lorsque tu as des retouches et des tests à faire, tu fais ça directement dans ton home. Il suffit d'activer le mod userdir.
sudo a2enmod userdir
et de créer un dossier public_html dans ton home.
À partir de là tu peux travailler facilement, tester, et lorsque tout colle, tu copies dans /var/www
Hors ligne
#9 Le 30/11/2010, à 21:48
- alex.jdgworld
Re : Quels droits pour le répertoire www ?...
Re
je pense perso que root ne doit pas etre proprio de /var/www mais www-data soit apache2
et tu te rajoute au groupe de www-data et tu rajoutes www-data dans ton groupe
comme ca tu peux modifier des fichiers de www-data en droit 775
et vice et versa
si tu as un fichier avec proprio www-data et 755 tu ne pourras pas le modifier
tu sera obliger de faire un sudo donc pas génial (eviter si possible l'on peut de rentrer en sudo)
voila ma vision
Alex
Hors ligne
#10 Le 30/11/2010, à 21:59
- ladymiss
Re : Quels droits pour le répertoire www ?...
ça fait plein de solutions possibles. Je n'ai pas les connaissances pour les juger et choisir. Est-ce que quelqu'un pourrait m'expliquer les risques et dangers à éviter pour que je sois capable comprendre et de faire un choix ?...
Hors ligne
#11 Le 30/11/2010, à 22:19
- droopy191
Re : Quels droits pour le répertoire www ?...
ça fait plein de solutions possibles. Je n'ai pas les connaissances pour les juger et choisir. Est-ce que quelqu'un pourrait m'expliquer les risques et dangers à éviter pour que je sois capable comprendre et de faire un choix ?...
Je ne vois que des mauvaises raisons d'ajouter votre utilisateur dans le groupe root.
la solution de alex.jdgworld ou la mienne d'un groupe dédié ( c'est la meme idée globalement ).
la solution de Jules Petibidon est aussi bonne notamment si vous devez mettre le service page web à disposition à plusieurs utilisateurs. Par contre, je ne vois pas la raison de copier au final les fichiers dans /var/www, il faut encore les droits root/sudo pour le faire.
Dernière modification par droopy191 (Le 30/11/2010, à 22:20)
Hors ligne
#12 Le 30/11/2010, à 22:23
- ladymiss
Re : Quels droits pour le répertoire www ?...
droopy est-ce que tu peux me dire ce qu'il y a de mauvais et de bons dans les différentes solutions ?
Hors ligne
#13 Le 30/11/2010, à 22:29
- ladymiss
Re : Quels droits pour le répertoire www ?...
je vais repréciser un peu en fait. Je suis COMPLETEMENT ignorante. Je sais qu'il "faut" sécuriser son serveur. Mais je ne sais pas de quoi. Ni pourquoi. Donc je ne suis pas capable de comprendre en quoi les solutions proposés répondent ou non à prévenir des dangers. Ces questions sont évidentes pour vous tous et vous me proposez des solutions. Mais j'aimerais comprendre du début, c'est à dire à quoi ces solutions répondent et en quoi elles y répondent... Désolée de partir de si bas...
Hors ligne
#14 Le 30/11/2010, à 23:30
- greg73
Re : Quels droits pour le répertoire www ?...
Hello,
Premièrement chaque processus tourne sous un user donné sous linux (justement pour des questions de sécurité). Apache, le serveur web, est lancé avec le user www-data sous ubuntu. Si bien que ton serveur web aura les droits d'un utilisateur quelconque (www-data) pour la lecture, l'écriture et l'exécution. Bon si /var/www appartient à root, www-data qui n'est pas root et qui ne fait pas parti du groupe root pourra lire les fichiers uniquement si les droits du directoire sont au moins en 775. Ce qui est parfait tant qu'apache n'a pas besoin de modifier des fichiers du site (scripts php).
Si apache a besoin de modifier les fichiers, il est dangereux de mettre les droits en 777. Personne n'a envie de mettre /var/www en 777 pour des questions de sécurité. Tous les utilisateurs du système auraient alors la possibilité de modifier les fichiers accessible sur le net...
L'autre solution c'est de mettre www-data comme propriétaire de /var/www dans de cas tu peux mettre le directoire en 700 et tout fonctionnera parfaitement et apache pourra même modifier des fichiers si nécessaire. Encore mieux tu les mets en 770 et tu rajoutes ton user au groupe www-data et tu pourras toi aussi modifier les fichiers. Le seul problème étant que s'il y a un faille de sécurité dans apache (qui tourne avec www-data) alors le site web pourrait être compromis (qu'une page internet soit modifiée). C'est pour cela que part défaut le directoire est à root....
Donc en conclusion, laisse root:root 775 si apache n'a pas besoin de modifier des fichiers et www-data:www-data avec 770 ou 775 autrement. Rien ne t'empêche de laisser /var/www à root et de mettre certains sous-directoire ou certains fichiers à www-data. Enfin pour plus de confort tu peux rajouter ton user au groupe www-data. Je ne sais pas si je rajouterai ton user au groupe root... cela pourrait être dangereux si ton user est compromis... mais bon c'est peut-être de la parano Je préfèrerai encore mettre le directoire à ton user en 775. Apache pourra les lire.
J'espère que cela t'aidera. N'hésite pas à demander si ce n'est pas clair
Dernière modification par greg73 (Le 30/11/2010, à 23:41)
Hors ligne
#15 Le 30/11/2010, à 23:36
- ladymiss
Re : Quels droits pour le répertoire www ?...
Merci beaucoup Greg ! j'y vois enfin un peu plus clair
J'ai encore des questions mais là je dois partir, je reposterai demain matin
mais je voulais te dire merci vraiment merci avant de partir
++
Hors ligne
#16 Le 30/11/2010, à 23:43
- greg73
Re : Quels droits pour le répertoire www ?...
De rien! A demain
Hors ligne
#17 Le 01/12/2010, à 08:39
- ladymiss
Re : Quels droits pour le répertoire www ?...
Donc en conclusion, laisse root:root 775
actuellement il est en 755. Donc je dois le passer en 775 pour que tout le groupe root (auquel appartient lady) aient les droits dessus
si apache n'a pas besoin de modifier des fichiers
aucune idée de ce dont apache a besoin en droit... je vais utiliser mon serveur pour installer des sites drupal - pas la moindre idée de ce que drupal demande de faire à apache
Personne n'a envie de mettre /var/www en 777 pour des questions de sécurité
oui, ça d'instinct je sentais bien que ça le ferait pas
L'autre solution c'est de mettre www-data comme propriétaire de /var/www [...] Le seul problème étant que s'il y a un faille de sécurité dans apache (qui tourne avec www-data) alors le site web pourrait être compromis
donc si je comprends, cette solution est bien sauf si apache a une faille, la solution d'avant est mieux sauf si le compte lady est compromis.
Si j'ajoute lady au groupe www-data, j'ai des risques, que ça soit apache ou que ça soit lady qui soit compromis. Donc addition des risques, c'est bien ça ?
désolée pour toutes ces questions, c'est vraiment super sympa de m'aider merci beaucoup !
Hors ligne
#18 Le 01/12/2010, à 10:46
- greg73
Re : Quels droits pour le répertoire www ?...
Bonjour,
Personnellement je ne suis pas un fan de mettre d'autres users dans le groupe root. Normalement les directoires des fichiers système appartenant à root ont des droits 755. Mais si des directoires appartenant à root ont des droits 775, il y a alors un risque. Mais je suis peut-être parano... Donc je ne mettrai ni www-data, ni Lady dans le groupe root.
Si tu veux installer drupal, il faudra certainement qu'apache ait accès en écriture au directoire où tu l'installes. Tu as alors plusieurs solutions...
Le plus simple est simplement de mettre www-data comme détenteur du directoire avec des droits 755. Si tu veux en plus que Lady puisse modifier les fichiers, rajoute Lady au groupe www-data et mets les droits en 775.
Tu peux aussi faire l'inverse mettre le directoire comme appartenant à Lady et mettre www-data dans le groupe Lady avec des droits 775.
Hors ligne
#19 Le 01/12/2010, à 10:55
- ladymiss
Re : Quels droits pour le répertoire www ?...
Personnellement je ne suis pas un fan de mettre d'autres users dans le groupe root.
j'ai suivi la recommandation 1 de ce tuto - mauvaise idée ?
sinon je peux garder lady pour gérer la conf générale de mon serveur, et puis faire un userladyweb plus directement dédié à drupal. Good idea ?
Si tu veux installer drupal, il faudra certainement qu'apache ait accès en écriture au directoire où tu l'installes
est-ce que si je crée un sous rep /var/www/drupalsites/ et que je fais les modifs de owner sur ce sous rep c'est plus sécure que si je fais les modifs sur /var/www ? ou ça change rien ? (lady - comprends pas tout ce qu'elle fait ni ce qu'elle dit
)
Le plus simple est simplement de mettre www-data comme détenteur du directoire avec des droits 755. Si tu veux en plus que Lady puisse modifier les fichiers, rajoute Lady au groupe www-data et mets les droits en 775. Tu peux aussi faire l'inverse mettre le directoire comme appartenant à Lady et mettre www-data dans le groupe Lady avec des droits 775.
il y a une différence entre le fait que le owner soit lady ou www-data si je mets les 2 dans le même groupe ?
Encore merci c'est super cool de commencer à comprendre
lady - aime apprendre
je file au taf - back in 40 minutes
Hors ligne
#20 Le 01/12/2010, à 11:29
- greg73
Re : Quels droits pour le répertoire www ?...
j'ai suivi la recommandation 1 de ce tuto - mauvaise idée ?
Pour le groupe root c'est mon avis, mais tu trouveras beaucoup d'autres personnes qui te diront le contraire. Ce qui est important c'est de comprendre ce que cela implique. Le seul risque étant qu'il y ait des directoires système avec des droits 775.
sinon je peux garder lady pour gérer la conf générale de mon serveur, et puis faire un userladyweb plus directement dédié à drupal. Good idea ?
Pourquoi pas, mais cela ne changera pas grand chose à la sécurité de ton serveur.
est-ce que si je crée un sous rep /var/www/drupalsites/ et que je fais les modifs de owner sur ce sous rep c'est plus sécure que si je fais les modifs sur /var/www ? ou ça change rien ?
Dans les fichiers de config d'apache, tu peux définir un site web dans n'importe quel directoire. Par défaut c'est /var/www mais tu peux mettre ce que tu veux. Que tu changes les droits de /var/www ou /var/www/xxx ca ne change rien.
Il y a une différence entre le fait que le owner soit lady ou www-data si je mets les 2 dans le même groupe ?
Seul le propriétaire et root peuvent changer les droits des fichiers. Donc si c'est Lady qui est le propriétaire, www-data (apache) ne pourra pas modifier les droits des fichiers. Mise à part cette petite différence, c'est équivalent. Si tu as donné le droit en écriture au groupe. Apache pourra créer des fichiers ou les effacer.
Hors ligne
#21 Le 01/12/2010, à 11:51
- ladymiss
Re : Quels droits pour le répertoire www ?...
Le seul risque étant qu'il y ait des directoires système avec des droits 775.
Parce que ça serait facile pour un breaker de créer un utilisateur qui fera parti du groupe root que de devoir se faire passer pour root ? c'est ça le truc ?
Seul le propriétaire et root peuvent changer les droits des fichiers. Donc si c'est Lady qui est le propriétaire, www-data (apache) ne pourra pas modifier les droits des fichiers
et en terme de sécurité c'est pareil ?
Tu aurais un lien vers des genres de tuto qui apprennent à casser un systeme en utilisant les failles des droits des répertoires ? pas que je veuilles devenir un pirate mais ça m'aiderait à comprendre je crois
Hors ligne
#22 Le 01/12/2010, à 12:10
- greg73
Re : Quels droits pour le répertoire www ?...
Parce que ça serait facile pour un breaker de créer un utilisateur qui fera parti du groupe root que de devoir se faire passer pour root ? c'est ça le truc ?
Plus il y a d'utilisateurs qui ont des droits étendus plus les risques augmentent... Il suffit qu'un seul soit compromis... mais bon comme je le disait c'est mon point de vue.
et en terme de sécurité c'est pareil ?
Pour moi oui.
Tu aurais un lien vers des genres de tuto qui apprennent à casser un système en utilisant les failles des droits des répertoires ? pas que je veuilles devenir un pirate mais ça m'aiderait à comprendre je crois
Non désolé. Mais pour qu'un système soit sécurisé, il faut que root ne soit pas compromis. Tous les programmes qui tournent et qui sont accessible depuis le net devraient si c'est possible être lancé avec un utilisateur différent que root.
Hors ligne
#23 Le 01/12/2010, à 12:23
- r3dlight
Re : Quels droits pour le répertoire www ?...
'ladymiss'
Comme l'a dit greg73, il faut que tes fichiers appartiennent à un user bidon, avec en général du 644 sur les fichiers et 755 sur les répertoires web, ca suffit très très amplement pour la plupart des applis à peu près développées proprement (ce qui est rare je te l'accorde). Pour du php il existe su-php qui s'impose et il faut systématiquement mettre à jour tes appli web via des patchs, puisque c'est les erreurs de dev des appli qui peuvent compromettre ton serveur ... genre les failles include en php qui permettent d'uploader des vieux ircbot pourris dans ton /var/www/ mais bon la plupart du temps c'est des robots qui balayent des plages d'ip en tentant des trucs hyper générique, ne te monte pas la tête, pour que qq'un s'intéresse de près à ton serveur perso, faut vraiment que ton blog soit diffamatoire...
Hors ligne
#24 Le 01/12/2010, à 12:24
- ladymiss
Re : Quels droits pour le répertoire www ?...
Tous les programmes qui tournent et qui sont accessible depuis le net devraient si c'est possible être lancé avec un utilisateur différent que root.
et un utilisateur autre que root mais du groupe de root c'est une solution à ça ? ou du coup c'est pareil que si c'était lancé par root et faut vraiment un user qui soit ni root ni du groupe root ?
Hors ligne
#25 Le 01/12/2010, à 12:27
- ladymiss
Re : Quels droits pour le répertoire www ?...
Pour du php il existe su-php qui s'impose
heu ... c'est cryptique là ... tu pourrais développer un petit peu ?
Hors ligne