Bestätigen Sie eine EC2 Amazon-Instance mit AMD SEV-SNP - Amazon Elastic Compute Cloud

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.

Bestätigen Sie eine EC2 Amazon-Instance mit AMD SEV-SNP

Die Bescheinigung ist ein Prozess, mit dem Ihre Instance ihren Status und ihre Identität nachweisen kann. Nachdem Sie AMD SEV-SNP für Ihre Instance aktiviert haben, können Sie einen AMD SEV-SNP-Bestätigungsbericht vom zugrunde liegenden Prozessor anfordern. Der AMD-SEV-SNP-Bescheinigungsbericht enthält einen kryptografischen Hash, die sogenannte Startmessung, die den anfänglichen Inhalt des Gastspeichers und den anfänglichen vCPU-Status anzeigt. Der Bescheinigungsbericht ist mit einer VLEK-Signatur signiert, die auf eine AMD-Stammvertrauenstellung zurückgeht. Sie können anhand der im Bescheinigungsbericht enthaltenen Startmessung überprüfen, ob die Instance in einer echten AMD-Umgebung ausgeführt wird, und den anfänglichen Startcode überprüfen, der zum Starten der Instance verwendet wurde.

Voraussetzung

Starten Sie eine Instanz, die für AMD SEV-SNP aktiviert ist. Weitere Informationen finden Sie unter Aktivieren Sie AMD SEV-SNP für eine Instanz EC2 .

Schritt 1: Abrufen des Bescheinigungsberichts

In diesem Schritt installieren und erstellen Sie das snpguest-Hilfsprogramm und verwenden es dann, um den Bestätigungsbericht von AMD SEV-SNP anzufordern.

  1. Verbinden Sie sich mit der Instance.

  2. Führen Sie die folgenden Befehle aus, um das Hilfsprogramm aus dem snpguest zu erstellen snpguest repository.

    $ git clone https://github.com/virtee/snpguest.git $ cd snpguest $ cargo build -r $ cd target/release
  3. Generieren Sie eine Anfrage für den Bestätigungsbericht. Das Hilfsprogramm fordert den Bestätigungsbericht vom Host an und schreibt ihn mit den bereitgestellten Anforderungsdaten in eine Binärdatei.

    Das folgende Beispiel erstellt eine zufällige Anforderungszeichenfolge und verwendet sie als Anforderungsdatei (request-file.txt). Wenn der Befehl den Bestätigungsbericht zurückgibt, wird er in dem von Ihnen angegebenen Dateipfad gespeichert (report.bin). In diesem Fall speichert das Hilfsprogramm den Bericht im aktuellen Verzeichnis.

    $ ./snpguest report report.bin request-file.txt --random
  4. Fordern Sie die Zertifikate aus dem Host-Speicher an und speichern Sie sie als PEM-Dateien. Im folgenden Beispiel werden die Dateien im selben Verzeichnis wie das snpguest-Hilfsprogramm gespeichert. Wenn im angegebenen Verzeichnis bereits Zertifikate vorhanden sind, werden diese Zertifikate überschrieben.

    $ ./snpguest certificates PEM ./

Schritt 2: Überprüfen Sie die Signatur des Bestätigungsberichts

Der Bestätigungsbericht ist mit einem Zertifikat signiert, dem sogenannten Versioned Loaded Endorsement Key (VLEK), das von AMD ausgestellt wurde für. AWS In diesem Schritt können Sie überprüfen, ob das VLEK-Zertifikat von AMD ausgestellt wurde und ob der Bestätigungsbericht mit diesem VLEK-Zertifikat signiert ist.

  1. Laden Sie die VLEK-Zertifikate der Root-Vertrauenstellung von der offiziellen AMD-Website in das aktuelle Verzeichnis herunter.

    $ sudo curl --proto '=https' --tlsv1.2 -sSf https://kdsintf.amd.com/vlek/v1/Milan/cert_chain -o ./cert_chain.pem
  2. Verwenden Sie openssl, um zu überprüfen, ob das VLEK-Zertifikat von den Zertifikaten der AMD-Stammvertrauenstellung signiert ist.

    $ sudo openssl verify --CAfile ./cert_chain.pem vlek.pem

    Es folgt eine Beispielausgabe.

    certs/vcek.pem: OK
  3. Verwenden Sie das Dienstprogramm snpguest, um zu überprüfen, ob der Bescheinigungsbericht mit dem VLEK-Zertifikat signiert ist.

    $ ./snpguest verify attestation ./ report.bin

    Im Folgenden finden Sie ein Beispiel für eine Ausgabe.

    Reported TCB Boot Loader from certificate matches the attestation report. Reported TCB TEE from certificate matches the attestation report. Reported TCB SNP from certificate matches the attestation report. Reported TCB Microcode from certificate matches the attestation report. VEK signed the Attestation Report!