Per SSH mit server verbinden

CikoNo1

Erfahrenes Mitglied
Hallo Leute,

brauch mal wieder eure Hilfe. Ich will mich mit php über ssh mit meinem Managed Server verbinden.
Hab das hier mal probiert:
PHP:
$sshConnect = shell_exec("ssh -l user1 -p 22 user1@IPmeinesServer");
echo "SSH CONNECT: ".$sshConnect;
Aber leider passiert da garnichts. Also ich bekomme keine Fehlermeldung überhaupt nichts.
Kann mir jemand weiterhelfen?

Viele Grüße
Ural
 
Ich sollte erst mal die Suchfunktion benutzen:eek:

Hab das mal gefunden:
PHP:
	$cfgServer = "xxx.xxx.xx.xx";  //IP of your router
		$cfgPort    = 22;                //port, 22 if SSH
		$cfgTimeOut = 10;
						
		$usenet = fsockopen($cfgServer, $cfgPort, &$errno, &$errstr, $cfgTimeOut);
						
		if(!$usenet)
		{
		   echo "Connexion failed\n";
		   exit();
		}
		else
		{
		echo "Connected\n<BR>";
		fputs ($usenet, "user1\r");
		fputs ($usenet, "password\r");
		fputs ($usenet, "java -jar xaz-jar\r");
		while (!feof($usenet))
               	{
		   echo ". ".fgets($usenet, 128)."<BR>\n";
		}
}

Dann komme ich foglende Ausgabe:
Code:
Connected
. SSH-2.0-OpenSSH_4.7
. Protocol mismatch.
.

Was hat das zu bedeuten?
 
Hallo Leute,

hatte dieses Problem auf die Seite gelegt, in der Hoffnung, dass es sich von alleine Löst. Denkste.
Ich bekomme immer noch
Code:
Connected
. SSH-2.0-OpenSSH_4.7
. Protocol mismatch.
.

Welche Bedeutung hat den diese Fehlermeldung?

Viele Grüße
 
Das bedeutet wahrscheinlich dass der Server eine andere Version des SSH-Protokolls erwartet als die SSH-Extension nutzt.

Ich hab eine ganze Weile nicht mehr damit gespielt und weiss jetzt nicht ob die Extension sowohl SSH1 als SSH2 unterstuetzt oder nur eines der beiden.
Dies waere interessant herauszufinden und dann eben entsprechend die Server-Konfiguration zu checken.
 
Also laut phpinfo ist die ssh Extension gar nicht installiert (also ich habe nichts mit ssh gefunden). Und da ich einen Managed Server habe kann ich diese auch nicht nachinstallieren.

Vielleicht kennt einer eine andere Lösung für mein Problem:

Ich habe eine .jar Datei die ich über ein PHP Skript ausführen lassen will.
Genauso will ich den Apache FOP über das PHP Skript ansprechen.

Mein Gedanke war ja über shell_exec, aber das funtzt ja nicht.
Kennt einer einen anderen weg?

Viele Grüße
 
Wenn Du ueber die Shell gehen willst koennte evtl. popen() hilfreich sein.

Ich hab mal geschaut, die SSH-Extension nutzt wohl SSH2. Wenn Du nun so eine Meldung bekommst schaut es danach aus als wuerde der Server wohl nur mit SSH1 arbeiten.
 
Zurück