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

Langage PHP Discussion :

[FTP] Problème avec shell_exec() (safe_mode = Off)


Sujet :

Langage PHP

  1. #1
    Membre éclairé Avatar de FrankOVD
    Homme Profil pro
    Directeur des systèmes d'information
    Inscrit en
    Juin 2005
    Messages
    438
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Directeur des systèmes d'information
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Juin 2005
    Messages : 438
    Par défaut [FTP] Problème avec shell_exec() (safe_mode = Off)
    Bonjour,

    Je désire utiliser la fonction shell_exec() pour modifier des fichiers contenus dans /home/... mais il semble qu'apache soit incapable de le faire. J'ai essayé d'appeler mon script simplement avec la commante "php monfichier.php" et ça a fonctionné sauf que ça cesse de fonctionner dès que j'appelle ce script via apache.

    le safe_mode de apache est a Off et je ne vois donc pas trop quel est le problème. Je suis capable d'utiliser des commandes PHP pour créer des fichiers à cet endroit mais lorsque je passe par shell_exec() tout se complique. Quelqu'un pourrait m'éclairer?

  2. #2
    Membre émérite Avatar de |PaRa-BoL
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    738
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 738
    Par défaut
    Quelle commande essayes tu d'executer ?
    Que donne system() ?

  3. #3
    Membre éclairé Avatar de FrankOVD
    Homme Profil pro
    Directeur des systèmes d'information
    Inscrit en
    Juin 2005
    Messages
    438
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Directeur des systèmes d'information
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Juin 2005
    Messages : 438
    Par défaut
    Rien de plus malheureusement.

    J'ai essayé tout bêtement de faire un chmod() sur mes fichiers avant d'exécuter mon script et même la commande chmod() ne fait rien.

  4. #4
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Par défaut
    C'est normal du fait qu'Apache tourne sous un utilisateur différent (et dédié) par rapport au propriétaire des fichiers que vous tentez de manipuler. Vous n'avez pas ce problème puisque lorsque vous exécuter la commande php vous le faîtes sur votre propre utilisateur. Me tompre-je ? Cependant, il devrait afficher un message d'erreur lié justement à ce problème de droits lors du shell_exec ...


    Julp.

  5. #5
    Membre éclairé Avatar de FrankOVD
    Homme Profil pro
    Directeur des systèmes d'information
    Inscrit en
    Juin 2005
    Messages
    438
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Directeur des systèmes d'information
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Juin 2005
    Messages : 438
    Par défaut
    Non tu ne te trompes pas c'est bien ce que j'ai réalisé. L'affichage des messages d'erreurs sur ce serveur (en production) est très restreint ce qui explique que je ne vois rien de tel. Cependant, j'ai besoin de pouvoir exécuter mes commandes sur les fichiers mentionnés par mon client. Comment pourrais-je?

  6. #6
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Par défaut
    Citation Envoyé par FrankOVD
    Comment pourrais-je?
    Faire ?

    Les fonctions ftp, les fonctions ssh, sudo éventuellement, suPHP, ... Mais ça dépend de vos besoins et surtout de l'accès dont vous disposez à la machine.


    Julp.

  7. #7
    Membre éclairé Avatar de FrankOVD
    Homme Profil pro
    Directeur des systèmes d'information
    Inscrit en
    Juin 2005
    Messages
    438
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Directeur des systèmes d'information
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Juin 2005
    Messages : 438
    Par défaut
    Je crois que je devrais vous fournir plus de précisions pour en retour obtenir des solutions qui me conviennent.

    Le problème sur lequel j'ai travaillé est le suivant :

    Lorsque de la création d'un message envoyé automatiquement en cas d'absence, Squirrelmail crée le fichier .vacation.msg dans le répertoire personnel de l'utilisateur. En raison du charset utilisé par le serveur (UTF8 - Ne peut être modifié par demande du client), les caractères accentués se retrouvent déformés dans le fichier malgré que le charset de Apache soit iso-....-1 (Désolé je ne m'en rappelle aps par coeur).

    Donc, lorsque ce fichier est créé, j'aimerais exécuter une commande shell qui permet de modifier l'encodage de ce fichier. C'est cette commande qui ne fonctionne pas.

  8. #8
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Par défaut
    Une tâche CRON (système) pourrait être une alternative simple à mettre en place dans ce cas (vous êtes libres au niveau de la programmation de cette tâche en plus) ? Il faut toutefois pouvoir l'ajouter (ie passer par l'administrateur du système).


    Julp.

  9. #9
    Membre éclairé Avatar de FrankOVD
    Homme Profil pro
    Directeur des systèmes d'information
    Inscrit en
    Juin 2005
    Messages
    438
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Directeur des systèmes d'information
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Juin 2005
    Messages : 438
    Par défaut
    Bonjour,

    Je comprends où tu m'ammènes mais je me permet de poser cette question.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Pourquoi ces fonctios existent-elles si je ne peux les utiliser d'aucune façon?

  10. #10
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Par défaut
    Le problème ne se situe pas au niveau de la fonction mais au niveau du système et plus particulièrement sur les droits des fichiers. Je m'explique : la fonction chmod fonctionnera très bien sur un fichier créé par Apache (il en sera propriétaire) mais imaginez maintenant que tout le monde puisse utiliser chmod sur n'importe quel fichier (c'est ce que vous auriez aimé faire), dans ce cas vous auriez ainsi accès à l'ensemble du système (/etc/shadow, inconstestablement le plus intéressant) par l'intermédiaire du serveur Apache voir plus grave positionner le set-uid bit sur un shell.


    Cordialement, Julp.

  11. #11
    Membre éclairé Avatar de FrankOVD
    Homme Profil pro
    Directeur des systèmes d'information
    Inscrit en
    Juin 2005
    Messages
    438
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Directeur des systèmes d'information
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Juin 2005
    Messages : 438
    Par défaut
    Je saisis.

    Alors je crois que je devrais commencer à évaluer l'impact d'un changement de charset sur le serveur sur les applications en place.

    Merci!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [FTP] Problème avec fopen ou mon hébergeur ?
    Par YagamiLight dans le forum Langage
    Réponses: 2
    Dernier message: 06/07/2007, 17h06
  2. [FTP] Problème avec mput
    Par Death83 dans le forum MATLAB
    Réponses: 1
    Dernier message: 20/12/2006, 13h00
  3. [FTP] Problème avec fopen sur URL
    Par Biboune2008 dans le forum Langage
    Réponses: 14
    Dernier message: 22/06/2006, 17h00
  4. Réponses: 21
    Dernier message: 09/04/2006, 23h13
  5. Réponses: 4
    Dernier message: 06/01/2006, 10h45

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