【发布时间】:2013-06-06 09:12:21
【问题描述】:
提供我的环境背景:
我有 3 台机器 A、B 和 C
A = Webserver,运行一个 php 网站,基本上充当 B & C 的接口
B = Linux Ubuntu 机器,我有 root 访问权限、SSH 和通过 SSH 客户端在机器上工作所需的所有优点(我有这个服务器的 .ppk 私钥文件)
C = 在 Linux 上运行的 MySql 数据库服务器
我可以在 C (Mysql) 上成功执行来自 A (php) 的查询并返回结果。但现在我试图从 A 在 B 上执行 linux 命令。
例如。
我有一个在 B 上运行的脚本,我想从 A (php) 执行一个命令来显示脚本的状态。
在命令行中执行此操作很容易 - ./SomeScript status
但我想在服务器 A 上托管的网站中显示此脚本的状态。
甚至只是检查服务器 A 上服务器 B 的正常运行时间。
这是否可能。我一直在谷歌上搜索,但我没有到达任何地方,如果连接是否安全,我不会太分阶段,因为这是一个封闭的网络,没有外部访问这个网络。
任何建议将不胜感激。
谢谢
【问题讨论】:
-
为什么不在
B上放置一个脚本,提供正常运行时间等特定信息,并允许运行特定程序?不过,您需要让脚本检查 IP 确实来自服务器A。 -
谢谢,我能做到,我遇到的问题是在 A 上的 php 页面上显示 B 上特定脚本的结果
-
结果可能被转储为某种文本或 html 文件。在 B 上生成输出文件后,将其 scp 到 A。
-
但是我如何首先从 A 连接到 B?然后使用我拥有的公钥执行查询/命令?
-
是的,我愿意。我在 A 和 B 上具有 root 访问权限