Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Buat contoh deskripsi gambar Amazon Linux 2023
AWS memberikan contoh deskripsi gambar Amazon Linux 2023 yang dapat Anda gunakan sebagai titik awal untuk membuat Attestable kustom Anda sendiri AMIs untuk beban kerja Anda. Deskripsi gambar sampel mencakup Amazon Linux 2023 sebagai sistem operasi dasar, dm-verity dan erofs konfigurasi untuk kekekalan sistem file, dan menghapus semua akses interaktif (seperti SSH, koneksi EC2 instance, dan konsol serial) untuk membuat lingkungan komputasi yang terisolasi. Untuk informasi selengkapnya tentang deskripsi gambar sampel, lihat repo Github
Deskripsi gambar sampel secara otomatis menginstal alat nitRotPM (nitro-tpm-pcr-computedannitro-tpm-attest) pada gambar bawaan di direktori. /usr/bin/ Ini memastikan bahwa alat sudah diinstal sebelumnya pada instance yang diluncurkan dari AMI.
Deskripsi gambar sampel mencakup skripedit_boot_install.sh, yang mencakup perintah yang diperlukan untuk menghasilkan pengukuran referensi. Script memasang file image disk mentah (.raw) yang dibuat oleh KIWI NG ke perangkat loopback, menempatkan UKI, yang memiliki ekstensi .efi file, dan kemudian menjalankan nitro-tpm-pcr-compute utilitas untuk menghasilkan pengukuran referensi untuk AMI. Skrip secara otomatis dijalankan oleh KIWI NG selama waktu pembuatan.
Tutorial ini menunjukkan kepada Anda cara membuat deskripsi gambar sampel untuk membuat AMI yang Dapat Dibuktikan.
Untuk informasi selengkapnya tentang membuat deskripsi gambar Anda sendiri, lihat dokumentasi KIWI NG berikut:
Untuk membuat contoh deskripsi gambar Amazon Linux 2023 menggunakan KIWI NG
-
Luncurkan EC2 instans Amazon menggunakan AMI AL2 023 terbaru. Untuk memastikan instans Anda memiliki ruang penyimpanan yang cukup untuk membangun AMI, pastikan Anda menyediakan setidaknya 12 GB penyimpanan.
-
Instal dependensi yang diperlukan. Perintah berikut menginstal utilitas berikut:
-
kiwi-cli -
veritysetup -
erofs-utils -
aws-nitro-tpm-tools
sudo dnf install -y kiwi-cli python3-kiwi kiwi-systemdeps-core python3-poetry-core qemu-img veritysetup erofs-utils git cargo aws-nitro-tpm-tools -
-
Instal
coldsnaputilitas. Utilitas ini memungkinkan Anda membuat snapshot Amazon EBS dari data gambar mentah. Anda akan menggunakan utilitas ini untuk membuat snapshot EBS dari file gambar disk mentah yang dibuat oleh KIWI NG.git clone https://github.com/awslabs/coldsnap.git cd coldsnap cargo install --locked coldsnap cd .. -
Dapatkan contoh file deskripsi gambar.
sudo dnf install kiwi-image-descriptions-examplesFile deskripsi gambar sampel diunduh ke direktori berikut:
/usr/share/kiwi-image-descriptions-examples/al2023/attestable-image-example -
Bangun deskripsi gambar sampel menggunakan
system buildperintah KIWI NG. Perintah berikut membuat file image disk mentah dalam./imagedirektori.sudo kiwi-ng \ --color-output \ --loglevel 0 \ system build \ --description usr/share/kiwi-image-descriptions-examples/al2023/attestable-image-example \ --target-dir ./imageUntuk informasi selengkapnya, lihat dokumentasi pembuatan sistem kiwi-ng
. -
Dapatkan pengukuran referensi untuk AMI. Pengukuran dihasilkan oleh
nitro-tpm-pcr-computeutilitas selama waktu pembuatan gambar pada langkah sebelumnya. Anda dapat menemukan pengukuran referensi dalam file berikut:./image/pcr_measurements.json.Pengukuran disediakan dalam format JSON berikut:
{ "Measurements": { "HashAlgorithm": "SHA384 { ... }", "PCR4": "PCR4_measurement", "PCR7": "PCR7_measurement" } } -
Gunakan
coldsnaputilitas untuk mengunggah gambar disk mentah yang dibuat oleh KIWI NG ke snapshot EBS. Perintah mengembalikan ID snapshot. Buat catatan ID, Anda akan membutuhkannya untuk langkah berikutnya.SNAPSHOT=$(.cargo/bin/coldsnap upload ./image/kiwi*.raw) echo "Created snapshot: $SNAPSHOT"Untuk informasi lebih lanjut tentang
coldsnaputilitas, lihat repo coldsnap GitHub. -
Daftarkan AMI berkemampuan TPM 2.0 dengan mode boot UEFI menggunakan snapshot dari langkah sebelumnya. Untuk
--architecture, tentukanx86_64untuk Intel, atauarm64untuk Graviton.aws ec2 register-image \ --name "attestable_isolated_al2023_ami" \ --virtualization-type hvm \ --boot-mode uefi \ --architecturex86_64|arm64\ --root-device-name /dev/xvda \ --block-device-mappings DeviceName=/dev/xvda,Ebs={SnapshotId=${SNAPSHOT}} \ --tpm-support v2.0 \ --ena-support