我可以将SSH放到EC2实例中:
ssh -i "my_key.pem" ec2-user@my-public-ip然而,scp不起作用:
scp -r –i "my_key.pem" ./my_file ec2-user@my-public-ip:/home/ec2-user/my_file拒绝许可(公开密钥) 失联
我也尝试过使用公共实例DNS,但是没有什么改变。
你知道为什么会发生这种事吗?如何解决呢?
发布于 2017-01-11 16:43:26
发生这种情况的唯一方法是在当前目录中找不到私钥mykey.pem。您可能尝试了来自与ssh不同的目录的scp。
使用您的键的完整路径尝试以下操作:
scp -r –i /path/to/my_key.pem ./my_file ec2-user@my-public-ip:/home/ec2-user/my_file如果失败,则使用-v选项发布输出。它会告诉你问题出在哪里
scp -v -r –i /path/to/my_key.pem ./my_file ec2-user@my-public-ip:/home/ec2-user/my_file发布于 2021-10-23 10:26:57
我有点晚了,但这可能对某人有帮助。
不要使用/home/ec2-用户。而是直接使用文件名或文件夹名,例如,下面的命令将您的my_file放在主文件夹(即/ home /ec2-user)
scp -r –i "my_key.pem" ./my_file ec2-user@my-public-ip:my_file或者说,如果您在/home/ect-user/my_data上有一个文件夹
然后使用以下命令将文件复制到文件夹
scp -r –i "my_key.pem" ./my_file ec2-user@my-public-ip:my_data发布于 2020-06-25 01:01:52
愚蠢的迟增编
为了避免每次指定私钥,只需将以下内容(没有注释)添加到.ssh/config文件(如果还没有在那里创建它):
Host testserver // a memorable alias
Hostname 12.34.56.67 // your server ip
User ec2-user // user to connect
IdentityFile /path/to/key.pem // path to the private key
PasswordAuthentication no然后,一个简单的ssh testserver应该可以在任何地方工作(因此你的scp也是)。
我使用它通过scp与Vim连接,使用:
vim scp://testserver/relative/file/path
或
vim scp://testserver//absolute/file/path
和
vim scp://testserver/relative/dir/path/ (注意后面的斜杠)
直接从本地编辑文件和浏览文件夹(因此使用我宝贵的.vimrc <3配置)。
解决方案找到here
希望这会有帮助!)
https://stackoverflow.com/questions/41595130
复制相似问题