SSH-Verbindung und Script ausführen

spacebasic

Grünschnabel
Hallo Leute,

ich habe hier einen Debian Etch mit Apache, PHP5 und der installierten libssh2. Nun möchte ich von diesem "Webserver" mich zu einer Win-Box per SSH verbinden mit PHP.
Getestet habe ich auf Konsolen-Ebene und es funktioniert alles wunderbar in beiden Richtungen. Die Anmeldung soll erstmal nur über User/PW erfolgen.

Auf der Win-Box ist freeSSHd installiert und läuft.
Ausgeführt werden soll ein WSH-Script oder eine bat-Datei mit Pfad C:\test\test\test.vbs.

Mit folgendem Code versuche ich die ganze Zeit, nur leider bekomme ich keine Fehlermeldung und das Script wird auf dem Win-Pc nicht ausgeführt.
Die Anmeldung mit User/Pw scheint zu funktionieren.
PHP:
$connection = ssh2_connect($adress, $sshPort);      
      if(ssh2_auth_password($connection, $sshUser, $sshPw)) {
          $stdout_stream = ssh2_exec($connection, $pfad.'test.vbs');
           // 'cmd /C Befehl' auch schon probiert, gleiches Ergebnis
          $stderr_stream = ssh2_fetch_stream($stdout_stream, SSH2_STREAM_STDERR);
          echo $stderr_stream;       
      } else {
        die ('Authentifizierung über Passwort NICHT erfolgreich!');
      }
Ist die Syntax denn so korrekt oder geht das mit Win nicht?

Im übrigen wird durch das Script auf dem Remote-Pc eine Datei angelegt, die ich dann später auch wieder mit PHP auslesen möchte.

Ich hoffe, hier kann mir jemand weiterhelfen.

MfG
 
Hast du dir die Kommentare zur ssh2_exec()-Funktion auf php.net mal durchgelesen?! Vll. hilft dir da ja was weiter ;)
 
Hallo,

ja hab ich. Und? Sorry, ich würd ja sonst hier nicht fragen! :)
Leider bekomme ich es auch dadurch nicht hin!

MfG
 
Hallo Leute,

hat denn keine Erfahrung mit der libssh2?
Den Logs von freeSSHd kann ich entnehmen, das die Anmeldung geklappt hat und ich Zugriff auf die Kommandozeile bekommen hätte.

Nur die Funktion ssh2_exec() mit den Befehlen funktioniert anscheinend nicht. An was könnte das noch liegen? Rechte auf der Win-Box?
Wie gesagt bekomme ich auch keine Fehlermeldungen von der Funktion, nur ein 'Resource ID #28'.
Es läßt sich keine Datei starten und 'normale' Befehle auf Kommandozeilen-Ebene auch nicht.

Hat jemand noch ne Idee?
Oder gibts ne andere Möglichkeit sich via PHP (SSH) auf anderere Rechner mit anderen OS zu verbinden?

MfG
 
Zurück