我有一个正在运行的EC2实例(FreeBSD 9 AMI AMI -8cce3fe5),我可以使用亚马逊创建的密钥文件ssh到它,没有密码提示,没有问题。
但是,当我想要使用scp将一个文件复制到实例中时,我被要求输入密码:
scp somefile.txt -i mykey.pem root@my.ec2.id.amazonaws.com:/
Password:
你知道为什么会发生这种情况/如何预防吗?
我有一个正在运行的EC2实例(FreeBSD 9 AMI AMI -8cce3fe5),我可以使用亚马逊创建的密钥文件ssh到它,没有密码提示,没有问题。
但是,当我想要使用scp将一个文件复制到实例中时,我被要求输入密码:
scp somefile.txt -i mykey.pem root@my.ec2.id.amazonaws.com:/
Password:
你知道为什么会发生这种情况/如何预防吗?
当前回答
使用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
其他回答
我一直挂在这里,因为我正在指定我的公钥文件
scp -i [private key file path]
当我发现这个错误并将其改为私钥路径时,我就万事俱备了。
测试:
执行如下命令:
sudo shred -u /etc/ssh/*_key /etc/ssh/*_key.pub
然后:
创建ami (ec2的图像)。 从第2步的新ami(图像)启动,选择新键。
scp -i /path/to/your/.pemkey -r /copy/from/path user@server:/copy/to/path
我使用下面的命令从本地linux Centos 7复制到AWS EC2。
scp -i user_key.pem file.txt ec2-user@my.ec2.id.amazonaws.com:/home/ec2-user
使用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