密钥对用于授予对 Amazon EC2 实例的访问权限。它们是公钥/私钥对,通常由 EC2 随机生成,但现有的密钥对(或更具体地说,密钥对的公共部分)可以导入 EC2。
它们的用法如下:
- Windows:从标准 Windows AMI 启动 Windows 时,名为Ec2Config的实用程序会随机生成管理员密码,使用密钥对的公共部分对其进行加密,然后通过系统日志将其传递回。用户必须使用他们的私钥对其进行解密。然后他们可以登录到 Windows。
- Linux:从标准 Linux AMI 启动 Linux 时,密钥对的公共部分被复制到
.ssh/authorized_keys
. 用户可以通过ssh
提供他们的私钥登录。
(对“标准”AMI 的引用是有意的——其他人创建的 AMI 不一定会安装这些实用程序。)
在这两种情况下,建议用户修改他们的实例以使用他们的正常安全标准。例如,Windows 用户应更改管理员密码,或者最好将实例附加到 Active Directory 域。Linux 用户应该创建其他用户并安装他们的标准密钥对。
在 EC2 实例初始启动后,应该不再需要继续使用密钥对。用户应该使用他们自己的密码/密钥对。继续使用与启动实例时最初创建的相同的密码/密钥对不是一个好习惯。
要回答你的问题...
实例上的密钥对不会改变(实际上也不会改变)。密钥对的名称作为实例的属性列出,因此可以识别使用的密钥对。
但是,Windows 用户可以更改管理员密码,Linux 用户可以替换.ssh/authorized_keys
文件的内容。因此,用于登录实例的密码/密钥对可能会更改,但针对实例列出的密钥对(在第一次启动期间使用)不会更改。