我正在努力設定 imagebuilder 以從 Amazon Linux 2 實例上的 S3 檔案填充authorized_keys 檔案。
IAM 角色正常運作且管道運作良好(沒有錯誤,也沒有輸出)
這是我正在使用的食譜
description: This is hello world testing document.
schemaVersion: 1.0
phases:
- name: build
steps:
- name: Download_Authorized_Keys_File
action: S3Download
onFailure: Abort
inputs:
- source: 's3://mysuperbucket/authorized_keys'
destination: '/home/ec2-user/.ssh/authorized_keys'
- name: Ensure_Correct_File_Permission
action: ExecuteBash
onFailure: Abort
inputs:
commands:
- 'chown ec2-user:ec2-user /home/ec2-user/.ssh/authorized_keys'
- 'chmod 600 /home/ec2-user/.ssh/authorized_keys'
此外,當在其他地方調查和複製該文件時,它運作良好並且文件存在。
當手動將該文件複製到目標時,它也可以工作。有人有線索嗎?
答案1
發現了,AWS 在建立 AMI 後刪除了 /home/ec2-user/.ssh/authorized_keys 作為清理。 (看https://docs.aws.amazon.com/imagebuilder/latest/userguide/imagebuilder-ug.pdf第97-98頁)