Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1727 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Commande Shell et php

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Commande Shell et php

n°1717461
darknewbie​31
Posté le 14-04-2008 à 20:11:32  profilanswer
 

Bonjour,
 
J'aurais besoin d'un peu d'aide pour finir un script PHP qui lancerais des commandes shell, bien evidament il faut que cela soit sécurisé.
Je voudrai lancer une commande pour reboot mon serveur dédier.
Une autre pour lancer mon serveur teamspeak. ( sh teamspeak start|stop)
Et une derniere pour gerer mon parfeu ( IPTABLES -A Input x.x.x.x drop )
 
J'aimerais pouvoir lancer ces commandes sur mon site, afin ce laisser certain membres les lancer mais ces membres ne doivent pas avoir accés au autre commandes du dédier.
 
Merci d'avance.

mood
Publicité
Posté le 14-04-2008 à 20:11:32  profilanswer
 

n°1717577
rengzehn
Posté le 15-04-2008 à 10:14:15  profilanswer
 
n°1717595
skeye
Posté le 15-04-2008 à 10:34:46  profilanswer
 

darknewbie31 a écrit :

Bonjour,
 
J'aurais besoin d'un peu d'aide pour finir un script PHP qui lancerais des commandes shell, bien evidament il faut que cela soit sécurisé.
Je voudrai lancer une commande pour reboot mon serveur dédier.
Une autre pour lancer mon serveur teamspeak. ( sh teamspeak start|stop)
Et une derniere pour gerer mon parfeu ( IPTABLES -A Input x.x.x.x drop )
 
J'aimerais pouvoir lancer ces commandes sur mon site, afin ce laisser certain membres les lancer mais ces membres ne doivent pas avoir accés au autre commandes du dédier.
 
Merci d'avance.


Tu crées des scripts php qui lancent ces commandes, et tu sécurises l'accès à ces scripts...


---------------
Can't buy what I want because it's free -
n°1717612
darknewbie​31
Posté le 15-04-2008 à 10:46:07  profilanswer
 

J'utilise les commandes
 
exec et shell_exec mais elle ne semble pas marché.
Peu etre du fait que ca lance pas mes script en root ?
echo exec('whoami'); retourne www-data.
 
Voici mes commandes :
 
1 - exec('reboot');
 
2 - exec('cd /home/TeamSpeak/');
     shell_exec('./teamspeak $action');
//$action est donné via php pour restart start ou stop.
 
3 - iptables -A INPUT -s $user_IP -j DROP
//$user_IP est sélectionner via php.
 
Est -ce bien comme ca que je doit les écrire ?

n°1717622
skeye
Posté le 15-04-2008 à 10:49:37  profilanswer
 

Tu n'es pas root via php, ça c'est clair.:D
Il faut dans ce cas effectivement configurer sudo pour donner le droit à www-data d'exécuter ces commandes en tant que root...


---------------
Can't buy what I want because it's free -
n°1717629
darknewbie​31
Posté le 15-04-2008 à 10:58:33  profilanswer
 

Et je fait ca comment ?
 
www-datat            ALL = /usr/bin/su operator ?
 
J'avoue que je ne comprend pas bien le tuto de configuration de sudo, je suis un peu perdu la dedans.
 
Si non est-il possible de les lancer en root ?
 
EDIT : Je commence a comprendre.
Cepandant moi je tourne sur Lunix Debian sarge.
Je ne possede pas de sudouser.


Message édité par darknewbie31 le 15-04-2008 à 11:07:50
n°1717659
rengzehn
Posté le 15-04-2008 à 11:15:05  profilanswer
 

http://doc.ubuntu-fr.org/sudo
une doc en fr.
Tu as un fichier sudoers à editer avec visudo. Une fois que t'as compris comment c'est foutu, c'est de la balle.

n°1717726
darknewbie​31
Posté le 15-04-2008 à 12:17:43  profilanswer
 

C'est bon j'ai compris. :D
 
Par contre pour les alias de commandes
Cmnd_Alias    APACHE=/etc/init.d/apache2 restart
Le APACHE est juste un nom ou correspond a quelque chose de précis ?
 
dans mon cas j'ai :
Cmnd_Alias    REBOOT = /usr/sbin/reboot
Cmnd_Alias    TeamSpeak=/home/TeamSpeak/teamspeak2-server_startscript restart
Cmnd_Alias    TeamSpeak=/home/TeamSpeak/teamspeak2-server_startscript start
Cmnd_Alias    TeamSpeak=/home/TeamSpeak/teamspeak2-server_startscript stop
 
Mais pour IPTABLES je voit pas trop comment faire. :/
 
EDIT : Avec ces alias aucun résultat.
Je me suis apercu que echo exec('whoami'); retourne www-data or quand je rentre cette utilisateur dans sudoers et que je fait sudo -l je ne voit pas les droit ni cette utilisateur.
En revanche en metant root, j'ai bien la commande qui apparait.


Message édité par darknewbie31 le 16-04-2008 à 00:44:12

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Commande Shell et php

 

Sujets relatifs
[SHELL]Utilisation du resultat de ma commande GREP pour un nul [CLOS][shell/Windows] Exécuter une commande en background ???
[Shell] commande sort pour fichier txt[SHELL] extraction valeur de commande SQL
Une commande shell unix pour faire un POST Http d'un fichier ?[shell/batch] quelle commande utiliser ?
[PERL] [Debutant] Commande shell source en perl[Linux shell] execution de commande ?
Appel de commande shell unix en java 
Plus de sujets relatifs à : Commande Shell et php


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR