2010-12-14 16 views
0

Ich habe Probleme mit dem Erstellen einer SSH-Sitzung über PHP. Ich habe hoch und niedrig geschaut und kann nicht herausfinden, wie das geht. Ich sehe auf einem deiner Posts, dass du diese Verbindung herstellen kannst, ich würde die Hilfe sehr schätzen. Ich habe eine Datei mit dem Namen 'class.shell2.php' eingefügt, die die grundlegenden Funktionen hat, die ich brauche, um eine Verbindung zum ssh-Server herzustellen und Befehle an das Terminal zu senden. Aber wenn ich versuche, eine Verbindung mit dem Server herzustellen, erhalte ich einen Fehler "Schwerwiegender Fehler: Aufruf zu undefinierter Funktion ssh2_connect() in/* / **/* */class.shell2.php auf Linie 62" Bitte hilf mir.SSH-Sitzung durch PHP

Danke

Antwort

3

Die SSH2-Funktionen (including ssh2_connect()) sind nicht Bestandteil der Vertriebsbasis php. Sie sind über PECL verfügbar.

Check the "Installing/Configuring" page for SSH2 on the PHP documentation site für Informationen zur Installation dieses Moduls.

+0

Ich habe dieses Dokument angeschaut und kann nicht herausfinden, wie es funktioniert. Ich bin auf einem Mac und die Anweisungen, die ich glaube, sind für Darwin oder Linux? Ich glaube, ich habe alles installiert, aber es funktioniert immer noch nicht für mich. Gibt es Anleitungen dazu, wie dies auf Mac funktioniert? – user541597

+0

Mac OS-X * ist * "Darwin". Sie sind gleich. Wenn Sie Anweisungen für Darwin haben, dann folgen Sie diesen. Wenn es immer noch nicht funktioniert, dann müssen Sie Ihre Antwort bearbeiten und uns genau sagen, was Sie versucht haben; und welche Ergebnisse (und Fehler) du bekommen hast. Alternativ können Sie auch ['proc_open()'] (http://www.php.net/manual/en/function.proc-open.php) oder ['shell_exec()'] (http: // php .net/manual/de/function.shell-exec.php), um ssh als eine Befehlszeilenanwendung aufzurufen. Wenn Ihre Anforderungen relativ einfach sind, kann dies gut funktionieren. Sie müssen jedoch ssh-Clientzertifikate für die Authentifizierung einrichten. – Lee

+0

Ich entschuldige mich, es ist nicht Darwin sein Debian Ich glaube, ich bin mir nicht sicher. Ich habe jedoch ein anderes Paket namens phpseclib gefunden, das eine net_ssh2-Klasse hat, die für die Herstellung von SSH-Verbindungen von php verwendet wird, aber ich kann keine Verbindung herstellen. Ich bekomme immer eine fehlgeschlagene Login-Nachricht. Ich habe Setup und das Beispiel besagt, kann aber nicht einloggen. Das Handbuch ist online. Alles, was ich tun muss, ist eine SSH-Verbindung zu einem anderen Computer herzustellen und einen seriellen Befehl vom Terminal auszuführen. Könnte ich das mit proc-open() oder shell_exec() tun. Ich habe versucht, die Shell_Exec, aber wie würde ich Benutzername und Passwort für shh Sitzung eingeben. – user541597