Hallo,

Hoe kan ik verbinding maken met een ssh server een een commando uitvoeren via ssh in php, of is dt niet mogelijk?

Alvast bedankt!
Kun je niet iets doen met system() ?
Twan van der Poel schreef op 29.11.2008 16:33
Kun je niet iets doen met system() ?


Wat wil je daarmee doen dan ? Een SSH sessie openen of het commando gewoon lokaal uitvoeren ? In het laatste geval is het maar net afhankelijk van het feit of de webserver op dezelfde server draait als waar het commando uitgevoerd moet worden hè. En dat lijkt me niet het geval, aangezien het dan nogal onnozel is om een SSH sessie te openen.

Hoe wou je de SSH sessie met system(), exec() of shell_exec() in stand houden trouwens ? Lijkt me niet de way to go.
de webserver is een aparte server, de server met ssh bevind zich in het zelfde netwerk. dat 'echo test' is maar een probeersel om te kijken of ik de output krijg.
Willem-Aart schreef op 29.11.2008 16:19
[quote='SanThe schreef op 29.11.2008 16:17'][quote='Willem-Aart schreef op 29.11.2008 16:15'][quote='SanThe schreef op 29.11.2008 15:56']Als jij via ssh echo test doet dan staat dat op het scherm. Echter wel op de server dus.


Nou, dat is niet het geval omdat er een nieuwe bash sessie wordt gestart, en deze wordt niet naar het scherm geschreven :).[/quote]
Bash schrijft standaard naar het scherm.[/quote]

Als ik op mijn server een SSH sessie open krijg toch echt geen extra output op m'n scherm te zien.[/quote]
Nee, klopt, dat gaat naar de terminal die wordt opgestart. Sorry, je hebt gelijk.
Je opent inderdaad een nieuwe sessie zodra je een verbinding maakt. Ik gok zomaar dat je echo niet terug krijgt op je scherm, omdat je de return waarde niet van de server ophaalt. Je stuurt alleen data.

Ik weet niet of je op Unix of Linux iets probeert of op een cisco router? Indien je op Unix of Linux iets probeert, zou je eventueel een command kunnen sturen die een file aanmaakt. Dan kun je via je eigen sessie proberen of je die file werkelijk hebt aangemaakt.

Het ophalen van de respons waarde die je krijgt, krijg je terug op je port. Je moet dus via sockets luisteren naar eventuele waardes die je terug krijgt als ik me niet vergis.

Verder dan dit kan ik je op het moment ook niet helpen.

Reageren