在Ubuntu16.04上PHP的SSH2扩展无法正常工作

时间:2017-03-12 07:39:12

标签: php ubuntu-16.04 ssh2-exec

我尝试使用PHP + SSH2扩展来重启我的Ubuntu 16.04机器。我成功安装了SSH2扩展:

enter image description here

然后我编写PHP代码,它成功登录但不执行命令。

<?php
if (!function_exists("ssh2_connect")) die("function ssh2_connect doesn't exist");

if(!($con = ssh2_connect("localhost", 22))){
echo "fail: unable to establish connection\n";
} else {

if(!ssh2_auth_password($con, "lam", "root")) {
    echo "fail: unable to authenticate\n";
} else {
    // allright, we're in!
    echo "okay: logged in...\n";

    // execute a command
    if (!($stream = ssh2_exec($con, "reboot" ))) {
        echo "fail: unable to execute command\n";
    } else {
        // collect returning data from command
        stream_set_blocking($stream, true);
        $data = "";
        while ($buf = fread($stream,4096)) {
            $data .= $buf;
        }
        fclose($stream);
    }
}
}
?>

enter image description here

我不知道是什么问题因为我在Centos 7.0中做了类似的工作。

0 个答案:

没有答案