微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

连接到 SFTP 服务器

如何解决连接到 SFTP 服务器

我正在尝试在 AWS 上设置 SFTP 服务器。

我使用 <file src="..\lib\x86\thepackage.dll" target="lib\net452" /> <file src="..\lib\x64\thepackage.dll" target="lib\net452" /> 作为客户端连接到我在 AWS 上的服务器。 我在连接到本地服务器之前已经尝试过这个并且工作成功,现在唯一的区别是我尝试使用 ppk 而不是密码。

我使用 PuttyGen 将我的公钥转换为 ppk,但仍然不喜欢它。

我的连接是这样的:

ssh2-sftp-client

这是我得到的错误

        await sftp.connect({
            host: process.env.SFTP_HOST,port: process.env.SFTP_PORT,username: process.env.SFTP_USERNAME,privateKey: fs.readFileSync('./transfer_key.ppk')
        })

知道如何以这种方式连接到 AWS 传输吗?

谢谢

解决方法

错误消息暗示它找不到文件,但也许这意味着它找不到有效文件?我认为您的问题可能是 PuttyGen 创建的 .ppk 文件是错误类型的密钥文件。客户端需要“OpenSSH 格式”的私钥,ppk 文件仅用于 putty/pageant/winscp afaik 等 Windows 应用程序。

尝试将您的 .ppk 加载到 puttygen,确保设置了密码,然后使用转换菜单 --> 导出 OpenSSH 密钥选项。这将创建一个新的文本文件,其中包含一个标题行、您编码的私钥和一个在文本编辑器中查看时看起来像这样(只有更长)的页脚:

-----BEGIN RSA PRIVATE KEY-----
MIIEoQIBDIKCAQEAmnsdLEsp2hkdz+kVoCuL6JYiu5t/jUZCeaQc8TRyEeLUsk2H
0wMA8azMyzt+a1JcNa2j+jrE5Fd6UiJ7do6OQFgqLxv48QCpwNximS20yavKNCGs
5HCsP4feVq2/2/IaCMNLEcv2XBweipYyY0ME+w1wSojWwCetMw==
-----END RSA PRIVATE KEY-----

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。