如何更改AWS EC2实例的密码

我使用winscp / putty以root用户身份loginAWS EC2实例,并使用导入了openssh-key的.ppk文件。

早些时候,它被许多人分享,谁都不见了,所以现在我必须改变它,让其他人都不能访问它。

我试图在互联网上search它,但找不到任何。 提前致谢 :)

您需要更改密钥。 在你的实例使用ssh-keygen来做这个例如

ssh-keyget -t rsa -b 2048 Enter file in which to save the key (/root/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /root/.ssh/id_rsa. Your public key has been saved in /root/.ssh/id_rsa.pub. The key fingerprint is: 35:dc:34:c2:98:89:8b:4a:e2:f7:71:ad:09:02:83:57 [email protected] 

现在你有一个公钥(/root/.ssh/id_rsa.pub)需要被添加到/root/.ssh/authorized_keys文件

 cd $HOME/.ssh cp authorized_keys authorized_keys.safe cat id_rsa.pub >> authorized_keys 

稍后您将必须从authorized_keys文件中删除旧密钥。

不要注销。

将新的私钥(/root/.ssh/id_rsa)复制到你的Windows机器,并使用puttygen导入并保存,就像以前一样。

检查您是否可以使用新密钥login。 如果你可以从你的实例中删除旧密钥。

 cat id_rsa.pub > authorized_keys 

不要注销。

现在再次检查您是否可以使用新密钥login


你真的不应该以这种方式使用root帐户。 您应该为需要访问系统的每个人创build单独的用户帐户。 然后,您应该使用sudo来授予他们访问他们所需的命令的权限。 Sudo是大多数(所有?)Linux发行版的基本安装的一部分。

创build一个新的公共sshlogin密钥(请参阅https://help.ubuntu.com/community/SSH/OpenSSH/Keys )并将其添加到/root/.ssh/authorized_keys 。 testing和成功时删除旧密钥。

更改root密码或更好地禁用基于密码的login(请参阅https://help.ubuntu.com/community/SSH/OpenSSH/Configuring#disable-password-authentication )。

还要检查sudo权限(使用visudo )和用户帐户( /etc/passwd

更改密钥的密码不会阻止他人的访问。 这只是你的副本。 这就是为什么你不应该分享一个私人cryptokey的原因。