基于自定义AMI启动的EC2 用户被锁定,无法使用设置的密码登录

由于 CentOS 属于第三方操作系统,相关配置可能需要参考第三方配置文档或源。 针对您的问题,我查找了相关说明,以及在我的环境中启动测试实例,确实可以复现您的问题。 在深入研究后,我可以确认,此问题和 CentOS 在云上引导启动的软件 cloud-init 有关。 cloud-init 此软件通常内置在各大操作系统云映像中,并且在实例启动时自动配置 SSH 密钥、主机名、网路配置等虚拟配置。 在 cloud-init 的配置中,为了安全性顾虑,仅允许使用 SSH 密钥登入,因此在实例从 AMI 映像中启动时,会将默认帐户 centos 锁定。 此配置的说明在官方文档中,可以参考此处: https://cloudinit.readthedocs.io/en/latest/reference/examples.html 针对此问题,

有两个解决方案:

1. 采用自定义帐户,不使用默认的 centos 帐户 ------------------------ 只要创建自定义帐户,并且创建帐户密码,再针对此实例制作 AMI 映像。 如此一来,创建出的帐户便不受到 cloud-init 管理,可以日后通过串口登录。

2. 修改 cloud-init 配置 ------------------------ 需要修改的文档为: /etc/cloud/cloud.cfg 使用文字编辑器 (例如 vim) 开启,并更改下面配置: lock_passwd: true 修改为 lock_passwd: false 并保存。 保存之后,再对实例制作 AMI 映像。 希望上面的资讯对您排查问题有所帮助。

posted @ 2023-12-12 18:21  羊脂玉净瓶  阅读(43)  评论(0)    收藏  举报