SSH使用PHP连接到远程服务器

时间:2013-09-14 08:21:53

标签: php ssh

我想使用php建立与远程服务器的 SSH 连接。

我在Linux / CEntOS上使用php 5.3。

到目前为止我做了什么:

$connection = ssh2_connect('192.168.1.22', 22);
ssh2_auth_password($connection, '_username', '_password');
$stream = ssh2_exec($connection, 'ls -l');

但是我收到了这个错误:

致命错误:调用未定义的函数ssh2_connect()

所以,我的问题是:

  1. 默认情况下,php {/ p>

  2. 中是否未安装ssh2_*个函数?
  3. 我是否需要扩展程序或库来使用这些功能?

  4. 我该如何解决这个问题?

3 个答案:

答案 0 :(得分:6)

您可以配置您的服务器(Ubuntu):

sudo apt-get install libssh2-php
sudo service apache2 restart

答案 1 :(得分:5)

phpseclib

  • herehere下载(直接链接),

  • 将其包含在项目中,

然后:

   include('Net/SSH2.php');
   $ssh = new Net_SSH2('www.example.com');
   $ssh->login('username', 'password') or die("Login failed");
   echo $ssh->exec('command');

答案 2 :(得分:3)

ssh_ *函数不是默认安装在php核心中。 你必须使用pecl添加它们,请参阅php手册以获得一个很好的描述:http://de1.php.net/manual/en/ssh2.installation.php