0

我正在尝试连接以与 PHP 建立 SSH 连接,我的托管公司说我们不允许在共享服务器上进行 SSH 连接。所以有什么解决方法,我可以使用其他一些功能来连接。

 <?php


    if (!function_exists("ssh2_connect")) die("function ssh2_connect doesn't exist");
    // log in at server1.example.com on port 22
    if(!($con = ssh2_connect("server5500.asd.com", 22))){
        echo "fail: unable to establish connection\n";
    } else {
        // try to authenticate with username root, password secretpassword
        if(!ssh2_auth_password($con, "asd", "gh45@asd")) {
            echo "fail: unable to authenticate\n";
        } else {
            // allright, we're in!
            echo "okay: logged in...\n";

            // execute a command
            if (!($stream = ssh2_exec($con, "ls -al" ))) {
                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);
            }
        }
    }
    ?>
4

1 回答 1

4

试试phpseclib,一个纯 PHP SSH 实现。例如。

<?php
include('Net/SSH2.php');

$ssh = new Net_SSH2("server5500.asd.com");
if (!$ssh->login("asd", "gh45@asd")) {
    exit('Login Failed');
}

echo $ssh->exec('ls -la');
?>
于 2012-10-23T22:13:16.583 回答