【发布时间】:2021-03-26 04:57:17
【问题描述】:
这是我第一次使用公共私钥,我收到回调错误。我一直在努力寻找解决方案,但我不确定它是否与设置有关或我正在使用什么。
我的设置是 2 个 Virtual BOX VM(托管服务器的 Mint Linux,托管客户端的 Mac OS X) 两者都设置在桥接适配器上 两个 VM 都运行 Ubuntu 20.04,都是全新安装 这些是用于设置公钥的说明(我已经非常熟练地执行此操作,我已经做过几次了)
https://www.linuxbabe.com/linux-server/setup-passwordless-ssh-login
出于测试目的,设置完成时没有使用释义。 我可以毫无问题地通过 SSH 连接到服务器 我的 cron 作业运行 shell 连接没有问题
我的 PHP 代码测试连接性非常简单。
$connection = ssh2_connect('192.168.2.199', 22, array('hostkey'=>'ssh-rsa'));
ssh2_auth_pubkey_file($connection, 'sonyrules', '/opt/www-files/id_rsa.pub', '/opt/www-files/id_rsa');
我得到的第一个错误是它无法读取文件。我通过将文件移出主目录并为其分配自己的目录来解决此问题。该错误更改为当前错误。
PHP 警告:ssh2_auth_pubkey_file():使用公钥的 sonyrules 身份验证失败:回调返回错误
这是我卡住的地方。我查看了 /var/log/auth.log 并看到了以下内容。我认为它不能告诉我为什么我会收到回调错误。
12 月 15 日 14:26:02 测试 sshd[1359]:从 192.168.2.180 端口 59666:11 收到断开连接:PECL/ssh2 (http://pecl.php.net/packages/ssh2) [preauth] 12 月 15 日 14:26:02 测试 sshd[1359]:与验证用户 sonyrules 192.168.2.180 端口 59666 [preauth] 断开连接
任何帮助将不胜感激。
【问题讨论】: