View a markdown version of this page

Buat contoh deskripsi gambar Amazon Linux 2023 - Amazon Elastic Compute Cloud

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 AMI yang Dapat Diverifikasi khusus 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 instans EC2, dan konsol serial) untuk membuat lingkungan komputasi yang terisolasi. Untuk informasi lebih lanjut tentang deskripsi gambar sampel, lihat re po Github.

Deskripsi gambar sampel secara otomatis menginstal alat NitroTPM (nitro-tpm-pcr-computedannitro-tpm-attest) di gambar bawaan di /usr/bin/ direktori. Ini memastikan bahwa alat sudah diinstal sebelumnya pada instans yang diluncurkan dari AMI.

Deskripsi gambar sampel mencakup skrip,edit_boot_install.sh, yang mencakup perintah yang diperlukan untuk menghasilkan pengukuran referensi. Skrip memasang file gambar disk mentah (.raw) yang dibuat oleh KIWI NG ke perangkat loopback, menemukan UKI, yang memiliki ekstensi .efi file, dan kemudian menjalankan nitro-tpm-pcr-compute utilitas untuk menghasilkan pengukuran referensi untuk AMI. Script secara otomatis dieksekusi oleh KIWI NG selama waktu pembuatan.

Tutorial ini menunjukkan kepada Anda bagaimana membangun deskripsi gambar sampel untuk membuat AMI yang dapat dibuktikan.

Untuk informasi selengkapnya tentang membuat deskripsi gambar Anda sendiri, lihat dokumentasi KIWI NG berikut:

Prasyarat

Identitas IAM Anda harus memiliki izin berikut untuk menyelesaikan tutorial ini:

  • ebs:CompleteSnapshot,ebs:StartSnapshot, dan seter ebs:PutSnapshotBlock usnya arn:aws:ec2:*::snapshot/*

  • ec2:RegisterImage di semua sumber daya

Untuk membuat contoh deskripsi gambar Amazon Linux 2023 menggunakan KIWI NG
  1. Luncurkan instans Amazon EC2 menggunakan AMI AL2023 terbaru. Untuk memastikan instans Anda memiliki ruang penyimpanan yang cukup untuk membangun AMI, pastikan Anda menyediakan setidaknya 12 GB penyimpanan.

  2. 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
  3. Instal coldsnap utilitas. 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 ..
  4. Dapatkan contoh file deskripsi gambar.

    sudo dnf install kiwi-image-descriptions-examples

    Contoh file deskripsi gambar diunduh ke direktori berikut: /usr/share/kiwi-image-descriptions-examples/al2023/attestable-image-example

  5. Bangun deskripsi gambar sampel menggunakan system build perintah KIWI NG. Perintah berikut membuat file gambar disk mentah di ./image direktori.

    sudo kiwi-ng \ --color-output \ --loglevel 0 \ system build \ --description /usr/share/kiwi-image-descriptions-examples/al2023/attestable-image-example \ --target-dir ./image

    Untuk informasi selengkapnya, lihat dokumentasi pembuatan sistem kiwi-ng.

  6. Dapatkan pengukuran referensi untuk AMI. Pengukuran dihasilkan oleh nitro-tpm-pcr-compute utilitas selama waktu pembuatan gambar pada langkah sebelumnya. Anda dapat menemukan pengukuran referensi di file berikut:./image/pcr_measurements.json.

    Pengukuran disediakan dalam format JSON berikut:

    { "Measurements": { "HashAlgorithm": "SHA384 { ... }", "PCR4": "PCR4_measurement", "PCR7": "PCR7_measurement", "PCR12": "PCR12_measurement" } }
  7. Gunakan coldsnap utilitas untuk mengunggah gambar disk mentah yang dibuat oleh KIWI NG ke snapshot EBS. Perintah mengembalikan ID snapshot. Catat ID, Anda akan membutuhkannya untuk langkah berikutnya.

    SNAPSHOT=$(.cargo/bin/coldsnap upload ./image/al2023*.raw) echo "Created snapshot: $SNAPSHOT"

    Untuk informasi selengkapnya tentang coldsnap utilitas, lihat repo coldsnap GitHub .

  8. Daftarkan AMI berkemampuan TPM 2.0 dengan mode boot UEFI menggunakan snapshot dari langkah sebelumnya. Untuk--architecture, tentukan x86_64 untuk Intel, atau arm64 untuk Graviton.

    aws ec2 register-image \ --name "attestable_isolated_al2023_ami" \ --virtualization-type hvm \ --boot-mode uefi \ --architecture x86_64|arm64 \ --root-device-name /dev/xvda \ --block-device-mappings DeviceName=/dev/xvda,Ebs={SnapshotId=${SNAPSHOT}} \ --tpm-support v2.0 \ --ena-support