PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : mit php über ssh auf server befehle absetzen



JAF
19-06-2008, 10:22
hallo,

ich moechte mit php mich zu einem ssh-server verbinden und dort konsolenbefehle ausführen.

zusaetzlich hat das programm das ich von auf der konsole starte auch noch eine interaktive benutzeroberflaeche (auswahlfelder, textfeld usw).

kann ich sowas mit php steuern?

mfg JAF

undefined
19-06-2008, 12:38
jaein
Befehle absenden ja (Siehe Manual:proc) eine Interaktive Konsole nein.
Es gibt hierfür einige Java Lösungen. z.B Webmin hat so ein Modul
http://doxfer.com/Webmin/CommandShell#The_SSH_Telnet_Login_module

JAF
19-06-2008, 19:34
jaein
Befehle absenden ja (Siehe Manual:proc) eine Interaktive Konsole nein.
Es gibt hierfür einige Java Lösungen. z.B Webmin hat so ein Modul
http://doxfer.com/Webmin/CommandShell#The_SSH_Telnet_Login_module

"The module's biggest limitation is that interactive commands like vi, passwd and telnet cannot be run. There is no support for providing input to a command once it has started, so you are limited to non-interactive programs like cp, ls and rm."

also ging es nicht einmal mit dem ;(

aber rein logisch muesste es ja gehen:
stdin ist meine eingabe, stdout und stderr meine ausgaben, sehe ich doch richtig, oder?

auch mit


progamm << EOF
test
EOF

kommt die eingabe - auch bei dieser interaktiven konsolenanwendung - ins programm...

msi
19-06-2008, 22:36
"The module's biggest limitation is that interactive commands like vi, passwd and telnet cannot be run. There is no support for providing input to a command once it has started, so you are limited to non-interactive programs like cp, ls and rm."

also ging es nicht einmal mit dem ;(

aber rein logisch muesste es ja gehen:
stdin ist meine eingabe, stdout und stderr meine ausgaben, sehe ich doch richtig, oder?

auch mit


progamm << EOF
test
EOF

kommt die eingabe - auch bei dieser interaktiven konsolenanwendung - ins programm...

probleme kriegst bei programmen die terminaleinstellungen setzen/nutzen,
also vim,less,passwd,...

undefined
20-06-2008, 10:13
"The module's biggest limitation is that interactive commands like vi, passwd and telnet cannot be run. There is no support for providing input to a command once it has started, so you are limited to non-interactive programs like cp, ls and rm."

also ging es nicht einmal mit dem ;(

aber rein logisch muesste es ja gehen:
stdin ist meine eingabe, stdout und stderr meine ausgaben, sehe ich doch richtig, oder?

auch mit


progamm << EOF
test
EOF

kommt die eingabe - auch bei dieser interaktiven konsolenanwendung - ins programm...
Du kannst mit proc alles ausgeben und pipen.
Aber halt keine Interaktive Konsole. Eventuell über Sockets jedoch zum einen macht das wenig sinn, zum anderen werden hierbei ebenen frei gesetzt wo ich ehrlich gesagt auf keinem Webspace (gerade bei php) den Zugriff erlauben würde.

zenobic
23-06-2008, 00:11
Hi,

falls php auf einem V-Server läuft, geht es als Extension;

http://de.php.net/ssh

Nach ssh_connect kann man mit ssh2_shell (http://de.php.net/ssh2_shell) z.B. xterm aufmachen und stdout mit fwrite/fputs.