NewbieContest

Programmation => Langages Web => Discussion démarrée par: Asphator le 27 Avril 2007 à 14:49:19



Titre: [PHP] ssh sous windows
Posté par: Asphator le 27 Avril 2007 à 14:49:19
Bonjour à tous,

Je possède 3 serveurs, dont un loué chez mengine. Je me suis fabriqué une page pour administrer ces serveurs (bouton pour killer, restarter, etc...).
Sous linux, aucun problème, je sais comment taper le script (@exec('ssh root@ip:port kill-9'); par exemple) et je sais comment générer et ou placer les clés privée et publique, pour éviter d'avoir à rentrer les identifiants lors du clique sur un bouton (authorized_keys).

Seulement, sous windows, deux problèmes :
- la commande ssh n'est pas reconnue.
j'aurais bien essayé avec putty, mais dans ce cas, je ne sais pas trop comment faire passer les arguments : @exec('putty.exe .... et après :s
- je ne sais pas du tout où stocker la clé.


Quelqu'un saurait-il éclairer ma lanterne svp?



ps: j'oubliais. Si je tape cmd, puis si je me rend dans le répertoire ou est installé putty, en tapant putty.exe, j'arrive sans problème à le lancer. En revanche, j'ai testé avec @exec, et là, ça me marque une erreur : format win32 non valide. Qu'est-ce que cela signifie?


Titre: ssh/php sous windows
Posté par: Invit le 27 Avril 2007 à 17:07:05
ce truc là (http://the.earth.li/~sgtatham/putty/latest/x86/plink.exe) fera ton bonheur ;)


Titre: ssh/php sous windows
Posté par: _o_ le 27 Avril 2007 à 18:14:10
Citation de: Asphator
Si je tape cmd
Ouaiiiiiis ! Une baston.
(excusez moi, c'est vendredi :wink: )


Citation de: cmd
ce truc là (http://the.earth.li/~sgtatham/putty/latest/x86/plink.exe) fera ton bonheur ;)
Á noter que lorsque l'on télécharge l'installeur de putty, on récupère justement le kit complet, avec putty, plink, le générateur de clefs, etc... Et la dernière version de putty permet - enfin - une connexion sur un port série. :)


Titre: ssh/php sous windows
Posté par: Asphator le 27 Avril 2007 à 18:52:48
Citation
Asphator a écrit:

    Si je tape cmd
^^
Quelque soit ma formulation, je crois que tous les jeux de mots sont possibles, pour peu d'avoir l'esprit suffisament "open-minded" :D

Merci pour ce truc là, je vais aller le tester tout de suite. Je ne le connaissais pas.
(je vous en dirais des nouvelles).

Merci et bon week-end



ps: profite du wk pour te reposer _o_, sinon, je m'attend au pire à mon prochain post :rolleyes:


Titre: ssh/php sous windows
Posté par: Asphator le 15 Mai 2007 à 13:33:03
Bon, le reste du topic ayant disparu, je remets quelques trucs essentiels :

Voilà un morceau de code :


Citation
<?php
$login="xxxx";
$passw="xxxxx";
$connect=ssh2_connect('site.com',22);
$auth=ssh2_auth_password($connect,$login,$passwd);
?>
Et voici le warning que j'obtiens (sous php5/ssh2 activé sous wamp) :

Citation
Warning: ssh2_connect() [function.ssh2-connect]: Error starting up SSH
connection(-2): Timeout waiting for banner
Connexion au serveur échouée
Je sèche sur ce point. Il semblerait que la gestion des sockets de win à unix ne soit pas la même et que du coup... mais après, comment régler ça...


Titre: ssh/php sous windows
Posté par: _o_ le 15 Mai 2007 à 20:53:53
Citation de: Asphator
Bon, le reste du topic ayant disparu, je remets quelques trucs essentiels :
Et voici le warning que j'obtiens (sous php5/ssh2 activé sous wamp) :
Citation
Warning: ssh2_connect() [function.ssh2-connect]: Error starting up SSH
connection(-2): Timeout waiting for banner
Connexion au serveur échouée
Je sèche sur ce point. Il semblerait que la gestion des sockets de win à unix ne soit pas la même et que du
coup... mais après, comment régler ça...
Bof, bof. C'est le connect qui échoue, on en est même pas encore à l'authentification. Donc :
1) Est-ce que la machine résout correctement «site.com» ?
2) Depuis un putty ou une ligne de commande, est-ce que la connexion sur «site.com» fonctionne ?
3) Quid de la configuration de routage de la machine ?
4) Que disent les sniffeurs lancés sur les machines sources et cibles ?
...

Bref, il y a de quoi investiguer. L'histoire des sockets win/unix, je n'y crois pas. Par contre, ça pourrait aider de savoir sous quels OS sont les deux machines.