【问题标题】:cannot load key using phpseclib无法使用 phpseclib 加载密钥
【发布时间】:2015-10-14 02:41:23
【问题描述】:

需要帮助。我使用 phpseclib 0.3.10,我想我无法加载我的私钥。 这是我的代码。

                include('Net/SFTP.php');
                include('Crypt/RSA.php');

                $sftp = new Net_SFTP('mydomin.net');
                $key = new Crypt_RSA();
                $key->setPassword('anypass');
                $key->loadKey(file_get_contents(FCPATH.'path/to/id_rsa'));
                if (!$sftp->login('username', $key) && !$sftp->login('username', 'password')) {
                    exit('Login Failed');
                }

                print_r($sftp->nlist());

返回登录失败。我可以使用该私钥连接到 filezilla 中的远程。我已经在谷歌的任何地方搜索过,但结果还是一样。

【问题讨论】:

    标签: php codeigniter ssh sftp phpseclib


    【解决方案1】:
        if (!$sftp->login('username', $key) && !$sftp->login('username', 'password')) {
            exit('Login Failed');
        }
    

    您尝试使用 RSA 密钥和密码登录。除非您的服务器确实在使用多因素身份验证,否则您可能只想执行 !$sftp->login('username', $key) 而不是 !$sftp->login('username', 'password') 位。

    我的猜测:你只是用 Net_SSH2 做密码位,因为你的 RSA 私钥受密码保护。

    【讨论】:

      猜你喜欢
      • 2012-12-09
      • 2019-01-26
      • 1970-01-01
      • 2013-03-04
      • 2019-08-15
      • 1970-01-01
      • 1970-01-01
      • 2012-05-08
      • 2021-08-27
      相关资源
      最近更新 更多