Forum informatique Tout Pour Le PC: Lancer Une Commande Root Dans Script Php - Forum informatique Tout Pour Le PC

Aller au contenu

Connexion    Inscription    Aide   

Règles minimales

Ceci est un forum d'entraide. Nous sommes tous ici pour aider et s'entraider. Décrivez clairement votre sujet. Sans langage SMS.
Utilisez le minimum de politesse élémentaire, comme dire Bonjour et Merci. Cela motive pour vous aider.
Page 1 sur 1
  • Vous ne pouvez pas commencer un sujet
  • Vous ne pouvez pas répondre à ce sujet

Lancer Une Commande Root Dans Script Php intruduction de commande linux dans script php

#1 L'utilisateur est hors-ligne   moussadjijunior Icône

  • Nouveau TPLPC
  • Icône
  • Groupe : Members
  • Messages : 2
  • Inscrit(e) : 03-June 11
  • RAM:4Go
  • Processeur:core duo 2.1
  • Système D'exploitation:fedora 14

Posté 03 June 2011 à 14h03

Bonjour à tous.
J"effectue un travail avec kannel pourvoir demarrer des services reseuax a disatance.
Je veux utiliser un script php pour le faire mais je ne c'est pas pourquoi ça ne passe pas.
Je me demande si de doit mettre mon script dans init.d parceque en ce moment il est dans un autre repertoire que j'ai nommé "script"ou si je dois le rentre executable ou mm lui donné des droits avec la comment chmod.
Et de plus se pose la question des droit parce que seule root peut lancer la commande /etc/init.d/sendmail start je me demande comment faire pour que cette commande sois accessible a tous!


Voici mon script j'espere que quelqu'un pourra m'aidé.

