可通过TCP访问守护进程以保持SSH会话打开,创建新会话和发送命令

时间:2013-02-17 02:41:36

标签: php c ssh openssh

我目前正在设计一些SSH控制软件来向服务器组发送命令。前端是用PHP编写的,我目前正在使用Net_SSH2 PHP扩展。当我尝试一次执行多个命令,或者通过SSH从延迟超过150ms的服务器请求输出命令(需要几秒钟才能接收输出)时,这证明是有问题的。
是否有现有的软件允许我创建SSH会话,保持打开状态(如果断开连接则重新连接)并将命令发送到我选择的会话,而不是每次我都要发送命令时都打开新连接?
我目前正在使用此设置
- Centos 6.3 64bit
- 使用PHP-FPM的Nginx

任何想法都会非常感激。

1 个答案:

答案 0 :(得分:1)

您可以设置一个使用exec()并由POST接收的远程PHP侦听器。然后你根本不需要使用SSH。

调用器:

//command to execute is sent to this page
//prepare data
//use cURL to POST to listener

监听器:

//request is received
//process request
exec($command);