IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration système Discussion :

En finir avec les droits UNIX ?


Sujet :

Administration système

  1. #1
    Membre éprouvé Avatar de renaud26
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2003
    Messages
    1 365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2003
    Messages : 1 365
    Par défaut En finir avec les droits UNIX ?
    Bonjour à tous,

    J'ai un dédié Centos 5 avec PLesk 10.
    Sur ce serveur, des domaines que je suis seul à gérer, que ce soit le FTP, le Shell ou l'interface Plesk.
    Les utilisateurs n'ont qu'un accès Web via des interfaces privées.

    Les sites installés utilisent pas mal de fonctions qui manipulent les fichiers...

    Alors ma question est : comment configurer le serveur pour éviter, à chaque fois que j'installe un site, de se taper des CHMODS dans tous les sens, et évidemment éviter les "Permission denied" au moindre fopen() ou move_uploaded_file() ?

    J'ai fait pas mal de recherches sur Google mais rien vu de clair : des users, des groups...
    Auriez-vous des conseils, des pistes, des tutos pour en finir un bonne fois pour toutes avec ce truc ?
    Merci beaucoup d'avance.

  2. #2
    Expert confirmé Avatar de frp31
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2006
    Messages
    5 196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juillet 2006
    Messages : 5 196
    Par défaut
    mode connerie activé :
    dégages du monde unix et va sous windows.
    mode connerie fin

  3. #3
    Membre Expert
    Avatar de Loceka
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    2 276
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 2 276
    Par défaut
    Tu peux modifier le umask dans /etc/profile et dans ton ~/.bashrc (ou ~/.bash_profile, je sais plus) et le mettre à 0000. Ca créera tes fichiers en 666 et tes répertoires en 777.

    Il faudra quand même rendre exécutable les fichiers exécutables par contre.

  4. #4
    Membre éprouvé Avatar de renaud26
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2003
    Messages
    1 365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2003
    Messages : 1 365
    Par défaut
    Mode correcteur activé
    Les verbes du 1er groupe, à l'impératif, ne prennent pas de s
    Mode correcteur fin

    Et à part ça ? une idée sur la question qui puisse m'aider ?

  5. #5
    Membre éprouvé Avatar de renaud26
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2003
    Messages
    1 365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2003
    Messages : 1 365
    Par défaut
    A Loceka : bonjour et merci de ta réponse.

    Je vais regarder de ce côté là.
    J'ai depuis hier fait de nouvelles recherches et il semblerait que ce soit bien un problème de groupe et d'utilisateurs.
    Une fois qu'un fichier a été modifié (ou crée) par PHP, son propriétaire devient Apache au lieu de "ftp-user" et plus moyen de rien faire dessus, même pas l'écraser via FTP.

    C'est vraiment ce mécanisme que je voudrais modifier.

    EDIT :
    J'ai regardé le fichier etc/bashrc et voici la portion qui semble traiter umask :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    if [ $UID -gt 99 ] && [ "`id -gn`" = "`id -un`" ]; then
    	umask 002
    else
    	umask 022
    fi
    Faut-il que je remplace 002 par 000 ?

  6. #6
    Membre Expert
    Avatar de Loceka
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    2 276
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 2 276
    Par défaut
    Ben si c'est un problème de "owner" ça va pas résoudre ton souci.
    Par contre si le fait de mettre tous les droits en lecture et écriture sur les fichiers résoud le problème alors oui, il suffit de passer les umask à 000 (ou 0000).

    Donc fais le test avant en mettant à la main un chmod 666 sur tes fichiers pour voir si ça change quelque chose à ton problème.

    Après, si tu ajoutes des fichiers par FTP/SFTP/... il est possible qu'il n'utilise pas les fichiers de configuration /etc/profile, /etc/bashrc, ~/... pour l'outil.
    Auquel cas il te faudra voir si c'est faisable dans l'outil en question (par exemple pour FTP je suis pas sûr...).

  7. #7
    Membre éprouvé Avatar de renaud26
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2003
    Messages
    1 365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2003
    Messages : 1 365
    Par défaut
    Oui, si je mets le fichier en 666, ça fonctionne.
    Ce que je voulais éviter, c'est justement de devoir modifier les CHMOD des dossiers et fichiers qui peuvent être concernés par les droits.

    Par contre, après de nouvelles recherches, je vois que le fichier etc/proftpd.conf est aussi concerné par le umask :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    # Umask 022 is a good standard umask to prevent new dirs and files
    # from being group and world writable.
    Umask				022
    Du coup, je ne sais plus trop lequel modifier...

  8. #8
    Membre Expert
    Avatar de Loceka
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    2 276
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 2 276
    Par défaut
    Si tes fichiers sont créés par FTP, modifie juste le fichier de conf de FTP.

    Si tu les crées via un shell (ssh, compte unix, ...) c'est dans /etc et ton home.

    Si c'est via d'autres logiciels, je sais pas.

  9. #9
    Membre éprouvé Avatar de renaud26
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2003
    Messages
    1 365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2003
    Messages : 1 365
    Par défaut
    Euh... mes dossiers et fichiers sont chargés par FTP et ensuite ils sont modifiés / crées via les scripts PHP
    Je n'utilise pas shell pour cela.
    Mais je voudrais bien que cette modif soit valable pour tout le serveur et pas par site...

  10. #10
    Membre Expert Avatar de Marc3001
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2008
    Messages
    829
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Février 2008
    Messages : 829
    Par défaut
    Et pourquoi ne pas avoir pour chaque site un compte sur la machine qui sera utilisé par ftp et pour lancer les process apache de ce site?

  11. #11
    Membre éprouvé Avatar de renaud26
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2003
    Messages
    1 365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2003
    Messages : 1 365
    Par défaut
    Et pourquoi ne pas avoir pour chaque site un compte sur la machine qui sera utilisé par ftp et pour lancer les process apache de ce site?
    Bonjour,

    Je ne comprends pas trop bien la question...
    Pour chaque site, dans Plesk, le domaine (le site) est crée, et oui, ils ont chacun un compte et accès FTP distinct (bien que les utilisateurs finaux ne connaissent pas ces identifiants et n'aient pas accès au FTP).
    Donc pour le site A, si le user FTP est "toto", le propriétaire de ce qui est transféré est bien "toto".
    Mais aussitôt que PHP intervient sur un fichier, le propriétaire devient Apache.
    Et je ne sais pas comment, au niveau de PHP, faire en sorte que, pour un fopen() ou un move_uploaded_file(), par exemple, le proprio reste "toto" et pas Apache.

  12. #12
    Membre Expert Avatar de Marc3001
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2008
    Messages
    829
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Février 2008
    Messages : 829
    Par défaut
    Je ne connais pas Plesk....

    Dans l'idée, j'dirais pour chaque site :
    - tu crées un compte spécifique
    - tu fournis ce compte pour l'accès ftp
    - tu lances les process apache de ce site avec ce compte

  13. #13
    Membre très actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2010
    Messages
    434
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2010
    Messages : 434
    Par défaut
    Bonjour,
    Pour la gestion des droits tu peux regarder du coté des ACL.

    Ensuite quand tu add un site web tu peux lui créer un groupe userweb et mettre les répertoires utilisés dans ton groupe.

    Ensuite ton site web, user ou autres entre dans ce groupe, je ne sais pas comment c'est gérer en arrière plan.

    Ensuite pour modifier les droits tu peux faire un script shell pour modifier les droits de tes fichiers, répertoires, exécutables.

  14. #14
    Membre éprouvé Avatar de renaud26
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2003
    Messages
    1 365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2003
    Messages : 1 365
    Par défaut
    Plesk...bah, c'est comme cPannel ou autres...
    Ce que je ne capte pas :

    tu lances les process apache de ce site avec ce compte
    Qu'est ce que ça veut dire ? Quand l'utilisateur final va se connecter à son site et entrer dans son admin privée, il pourra charger des images, créer des fichiers etc, etc...via des formulaires (blindés). C'est là que les droits m'emm...bêtent !
    Si il y a 100 sites, pas envie, à chaque fois, de devoir faire un 777 sur le dossier "images"...

Discussions similaires

  1. Exécuter avec les droits administrateur
    Par Pandala dans le forum VBScript
    Réponses: 6
    Dernier message: 23/05/2007, 14h58
  2. Réponses: 8
    Dernier message: 15/12/2006, 18h15
  3. Lancer un process avec les droits d'un autre utilisateur
    Par devl83 dans le forum Administration système
    Réponses: 2
    Dernier message: 26/06/2006, 12h03
  4. Réponses: 6
    Dernier message: 18/05/2006, 15h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo