Mat*_*ock 2 linux ssh amazon-ec2 amazon-web-services
我的密钥对和可能的 SSH 权限有问题,因为我无法再通过 SSH 连接到我的 EC2 实例。
我执行以下命令:
ssh -i /Users/Matt/Downloads/private-key.pem ec2-user@XX.XXX.XXX.XXX
Run Code Online (Sandbox Code Playgroud)
请记住,我刚刚在 AWS 管理控制台中创建了这个密钥对,它将密钥 .pem 文件下载到我的下载文件中。然后我在回复“是”以继续连接后收到以下错误消息。
Failed to add the host to the list of known hosts
(/Users/Matt/.ssh/known_hosts).
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0644 for '/Users/Matt/Downloads/private-key.pem' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Load key "/Matt/Downloads/private-key.pem": bad permissions
Permission denied (publickey).
Run Code Online (Sandbox Code Playgroud)
好的,所以我花了一天的大部分时间来解决这个问题,并尝试检索 pub 文件,将其作为密钥对导入等,但我仍然获得权限被拒绝(公钥)或提示一个不存在的实例关联的密码。我相当确定这一定是我自己的 SSH 权限问题,但我迷路了。
这是我在 ssh -v 后在终端中得到的
usage: ssh [-XXXXXXXXXXXXXXX] [-b bind_address] [-c cipher_spec]
[-D [bind_address:]port] [-E log_file] [-e escape_char]
[-F configfile] [-I pkcs11] [-i identity_file]
[-L [bind_address:]port:host:hostport] [-l login_name] [-m
mac_spec]
[-O ctl_cmd] [-o option] [-p port]
[-Q cipher | cipher-auth | mac | kex | key]
[-R [bind_address:]port:host:hostport] [-S ctl_path] [-W host:port]
[-w local_tun[:remote_tun]] [user@]hostname [command]
Run Code Online (Sandbox Code Playgroud)
任何帮助将不胜感激。
答案 - 仅供参考 - 一旦您下载了 .pem 文件,您只需运行以下命令,然后您就可以通过 SSH 连接到您的实例。
chmod 400 /Users/Matt/Downloads/private-key.pem
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3529 次 |
| 最近记录: |