无法使用 scp 上传文件,但使用 pscp 可以

无法使用 scp 上传文件,但使用 pscp 可以

我可以使用具有私钥的登录名登录远程服务器。此私钥没有任何密码。在PuTTyWindows 上使用时,我可以使用私钥毫无问题地登录该远程服务器。pscp在 Windows 上使用此密钥也可以毫无问题地使用。

scp在 Linux 上使用相同的密钥时,它似乎不起作用。最后收到的消息scp是这些

debug1: ssh_rsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey,password
debug1: Next authentication method: publickey
debug1: Trying private key: /path/to/key/id_rsa_download2.ppk
debug1: key_parse_private2: missing begin marker
debug1: key_parse_private_pem: PEM_read_PrivateKey failed
debug1: read PEM private key done: type <unknown>
debug1: read_passphrase: can't open /dev/tty: No such device or address
debug1: Next authentication method: password
debug1: read_passphrase: can't open /dev/tty: No such device or address
debug1: Authentications that can continue: publickey,password

权限被拒绝,请重试。 debug1:read_passphrase:无法打开/dev/tty:没有这样的设备或地址 debug1:可以继续的身份验证:publickey,密码 权限被拒绝,请重试。 debug1:read_passphrase:无法打开/dev/tty:没有这样的设备或地址 debug1:可以继续的身份验证:publickey,密码 debug1:没有其他身份验证方法可尝试。 权限被拒绝(publickey,密码)。

我正在pscp使用这些参数进行调用

pscp -r -v -l username -i /path/to/key/id_rsa_download2.ppk -P port C:\some\local\dir username@remoteserver:/remote/dir

我正在scp使用这些参数进行调用

scp -r -v -i /path/to/key/id_rsa_download2.ppk -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -P port /some/local/dir username@remoteserver:/remote/dir

有人能提示我问题出在哪里吗?

编辑 当我尝试scp在命令行中调用命令时,它会scp要求我输入密码,但密钥不应该要求我输入密码。

答案1

文件.ppk油灰私钥文件,它不是 OpenSSH 密钥文件。请参阅openssh 密钥和 putty 密钥有什么区别?

scp您发布的消息来看:

debug1: Trying private key: /path/to/key/id_rsa_download2.ppk
debug1: key_parse_private2: missing begin marker
debug1: key_parse_private_pem: PEM_read_PrivateKey failed 

OpenSSH 无法解析您提供的密钥文件。

相关内容