最近我一直在使用Ubuntu LTS 14.04 AMI AWS创建了一个新的实例。正如我们所知道AWS允许基于密钥登录默认情况下。当我试图下载server.pem密钥SSH,我得到了下面的屏幕上的警告信息,然后会提示输入用户密码。
错误:
$ ssh -i server.pem ubuntu@remote-server.com
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0644 for 'server.pem' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
bad permissions: ignore key: server.pem
ubuntu@remove-server.com's password:
当我意识到这个问题,所以我找到了容易修复它方法。如果我们仔细阅读错误信息,我们会明白,有一些问题与server.pem文件的权限。
解决方法:
根据安全策略,你的私钥文件不能是为了公开查看使用SSH协议成功登录到服务器。因此,更改文件权限来限制它只能访问所有者。使用下面的命令来做到这一点。
$ chmod 400 server.pem
现在尝试用相同的密钥文件相同的命令为SSH。
$ ssh -i server.pem ubuntu@remote-server.com
您将能够正常ssh来使用相同的私钥的服务器。