今天我像往常一样尝试ssh到我的AWS实例,但是-v得到了“Permision denied”错误,给了我以下内容:
debug1: Next authentication method: publickey
debug1: Offering RSA public key: localuser@localmachine
debug1: Authentications that can continue: publickey
debug1: Trying private key: serverkey.pem
debug1: key_parse_private2: missing begin marker
debug1: read PEM private key done: type RSA
debug1: Authentications that can continue: publickey
debug1: No more authentication methods to try.
如果我尝试以root@my-ip.com身份登录,它将进行身份验证,但会显示消息:“请以用户”ubuntu“而不是用户”root“登录。”
我上次登录时,我在新组“webapps”中为网页创建了一个新用户。我将此用户的主目录指定为与ubuntu用户相同,因为它很方便。我也尝试以此用户身份登录,但没有成功。
此外,我尝试生成一对新密钥(在公共密钥上下载,并从AWS控制台上并在本地保存私钥)。
如果有人可以帮助我,我真的很感激!
编辑:
我失败后正常使用的命令为ssh -i serverkey.pem ubuntu@my-ip.com
我在本地生成了ssh密钥并将其上传到AWS并使用ssh ubuntu@my-ip.com
将密钥存储在〜/ .ssh
答案 0 :(得分:1)
创建ec2实例后,您无法更改密钥。
您是否拥有unique_lock
的备份,如果没有,则无法再登录此实例。使用新密钥重新创建ec2实例是唯一的方法。
答案 1 :(得分:0)
debug1: Trying private key: serverkey.pem
debug1: key_parse_private2: missing begin marker
您编辑了私钥文件吗?你能检查第一行完全是这样的吗?
-----BEGIN RSA PRIVATE KEY-----
答案 2 :(得分:0)
对于任何在这里磕磕绊绊的人,我认为我的问题是将第二个用户的主文件夹分配给ubuntu的主文件夹。由于这是不安全的,它与SSH连接混淆。我不得不创建另一个实例并恢复将旧卷附加到新服务器实例的信息。