phpseclib问题-SSH_MSG_USERAUTH_FAILURE:publickey * PHP

时间:2018-07-20 23:22:25

标签: php phpseclib

我在使用phpseclib时遇到了一些问题,就像我的第二篇文章一样,我已经部分解决了这个问题,但是我无法使其正常工作...

无论如何这里是问题所在: 我已经使用composer安装了phpseclib,并且正在使用此测试脚本来连接到由亚马逊托管的VPS,这给我带来了一些麻烦,所以我了解到,我需要按顺序使用.pem密钥文件进行身份验证。容易吧?

那是脚本:

<?php
include 'vendor/autoload.php';

$loader = new \Composer\Autoload\ClassLoader();
$loader->addPsr4('phpseclib\\', __DIR__ . 'vendor/phpseclib/phpseclib');
$loader->register();

use phpseclib\Crypt\RSA;
use phpseclib\Net\SSH2;

//$key = new Crypt_RSA();
$key = new RSA();
$ret = $key->loadKey(file_get_contents('Key_1.pem'));

if(!$ret){
    echo "loadKey failed\n";
    exit;
}

// Domain can be an IP too
$ssh = new SSH2('ip.ip.ip.ip');
if (!$ssh->login('username', $key)) {
    print_r($ssh->errors);
    exit('Login Failed');

}

echo $ssh->exec('pwd');
echo $ssh->exec('ls -la');

?>

所以这是我遇到的一些问题:

1- Crypt_RSA无法正常工作,找不到类(RSA类没有给我任何错误) 2-使用RSA我遇到此错误

SSH_MSG_USERAUTH_FAILURE: publickey ) Login Failed

也许我在包含路径上做错了什么?

phpseclib位于:

vendor/phpseclib/phpseclib/phpseclib

然后我有了其他文件夹...

我不知道!请有人帮我!

0 个答案:

没有答案