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

Ali*_*lah 2 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');
Run Code Online (Sandbox Code Playgroud)

但是我收到了这个错误:

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

所以,我的问题是:

  1. 是ssh2_*功能默认不安装PHP?

  2. 我是否需要扩展程序或库才能使用这些功能?

  3. 我怎么解决这个问题 ?

Ron*_*tel 7

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

sudo apt-get install libssh2-php
sudo service apache2 restart
Run Code Online (Sandbox Code Playgroud)

  • 在ubuntu 16.04中,要安装的软件包是`php-ssh2` (5认同)

Ali*_*lah 6

phpseclib

  • 从此处或 此处下载(直接链接),

  • 将其包含到项目中,

然后 :

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