通过SSH使用PHP/Python访问远程telnet服务器的数据
我有一台运行CentOS 5.5的服务器,上面有一个本地的telnet服务(只能从本地访问),当通过telnet发送正确的命令时,它会打印出我们会计系统中活跃用户的列表。我需要把这些信息放到我们的内部网站上,而这个网站是用PHP做的。
我写了一个Python脚本,使用telnetlib模块在CentOS服务器上运行,这个脚本简单地捕获telnet命令的输出,并将其打印到标准输出(stdout)。我在网页服务器和CentOS服务器之间设置了基于密钥的SSH连接,这样就可以从网页服务器远程运行这个Python脚本。我可以通过SSH从网页服务器成功执行这个脚本,并且它会在网页服务器的标准输出上打印出用户列表。我希望能够执行这个SSH命令,并把结果存储到一个变量中,以便在网站上显示。
但是,我无法通过exec()、shell_exec()、passthru()或其他任何PHP执行函数来显示数据。我很清楚我可能是从完全错误的角度来处理这个问题!那么,捕获SSH输出的最佳方法是什么呢?
1 个回答
0
为什么不把你的输出(stdout)重定向到一个文件呢?然后用你的PHP网站框架去读取这个文件,并显示结果。