可以ssh和scp到ec2 linux实例但是不能scp从linux实例到本地机器

时间:2014-02-19 02:21:17

标签: command-line ssh amazon-ec2 amazon scp

我有一个非常奇怪的问题。当我尝试使用以下行连接到我的Linux实例时,它可以工作。

ssh -i "F:\Work\Thomas Final Site\Bhasha.pem" ec2-user@xx.xxx.xxx.xxx

但是当我尝试使用以下行从Linux实例scp到运行Windows 7的家用机器时,我收到以下错误。

scp -i "F:\Work\Thomas Final Site\Bhasha.pem" -r ec2-user@xx.xxx.xxx.xxx:~/smart-two-site "F:\Work\smart-two"

Could not create directory '/home/User/.ssh'.
The authenticity of host 'xx.xxx.xxx.xxx (xx.xxx.xxx.xxx)' can't be established.
RSA key fingerprint is xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx.
Are you sure you want to continue connecting (yes/no)? yes
Failed to add the host to the list of known hosts (/home/User/.ssh/known_hosts).
Permission denied (publickey).

我无法理解为什么使用相同的公钥我可以ssh到实例中,但不能使用scp。我也可以从我的本地机器scp到linux实例,但是当我尝试从我的linux实例scp到我本地机器的本地机器时它会崩溃。

关于这种情况发生的原因和原因的任何想法?

2 个答案:

答案 0 :(得分:1)

在sftp协议中使用Filezilla它应该可以工作。将ppk文件添加到sftp下的设置。

答案 1 :(得分:1)

一般建议。您在Linux和Windows框之间运行scp来处理文件的方式永远不会有效。 SCP会假设连接两端的文件系统都是基于Linux / unix的。

相反,当您需要在Linux和Windows主机之间复制文件时,请使用某些软件,例如FileZillaWinSCPBitWise(和其他许多人)。

所有这些软件都有自己的方式来利用您需要用于传输文件的.pem文件。请阅读他们各自的手册。