|
Executer un script de une page web
|
|
07-01-2012, 22:44:10
Message : #1
|
|||
|
|||
|
Executer un script de une page web
Salut a tous, Bonne année et meilleurs vœux pour 2012 :)
Alors voila, J'aimerais pouvoir exécuter des scripts, .sh par exemple depuis une page web Exemple : arreter / rebooter un serveur minecraft, rien de plus j'ai regarder avec php et la variable system mais sa n'a pas donner grand chose, après j'ai vu un sujet sur les cgi-bin j'aimerais savoir ce que vous en penser, si c'est faisable, si oui quelqun peut m'aiguillez avec un code en exemple ? ![]() En tout ca je tient a SOULIGNER, ce n'est pas en vu de faire un panel ou quoi que ce soit, c'est personnel, c'est certes pour exécuter des scripts de reboot ou autre mais rien de plus Merci a vous :) |
|||
Pour ne plus voir ces publicités, il suffit de s'inscrire !
|
08-01-2012, 11:42:53
(Ce message a été modifié le : 08-01-2012 11:59:33 par warhawk3407.)
Message : #2
|
|||
|
|||
|
RE: Executer un script de une page web
Je vois les choses ainsi :
-Avoir un minimum de conaissances en php / SQL / Shell -Créer un .htacess pour sécuriser la page. -Une BDD ou un fichier pour stocker les noms des screens et les IDs des serveurs minecraft. -Ensuite deux solutions : tu as soit la libssh, soit phpseclib. Dans les deux cas, google is your friend. Pour la libssh, tu as le man sur php.net. Ces deux commandes permettent de communiquer vie SSH à ton dédié. Exemple d'intégration avec phpseclib, module SSH : <?php include('Net/SSH2.php'); $ssh = new Net_SSH2('www.domain.tld'); if (!$ssh->login('username', 'password')) { exit('Login Failed'); } echo $ssh->exec('pwd'); echo $ssh->exec('ls -la'); ?> Il faut récupérer l'etat des serveurs, pour savoir quelles actions opérer, tu peux utiliser fsockopen. pense tj au man de php.net. Si le port est ouvert, alors le serveur est up. Donc on peut soit le reboot soit arreter. (dans les deux cas, on se racroche au screen du serveur que l on veut reboot/stopper, et on envoie notre/nos commandes. De meme, tu peux selectionner ton script shell en conséquence). Si le port est fermé, alors soit le serveur est en cours de boot (donc penser à mettre en place un timer lors des démarrages / redemarrages, afin d eviter de lui demander 10 démarrages car on croit que ca fait rien), soit il est rééllement out, donc on boot(et tu met le .sh correspondant). Si tu veux faire plus simple, tu structure une page avec un switch, c'est elle qui va choisir quel .sh il faut executer. Une autre page qui va faire office de formulaire sous forme de cases à cocher, en fonction de la case cochée, on tombe sur un cas du switch. Le formulaire pointe vers la page au switch, qui va traiter le formulaire. Je t ai fait en trés gros la theorie, il me semble necessaire de faire un mini panel pour quelque chose de "propre", à toi de faire le reste .
![]() Left4Ever - Communauté Left 4 Dead 2 Forum de la Communauté Filiale du groupe communautaire multigaming "GameCities" Thanks a lot G2 ;) |
|||
|
08-01-2012, 14:13:58
(Ce message a été modifié le : 08-01-2012 14:14:18 par Pollux.)
Message : #3
|
|||
|
|||
|
RE: Executer un script de une page web
t'exploite une XSS :D
|
|||
Pour ne plus voir ces publicités, il suffit de s'inscrire !
|
08-01-2012, 15:36:23
Message : #4
|
|||
|
|||
|
RE: Executer un script de une page web
si il y a un htaccess ca limite
|
|||
|
08-01-2012, 17:21:26
Message : #5
|
|||
|
|||
|
RE: Executer un script de une page web
Merci warhawk3407
C'est sympa de consacrer du temps pour me répondre ;) Alors j'ai bien compris la chose, seulement sa me semble assez poussé par rapport a ce que j'ai vraiment besoin, J'ai deja un script de lancement minecraft, avec toutes les commandes telles : start stop restart command backup ... Donc la seul commande a exécuter serais enfaite /etc/init.d.minecraft restart c'est des petites commandes toutes bêtes, je ne compte pas faire de panel avec donc sa m’embêterais de faire quelque chose de complexe pour si peux . je m’était penché sur les cgi-bin, j'avais fais un script .sh avec dedans : mkdir test puis un sccript.sh dans le cgi-bin qui faisait appel a l'autre script, le dossier test se créer sans soucis, avec l'use www-data donc j'ai ensuite modifier ma commande, sudo -u root mkdir test < ./root.pw qui créer donc le fichier avec les droits root jusque la tout est ok, mais quand j'essaye d’exécuter une commande telle que killall-9 java, sans succés C'est du bricolage ce que je fais je pense, mais je cherche vraiment a faire un truc trés simple pour ma petite personne ^^ encore merci ! |
|||
Pour ne plus voir ces publicités, il suffit de s'inscrire !
|
08-01-2012, 19:44:18
Message : #6
|
|||
|
|||
|
RE: Executer un script de une page web
mais avec la fonction system() cela fonctionne ? tu dit que cela n'a pas donné grand chose, mais si tu nous donnait un ecm ?
|
|||
|
08-01-2012, 20:02:27
Message : #7
|
|||
|
|||
|
RE: Executer un script de une page web
sinon, essaye avec exec();
Sincerement, la methode simple que je propose n est pas si compliqué que ca .
|
|||
Pour ne plus voir ces publicités, il suffit de s'inscrire !
|
10-01-2012, 21:08:44
(Ce message a été modifié le : 10-01-2012 21:09:08 par Norico.)
Message : #8
|
|||
|
|||
|
RE: Executer un script de une page web
Code PHP : /* action.php */c'est basique mais ca marche. ne reste plus qu'a faire le formulaire et les tests éventuels de code d'erreurs et de connexion sécurisé. Code : <form name="action" method="POST" onsubmit="return onsubmitform();">TNT Admin | Web & Shell Steam Game Panel | TMS2 Project on github |
|||
|
11-01-2012, 19:18:45
Message : #9
|
|||
|
|||
|
RE: Executer un script de une page web
Merci a vous , c'est vraiment sympa ;)
Norico tu ma mâcher le travail et tu me la emballer que dire de plus ? Je test ca des que je peux et je vous dit ce qu'il en est c'est basique mais je cherche encore plus simple, rien a redire un grand merci ;) |
|||
Pour ne plus voir ces publicités, il suffit de s'inscrire !
|
11-01-2012, 23:28:24
Message : #10
|
|||
|
|||
|
RE: Executer un script de une page web
tu veux mon paypal ?
|
|||

Retourner sur TutoS-GameServer.fr





.
![[Image: left4ever_sign.png]](http://admins.left4ever.net/ressources/images/left4ever_sign.png)
