如何通过Cloud Init用户数据执行两个脚本配置root密码及强制修改
Cloud Init 实现root密码设置+强制首次登录修改密码
你可以直接在同一个cloud-config配置里完成这两个需求,不需要拆分两个脚本。Cloud Init的chpasswd模块本身支持密码过期配置,具体实现如下:
完整配置示例
#cloud-config chpasswd: list: | root:o~s@grnet expire: true
说明
list字段:指定root用户的初始密码为o~s@grnetexpire: true:会将root用户的密码标记为立即过期,用户首次登录系统时,会被强制要求修改新密码
如果你更倾向于用自定义脚本的方式实现密码过期(比如需要额外逻辑),也可以通过runcmd模块执行系统命令:
#cloud-config chpasswd: list: | root:o~s@grnet runcmd: - chage -d 0 root
chage -d 0 root命令会将root用户的密码最后修改日期设为 epoch 起始时间,系统会判定密码已过期,强制用户登录时修改密码。
内容的提问来源于stack exchange,提问作者AimXH
相关产品推荐
相关产品推荐

