Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Erstellen Sie die Beispielbildbeschreibung für Amazon Linux 2023
AWS bietet ein Beispiel für eine Amazon Linux 2023-Imagebeschreibung, die Sie als Ausgangspunkt für die Erstellung Ihres eigenen benutzerdefinierten Attestable AMIs für Ihre Workloads verwenden können. Die Beschreibung des Beispielimages umfasst Amazon Linux 2023 als Basisbetriebssystem dm-verity und erofs Konfigurationen für die Unveränderlichkeit des Dateisystems. Außerdem wird jeglicher interaktiver Zugriff (wie SSH, EC2 Instance-Verbindung und serielle Konsole) entfernt, um eine isolierte Rechenumgebung zu schaffen. Weitere Informationen zur Beschreibung des Beispiel-Images finden Sie im Github-Repo.
Die Beschreibung des Beispielbilds installiert automatisch die NitroTPM-Tools (nitro-tpm-pcr-computeundnitro-tpm-attest) im erstellten Image im Verzeichnis. /usr/bin/ Dadurch wird sichergestellt, dass die Tools auf Instances vorinstalliert sind, die über das AMI gestartet werden.
Die Beschreibung des Beispielbilds umfasst ein Skriptedit_boot_install.sh, das die Befehle enthält, die zum Generieren der Referenzmessungen erforderlich sind. Das Skript hängt die von KIWI NG erstellte Raw-Disk-Image-Datei (.raw) auf einem Loopback-Gerät ein, lokalisiert die UKI mit der .efi Dateierweiterung und führt dann das nitro-tpm-pcr-compute Hilfsprogramm aus, um die Referenzmessungen für das AMI zu generieren. Das Skript wird während der Build-Zeit automatisch von KIWI NG ausgeführt.
Dieses Tutorial zeigt Ihnen, wie Sie die Beispiel-Image-Beschreibung erstellen, um ein attestierbares AMI zu erstellen.
Weitere Informationen zum Erstellen eigener Image-Beschreibungen finden Sie in der folgenden KIWI NG-Dokumentation:
So erstellen Sie die Amazon Linux 2023-Beispielbildbeschreibung mit KIWI NG
-
Starten Sie eine EC2 Amazon-Instance mit dem neuesten AL2 023-AMI. Um sicherzustellen, dass Ihre Instance über ausreichend Speicherplatz für die Erstellung des AMI verfügt, stellen Sie sicher, dass Sie mindestens 12 GB Speicher bereitstellen.
-
Installieren Sie die erforderlichen Abhängigkeiten. Mit dem folgenden Befehl werden die folgenden Dienstprogramme installiert:
-
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 -
-
Installieren Sie das
coldsnapHilfsprogramm. Mit diesem Tool können Sie Amazon EBS-Snapshots aus Rohbilddaten erstellen. Sie verwenden dieses Hilfsprogramm, um einen EBS-Snapshot aus der von KIWI NG erstellten Raw-Disk-Image-Datei zu erstellen.git clone https://github.com/awslabs/coldsnap.git cd coldsnap cargo install --locked coldsnap cd .. -
Holen Sie sich die Beispieldateien mit der Bildbeschreibung.
sudo dnf install kiwi-image-descriptions-examplesDie Beispieldateien mit Bildbeschreibungen werden in das folgende Verzeichnis heruntergeladen:
/usr/share/kiwi-image-descriptions-examples/al2023/attestable-image-example -
Erstellen Sie die Beschreibung des Beispielbilds mit dem
system buildBefehl KIWI NG. Mit dem folgenden Befehl wird eine Raw-Disk-Image-Datei im./imageVerzeichnis erstellt.sudo kiwi-ng \ --color-output \ --loglevel 0 \ system build \ --description usr/share/kiwi-image-descriptions-examples/al2023/attestable-image-example \ --target-dir ./imageWeitere Informationen finden Sie in der Kiwi-ng System
Build-Dokumentation. -
Holen Sie sich die Referenzmessungen für das AMI. Die Messungen werden vom
nitro-tpm-pcr-computeProgramm während der Image-Erstellung im vorherigen Schritt generiert. Sie können die Referenzmessungen in der folgenden Datei finden:./image/pcr_measurements.json.Die Messungen werden im folgenden JSON-Format bereitgestellt:
{ "Measurements": { "HashAlgorithm": "SHA384 { ... }", "PCR4": "PCR4_measurement", "PCR7": "PCR7_measurement" } } -
Verwenden Sie das
coldsnapHilfsprogramm, um das von KIWI NG erstellte Festplatten-Raw-Image in einen EBS-Snapshot hochzuladen. Der Befehl gibt die Snapshot-ID zurück. Notieren Sie sich die ID, Sie benötigen sie für den nächsten Schritt.SNAPSHOT=$(.cargo/bin/coldsnap upload ./image/kiwi*.raw) echo "Created snapshot: $SNAPSHOT"Weitere Informationen über das
coldsnapHilfsprogramm finden Sie im GitHub Coldsnap-Repo. -
Registrieren Sie ein TPM 2.0-fähiges AMI im UEFI-Startmodus mithilfe des Snapshots aus dem vorherigen Schritt. Geben Sie für
--architectureIntel oderx86_64arm64für Graviton an.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