< Php
$telephone = trim ($_GET["sender"];
$reponse = trim ($_GET["text"];
if ($reponse = "demarrer");
$commande="/etc/init.d/sendmail start";
$result=shell_exec($commande);
echo $result;
{
if ($reponse = "arret");
$commande="/etc/init.d/sendmail stop";
$reponse=shell_exec($commande);
echo $reponse;
}
>
Merci d'avance et j'espere avoir de vos nouvelles d'ici la !



0


Page 1 sur 1
  • Vous ne pouvez pas commencer un sujet
  • Vous ne pouvez pas répondre à ce sujet

Autres réponses dans ce sujet

#2 L'utilisateur est hors-ligne   Blag Icône

  • Habitué TPLPC
  • Icône
  • Groupe : Root Admin
  • Messages : 872
  • Inscrit(e) : 25-September 05
  • Gender:Male
  • Location:Nantes - France
  • Interests:Internet
  • Carte mère:Gigabyte GA-G1.Sniper2
  • Carte Graphique:Gigabyte GTX 570 Overclock
  • RAM:Kingston HyperX T1 2133 2x4GO
  • Processeur:Intel i7 2700K
  • Système D'exploitation:Windows 7 intégrale

Posté 03 June 2011 à 18h46

Salut,

bienvenue sur tplpc.

essaye plutôt passthru, exemple pour démarrer
<?php
passthru("sudo -u root /etc/sendmail.sh start", $err); // start sendmail
?>



et crée un script sendmail.sh, le $1 = le paramètre que tu passes : start ou stop
#!/bin/sh
/etc/init.d/sendmail $1
exit


0

#3 L'utilisateur est hors-ligne   moussadjijunior Icône

  • Nouveau TPLPC
  • Icône
  • Groupe : Members
  • Messages : 2
  • Inscrit(e) : 03-June 11
  • RAM:4Go
  • Processeur:core duo 2.1
  • Système D'exploitation:fedora 14

Posté 13 June 2011 à 17h42

merci d'avoir répondu a mon sujet!
je vais essayer de tester ta réponse et je vous ferais part du résultat.
Encore grand merci de votre aide

0

#4 L'utilisateur est hors-ligne   iftol Icône

  • Nouveau TPLPC
  • Icône
  • Groupe : Members
  • Messages : 6
  • Inscrit(e) : 14-June 11
  • Processeur:intel core 2 duo
  • Système D'exploitation:Ubuntu 11.04

Posté 14 June 2011 à 13h24

Bonjour,
Je suis nouveau sur ce forum.

Blag:

Je tiens juste à préciser que ce script s'exécutera en demandant le mot de passe root.

Chose qui n'est pas souhaitable si l'on vent l'automatiser.

moussadjijunior,
sudo -u root ta_commande

s'exécutera uniquement si l'utilisateur avec lequel tu lances cette commande appartient à sudo en d'autre terme possède les privilèges d'exécuter des commandes root (en préfixant ses commandes avec sudo).

sudo ta_commande
[sudo] password for ton_login:

tu auras cet output

Donner le privilège à tout le monde d'exécuter des commandes root n'est pas conseillé.

est ce que tu arrives à lancer des commande root avec ton login en utilisant sudo?

en attente de vous lire.

0

#5 L'utilisateur est hors-ligne   Blag Icône

  • Habitué TPLPC
  • Icône
  • Groupe : Root Admin
  • Messages : 872
  • Inscrit(e) : 25-September 05
  • Gender:Male
  • Location:Nantes - France
  • Interests:Internet
  • Carte mère:Gigabyte GA-G1.Sniper2
  • Carte Graphique:Gigabyte GTX 570 Overclock
  • RAM:Kingston HyperX T1 2133 2x4GO
  • Processeur:Intel i7 2700K
  • Système D'exploitation:Windows 7 intégrale

Posté 14 June 2011 à 15h49

Bonjour et bienvenue iftol.

Pour que cela fonctionne j'ai édité le fichier /etc/sudoers
pour ajouter la ligne avec l'utilisateur web qui pour moi est www-data
ainsi on passe outre du besoin de mot de passe, sinon la commande passthru retourne le code erreur 1.

# User privilege specification
root    ALL=(ALL) ALL
www-data ALL=(ALL) NOPASSWD:/etc/init.d/sendmail stop, /etc/init.d/sendmail start


ainsi lorsqu'on appelle ce script php depuis son site web ca fonctionne
<?php
$reponse = trim($_GET["cmd"]);
if ($reponse == "demarrer") {
 passthru("sudo -u root /etc/init.d/sendmail start", $err);
 if ($err != 0) echo 'erreur '.$err;
}
if ($reponse == "arreter") {
 passthru("sudo -u root /etc/init.d/sendmail stop", $err);
 if ($err != 0) echo 'erreur '.$err;
}
?>


0

#6 L'utilisateur est hors-ligne   iftol Icône

  • Nouveau TPLPC
  • Icône
  • Groupe : Members
  • Messages : 6
  • Inscrit(e) : 14-June 11
  • Processeur:intel core 2 duo
  • Système D'exploitation:Ubuntu 11.04

Posté 14 June 2011 à 16h17

Pas mal.
En plus tu as limité les privilèges root pour www-data uniquement pour le script.
:D

Une remarque: ce script sera lancé via une interface web ou en ligne de commande?

0

#7 L'utilisateur est hors-ligne   iftol Icône

  • Nouveau TPLPC
  • Icône
  • Groupe : Members
  • Messages : 6
  • Inscrit(e) : 14-June 11
  • Processeur:intel core 2 duo
  • Système D'exploitation:Ubuntu 11.04

Posté 14 June 2011 à 16h36

Si c'est via un serveur web que vous allez lancer ce script, pensez à limiter l'accès par un mot de passe ou par adresse IP (pas pratique si tu te connectes de plusieurs endroits).
Voilà

0

#8 L'utilisateur est hors-ligne   zamouranou Icône

  • Nouveau TPLPC
  • Icône
  • Groupe : Members
  • Messages : 1
  • Inscrit(e) : 14-May 12
  • Système D'exploitation:ubuntu

Posté 14 May 2012 à 11h50

bonjour svp j'ai un erreur de pkill: 12132 - Operation not permitted!!! j'a besoin d'aide
en effet j'exécute un script sh sous php
voici le contenue de /etc/sudoers
root ALL=(ALL) ALL
www-data ALL=(ALL) NOPASSWD
merci d'avance

0

Page 1 sur 1
  • Vous ne pouvez pas commencer un sujet
  • Vous ne pouvez pas répondre à ce sujet

1 utilisateur(s) en train de lire ce sujet
0 membre(s), 1 invité(s), 0 utilisateur(s) anonyme(s)


FI Theme | Auto occasion | Formule 1 : La Toile de la F1 | Forum de discussion | Forum Informatique | concours cadeaux | forum informatique