我在使用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
然后我有了其他文件夹...
我不知道!请有人帮我!