Droit des utilisateurs

L'auteur de ce sujet a trouvé une solution à son problème.
Auteur du sujet

Salut,

J'ai créer plusieurs dossier dans mon dossier www de apache2. Seulement j'aimerais que les utilisateurs est accès qu'a leur dossier perso /home/usertest et leur dossier /var/www/usertest, pour avoir accès http://zestedesavoir.com/usertest.

Seulement je n'arrive pas à chmod correctement, si je chmod tous à 000, je pourrais plus rien faire, donc comment je peux chmod un utilisateur depuis le root? Ou alors je fonctionne mal?

Merci de votre aide

+0 -0

Bonjour

Je ne comprend pas bien la question :

chmod depuis le root

Les droits vont de paire avec les utilisateurs et les groupes, donc, la commande chown. Si tu n'as rien changé, /var/www et tout ce qu'il contient appartient à www-data. C'est l'utilisateur qui fait tourner apache2 et qui doit avoir les droits en lecture et en écriture si tu utilises un Cms. Pour que les utilisateurs puissent écrire, il faut donc que cela se passe au niveau du groupe, mais alors ils peuvent ecrire dans tous les dossiers

Si tu veux aussi que tes utilisateurs puissent écrire dans leurs répertoires, mais pas dans celui des autres, chown et chmod ne suffisent pas, il faut aussi utiliser les acl

Tout cela n'est vrai que si les utilisateurs ont un accès à un shell complet sur la machine via ssh par exemple. Je ne l'ai jamais expérimenté, mais tu peux egalement faire un chroot pour que tes utilisateurs ne voient que leur dossier.

+0 -0

Les droits vont de paire avec les utilisateurs et les groupes, donc, la commande chown. Si tu n'as rien changé, /var/www et tout ce qu'il contient appartient à www-data. C'est l'utilisateur qui fait tourner apache2 et qui doit avoir les droits en lecture et en écriture si tu utilises un Cms. Pour que les utilisateurs puissent écrire, il faut donc que cela se passe au niveau du groupe, mais alors ils peuvent ecrire dans tous les dossiers

Si tu veux aussi que tes utilisateurs puissent écrire dans leurs répertoires, mais pas dans celui des autres, chown et chmod ne suffisent pas, il faut aussi utiliser les acl

Je ne suis pas sûr de bien comprendre l'argument du "seuls les acl sont utilisables ici". Si vous le voulez bien, je vais donc proposer ma solution, et vous allez me dire pourquoi j'ai tort.

Il existe donc toujours un utilisateur "web" (ça peut être www-data, http (mais alors plutôt dans /srv/http dans ce cas), ça dépends des distros, du coup je vais le nommer ici web, comme ça je ne fais pas de jaloux). Du coup, je vois 2 solutions :

  • laissez web comme propriétaire de toute l'arborescence dans var/www, et chaque utilisateur a un groupe à lui, nommons-le utilX, et son dossier dans var/www a comme groupe utilX, avec toutes les permissions.
    • ça oblige à avoir un groupe par utilisateur, mais certaines distros le font déjà de base.
    • on ne "perturbe" pas web puisqu'on ne change rien.
    • un accès partagé ne peut se faire qu'en étant plus permissif sur other, donc c'est pas génial. De plus, cette ouverture doit être réalisée soit par root, soit par web.
  • autre solution que je trouve plus élégante : chaque utilisateur est propriétaire de son dossier dans var/www et web n'a accès à ce dossier que grâce au groupe.
    • il ne faut pas foirer ses permissions sur le groupe (sinon, plus de page web …)
    • chaque utilisateur peut changer la permission de son dossier
    • il peut donc faire un partage partiel via le groupe, mais ça oblige à ce moment là de rajouter le groupe utilX à l'utilisateur web (parce qu'ouvrir les permissions sur le groupe web n'est pas franchement plus sûr que sur other (les utilisateurs auront accès à tout les dossiers de tout le monde dans var/www))

Donc, en fait, ça dépend un peu de ce que tu veux faire:

  • Si c'est pour fixer le machin une fois pour toute, avec des utilisateurs qui se plient entièrement aux règles imposées au départ, solution 1.
  • Si c'est un dossier de plus pour les utilisateurs dans un premier temps, qui est accessible au surf web dans un second temps, solution 2.

Conclusion : où est-ce que je me suis planté ?

Édité par dosmpm

There is no place like /home.

+0 -0

La soultion2 donne donc accès au répertoire home/utilX à l'utilisateur web. C'est peut-être pas idéal au niveau sécurité ça :euh:

Sauf si tu crée un groupe par utilisateur dédié à ça (chaque utilisateur a donc, avec un système type ubuntu (debian ?), 2 groupe : celui créé automatiquement + celui pour ça) ;) .

There is no place like /home.

+0 -0

Je confirme pour Debian comme pour Ubuntu :) Et il n'y a pas de raison pour que ça ne fonctionne pas effectivement :)

Après, ça commence à faire pas mal de manip aussi. Je ne vois pas en quoi les ACLs sont plus compliquées.

+0 -0
Vous devez être connecté pour pouvoir poster un message.
Connexion

Pas encore inscrit ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte