我想使用远程桌面登录aws.amazon.com。因为这需要用户的密码。我正在尝试登录,但由于某些证券更改已经从AWS端进行。所以它无法正常工作。现在要获取密码我需要pem文件,但是我的客户端错放了它。
我已尝试Resetting an Administrator password获取Instance.But在步骤5-d中阻止我执行此操作。我已附加屏幕截图。
另外我认为可以将指纹密钥转换为RSA PRIVATE KEY吗?因为我有指纹密钥。如果我找到了RSA密钥,那么我可以解密密码。可以使用任何在线创建方法吗?
尽管没有获取密码,但尝试创建新的实例并附加旧卷磁盘。 有人面临同样的问题吗?如果您有任何解决方案,请告诉我。 在此先感谢。
答案 0 :(得分:4)
啊!如果最初启动实例的AMI已被弃用(已过期),则该文档化过程将无法正常工作。
对于第5步,只需从EC2管理控制台的 AMIs 部分选择您的AMI,然后从“操作”菜单中选择启动命令。这将允许您使用您创建的AMI启动新计算机。确保选择具有.pem
文件的新密钥对。
然后,从第6步继续。一般步骤是:
\Program Files\Amazon\Ec2ConfigService\Settings\config.xml
文件,并将Ec2SetPassword
参数更新为Enabled
(请参阅该文档页面上的步骤9)答案 1 :(得分:3)
我购买了开发者支持并找到了解决方案。所以我想我应该在这里分享一下,这也可以节省你的钱。
下面列出了重置密码的另一种方法。
使用SSM [1]
首先,我们创建了新的“恢复”IAM角色,添加了AmazonEC2RoleforSSM政策
在实例上直接将该规则应用于您的实例,然后单击“实例设置”,然后单击“附加/替换IAM角色”。注意您可能需要在规则应用之前重新启动。
重置本地管理员密码:
2.在页面左侧,单击“文档”,然后单击“创建文档”,将以下JSON脚本粘贴到“内容”中。然后单击页面右下角的蓝色“创建文档”按钮。
{
"schemaVersion": "1.2",
"description": "Changes the local administrator password.",
"parameters": {
"Password": {
"type": "String",
"default": "",
"description": "(Required) The new password for the local administrator account."
}
},
"runtimeConfig": {
"aws:runPowerShellScript": {
"properties": [
{
"id": "0.aws:runPowerShellScript",
"timeoutSeconds": 60,
"runCommand": [
"",
"Function Reset-AdminPassword {",
" Param (",
" [Parameter(Mandatory=$true)]",
" [string]$Password",
" )",
"",
" $computer = [ADSI]\"WinNT://$($env:computername)\"",
" $users = $computer.psbase.Children | Where-Object {$_.psbase.schemaclassname -eq 'user'}",
" foreach ($user in $users) {",
" $userObject = New-Object System.Security.Principal.NTAccount($user.Name)",
" $userSID = $userObject.Translate([System.Security.Principal.SecurityIdentifier])",
" if(($userSID.Value.Substring(0,6) -eq 'S-1-5-') -and ($userSID.Value.Substring($userSID.Value.Length-4, 4) -eq '-500')) {",
" $user.SetPassword($Password)",
" Write-Host \"Successfully changed the password for $($user.Name).\"",
" }",
" }",
"}",
"",
"Reset-AdminPassword -Password {{ Password }}"
]
}
]
}
}
}