1

我在安装了 Wamp 的 Windows XP 机器上。目前,我正在使用 putty 连接我的远程 Linux 机器。

我想通过 php shell_exec() 方法(cp,ls,...)执行 Linux 命令。

有人知道如何先连接我的 Linux 机器,然后在 Windows 环境中运行这些命令吗?

任何建议将不胜感激......

4

4 回答 4

1

您不能LinuxWindows. 您可以SSH使用putty. 看来您正在运行。

您可以通过 ssh 转发连接。查看腻子屏幕,转到Connection > SSH > Tunnels

然后你添加一个隧道:

source port: 1234 
destination port: localhost:80
type is Local

所以你打开Internet Explorer,在地址栏中输入:然后将http://localhost:1234端口1234转发到80远程 linux pc 上的端口。

您也可以通过设置将其转发到 WAMP

destination port: *ip of the wamp server*:80

然后你可以Windows从网络外部访问电脑,只要它putty正在运行。

于 2012-08-28T14:31:35.373 回答
0

您可以:

我使用了一个扩展的 SSH2 类,可以在此处找到:带有异常处理的 SSH2

于 2012-08-28T18:51:53.920 回答
0

听起来您希望 Windows 上的 PHP 脚本在远程 Linux 服务器上运行 SSH 命令。为此,请参阅PHP SSH2 扩展

绑定到 libssh2 库,该库使用安全加密传输提供对远程机器上资源(shell、远程执行、隧道、文件传输)的访问。

这将允许您通过 SSH 连接到 Linux 服务器并在删除服务器上执行命令(cpls等)。这是一些示例代码:

$connection = ssh2_connect('shell.example.com', 22);
ssh2_auth_password($connection, 'username', 'password');
$stream = ssh2_exec($connection, 'hostname');
echo "Output: " . stream_get_contents($stream);

值得注意的是,这可能不是完成这项任务的最安全或最可靠的方式。

于 2012-08-28T14:38:14.217 回答
0

我不认为你可以在 Windows 机器上执行 linux 命令。

您可能要考虑使用适用于 Windows 的 OpenSSH 并跳过 php.ini 文件。

但是你会得到一个 Windows Shell。C:\\>and no lsor cp,但完全控制。

您还可以进行实验并使用 linux 运行虚拟机并与它共享您的 Windows 驱动器。

remote server linux- - ssh - - > local virtual linux- - - 共享文件夹 - - >windows

于 2012-08-28T14:44:35.643 回答