scp(安全复制)到没有密码的ec2实例

问题描述 投票:348回答:13

我有一个运行的EC2实例(FreeBSD 9 AMI ami-8cce3fe5),我可以使用我的亚马逊创建的密钥文件ssh到它,没有密码提示,没问题。

但是,当我想使用scp将文件复制到实例时,我被要求输入密码:

scp somefile.txt -i mykey.pem [email protected]:/

Password:

任何想法为什么会发生这种情况/如何预防?

amazon-web-services amazon-ec2 ssh scp pem
13个回答
739
投票

我想到了。我的论点错误。这有效:

scp -i mykey.pem somefile.txt [email protected]:/

1
投票

在您的情况下,用户root将不会有任何问题。但在某些情况下,您需要以不同的用户身份登录SSH,请确保您所使用的scp-ing目录对您正在进行SSH的用户具有足够的权限。


0
投票

写下这段代码

scp -r -o "ForwardAgent=yes" /Users/pengge/11.vim [email protected]:/root/

如果您具有可访问目标服务器的SSH密钥而源服务器没有,则添加-o“ForwardAgent = yes”将允许您将SSH代理转发到源服务器,以便它可以使用您的SSH密钥连接到目标服务器。


0
投票

要使用PSCP,您需要使用PuTTYgen转换私钥时生成的私钥。您还需要Linux实例的公共DNS地址

pscp -i C:\path\my-key-pair.ppk C:\path\Sample_file.txt ec2-user@public_dns:/home/ec2-user/Sample_file.txt

-5
投票

刚测过:

运行以下命令:

sudo shred -u /etc/ssh/*_key /etc/ssh/*_key.pub

然后:

  1. 创建ami(ec2的图像)。
  2. 从第2步的新ami(图像)启动选择了新密钥。

51
投票
scp -i /path/to/your/.pemkey -r /copy/from/path user@server:/copy/to/path

35
投票

我使用下面的命令从本地linux Centos 7复制到AWS EC2。

scp -i user_key.pem file.txt [email protected]:/home/ec2-user

19
投票
scp -i ~/.ssh/key.pem ec2-user@ip:/home/ec2-user/file-to-copy.txt .

文件名不应该在pem文件和ec2-user字符串之间 - 这不起作用。这也允许您保留复制文件的名称。


17
投票

siliconerockstar的评论得到答案,因为它对我有用

scp -i kp1.pem ./file.txt [email protected]:/home/ec2-user

8
投票

假设您要发送的pem文件和somefile.txt位于Downloads文件夹中

scp -i ~/Downloads/mykey.pem ~/Downloads/somefile.txt [email protected]:~/

如果它不起作用,请告诉我


3
投票

scp -i /home/barkat/Downloads/LamppServer.pem lampp_x64_12.04.tar.gz

这对你们所有人都非常有帮助


2
投票

我的hadoopec2cluster.pem文件是我本地mac目录中唯一的文件,无法使用scp -i hadoopec2cluster.pem hadoopec2cluster.pem ubuntu@serverip:~将其scp到aws。

将hadoopec2cluster.pem复制到hadoopec2cluster_2.pem然后scp -i hadoopec2cluster.pem hadoopec2cluster_2.pem ubuntu@serverip:~。瞧!


2
投票

我被挂了,因为我正在指定我的公钥文件

scp -i [private key file path]

当我发现错误并将其改为私钥路径时,我就完全没了。

© www.soinside.com 2019 - 2024. All rights reserved.